Skip to main content

Implementation steps

1

Authenticate and Verify Consumer

Run authentication and/or verification for the end user based on your use case and persist the proveId from a successful response.
2

Call /discover

Call /discover with the consumer’s proveId to list marketplace attribute UUIDs and issuer names, and to confirm whether any partner-linked data exists for that consumer. You must call this API before /fetch so you know which vendor options are in scope. Use the same bearer token in the Authorization header.
Request
curl -X GET "https://platform.uat.proveapis.com/v3/discover?proveId=41570934-6d6b-476d-9425-3eaf305cf2e5" \
-H "Authorization: Bearer <YOUR_ACCESS_TOKEN>"
Query Parameters:
  • proveId - The unique Prove-generated identifier for the identity.
  • clientRequestId - Optional client-provided identifier for the request.
Response
{
  "results": [
    {
      "attributeId": "550e8400-e29b-41d4-a716-446655440000",
      "issuerId": "Aeropay"
    }
  ]
}
results - Array of objects, each with key-value pairs:
  • attributeId - The unique ID for the attribute value.
  • issuerId - The human-readable name for the issuer of the attribute.
3

Call /fetch

After /discover, once the consumer has consented to retrieve partner information, call /fetch with their proveId and the attribute IDs they chose from the /discover results. Each item in results includes attributeValue, which is the vendor ID for that issuer. Authenticate the same way you do for /verify and /discover, with the same bearer token and client configuration in the Authorization header.
Request
curl -X GET "https://platform.uat.proveapis.com/v3/fetch?proveId=41570934-6d6b-476d-9425-3eaf305cf2e5&attributeId=550e8400-e29b-41d4-a716-446655440000" \
-H "Authorization: Bearer <YOUR_ACCESS_TOKEN>"
Query Parameters:
  • proveId - The unique Prove-generated identifier for the identity.
  • attributeId - The unique ID for the attribute value, as returned by the /discover endpoint.
  • clientRequestId - Optional client-provided identifier for the request.
Response
{
  "results": [
      {
        "attributeId": "550e8400-e29b-41d4-a716-446655440000",
        "issuerId": "Aeropay",
        "attributeValue": "ext-wallet-992834"
      }
  ]
}
results - Array of objects, each with key-value pairs:
  • attributeId - The unique ID for the attribute value, as returned by the /discover endpoint.
  • issuerId - The human-readable name for the issuer of the attribute, as returned by the /discover endpoint.
  • attributeValue - The actual value of the identity attribute.

Sandbox testing

Test users

The following test users are available for ProveX flows that start with /v3/verify in the Sandbox environment. Use them to exercise successful and failed verification for /discover and /fetch.
Phone NumberFirst NameLast NameExpected Outcome
2001004053ElenaColdmanSuccess
2001004054AlfNovotniFailed
Use these test phone numbers exactly as shown. The sandbox environment doesn’t validate real customer information.

Testing steps

Prove’s Sandbox environment requires the following testing sequence: /verify with verificationType: verifiedUser -> /discover -> /fetch.
Use test user Elena Coldman to test a successful ProveX flow.Prerequisites
  • proveId: From a successful /v3/verify for Elena.
  • Bearer token: Keep the same access token you used for /v3/verify.
1

Call /discover

Use the proveId and the bearer token to call /discover.
curl -X GET "https://platform.uat.proveapis.com/v3/discover?proveId=550e8400-e29b-41d4-a716-446655440001" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
2

Call /fetch

Use the proveId and the bearer token to call /fetch.
curl -X GET "https://platform.uat.proveapis.com/v3/fetch?proveId=550e8400-e29b-41d4-a716-446655440001&attributeId=550e8400-e29b-41d4-a716-446655440100" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
The response includes attributeValue for each result—the wallet ID for that issuer when ProveX data is available.