How to Identify Attribute-Based Authentication Factors by Name in the Authenticate API Response
search cancel

How to Identify Attribute-Based Authentication Factors by Name in the Authenticate API Response

book

Article ID: 451134

calendar_today

Updated On:

Products

Symantec Identity Security Platform - IDSP (formerly VIP Authentication Hub)

Issue/Introduction

You want to identify authentication factors by name rather than the FACTOR/#### ID format in the /authenticate call's response payload. How do you retrieve the human-readable name of an attribute-based authentication factor?

Environment

Symantec Identity Security Platform - IDSP (formerly VIP Authentication Hub) 4.0.x

Resolution

The /authenticate API response returns authentication factors in a FACTOR/#### format to maintain referential integrity. You cannot change this identifier format.

However, you can programmatically identify the name of each authentication factor by referencing the predicatesForCurrentFactors array found within the additional object of your JSON response.

You can access the attribute-based authentication factor name by following these steps:

  1. Locate the additional object in your /authenticate API response payload.
  2. Navigate to the predicatesForCurrentFactors array.
  3. Use the predicate attribute associated with your specific factor to retrieve its display name.

Example Payload Structure In the response snippet below, you can map the factor (ID) to its corresponding predicate (Name):

"additional": {
    "predicatesForCurrentFactors": [
        {
            "factor": "FACTOR/####",
            "predicate": "Family Name Attribute",   <==
            "providerAmr": "FNAME"
        },
        {
            "factor": "PASSWORD",
            "predicate": "DemocorpConfig",
            "providerAmr": "PWD"
        }
    ]
}

By implementing this logic in your application's native client flow, you can display the correct factor name to your users or use it for your application's internal logging and troubleshooting.