Skip to main content

Documentation Index

Fetch the complete documentation index at: https://developer.prove.com/llms.txt

Use this file to discover all available pages before exploring further.

The following endpoints apply to this flow:
  • /verify
Identities that pass the Global Fraud Policy are automatically enrolled in Manage.

Prerequisites

  • Access token — Obtain a bearer token using Prove OAuth (Authentication).

Implementation steps

1

Gather Required Inputs

Collect the required customer information from your CRM or database:
  • Phone number
  • First name
  • Last name
2

Call the Verify Endpoint

Make a request to the /v3/verify endpoint including the Authorization header. Generate a bearer token as outlined on the Authentication page.
cURL
curl -X POST "https://platform.uat.proveapis.com/v3/verify" \
-H "Authorization: Bearer <YOUR_ACCESS_TOKEN>" \
-H "Content-Type: application/json" \
-d '{
    "verificationType": "accountOpening",
    "firstName": "Bettina",
    "lastName": "Halbert",
    "phoneNumber": "2001004049",
    "clientRequestId": "5454545"
}'
Replace <YOUR_ACCESS_TOKEN> with your acquired access token.
For Account Opening, set verificationType to accountOpening and include phoneNumber, firstName, lastName, and clientRequestId. You can also pass clientCustomerId, clientHumanId, or proveId when you need that linkage.
Always give unique clientRequestId values for each request to enable proper tracking and troubleshooting.
3

Process the Response

Compare your JSON to the samples below. Map assuranceLevel and reasons using Assurance levels; interpret evaluation using Global Fraud Policy. For every field, rely on the /v3/verify response schema.
{
    "success": "true",
    "correlationId": "d427c049-0ae8-491d-8300-75d23610d0ff",
    "clientRequestId": "5454545",
    "phoneNumber": "2001004049",
    "proveId": "41570934-6d6b-476d-9425-3eaf305cf2e5",
    "provePhoneAlias": "4B2C...",
    "identity": {
        "firstName": "Bettina",
        "lastName": "Halbert",
        "assuranceLevel": "AL2",
        "reasons": [
          "AL2a"
        ]
    },
    "additionalIdentities": [
        {
            "firstName": "Johnny",
            "lastName": "Halbert",
            "assuranceLevel": "AL2",
            "reasons": [
              "AL2a"
            ]
        }
    ],
    "evaluation": {
        "authentication": {
            "result": "pass"
        },
        "risk": {
            "result": "pass"
        }
    }
}

In practice

  • success — Branch your UX and backend logic on pass vs fail.
  • identity and additionalIdentities — Read verified attributes and assuranceLevel for policy (step-up, deny, manual review).
  • evaluation — Interpret authentication and risk outcomes under Global Fraud Policy; use failure codes when success is false.
  • IDs — Persist correlationId (and proveId when present) if you need support, auditing, or linking to other Prove flows.
If you passed optional identifiers on the request, the response may echo clientCustomerId and clientHumanId; see the /v3/verify reference for details.

Sandbox testing

Test users

You must use Account Opening project credentials when working with Account Opening sandbox test users. Attempting to use these test users with different project credentials results in an unauthorized access error.
You can use the following test users for testing Account Opening using the /v3/verify endpoint in the Sandbox environment. Use these test users to simulate different verification scenarios and outcomes.
Phone NumberFirst NameLast NameVerification TypeExpected Outcome
2001004049BettinaHalbertaccountOpeningSuccess
2001004050LaurelVan Der BeekaccountOpeningFailed
Use these test phone numbers exactly as shown. The sandbox environment doesn’t validate real customer information.

Testing steps

Use test user Bettina Halbert to verify a successful verification:
cURL
curl -X POST "https://platform.uat.proveapis.com/v3/verify" \
  -H "Authorization: Bearer <YOUR_ACCESS_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
    "verificationType": "accountOpening",
    "firstName": "Bettina",
    "lastName": "Halbert",
    "phoneNumber": "2001004049",
    "clientRequestId": "test-001"
  }'
Expected response:
{
    "success": "true",
    "correlationId": "ab1e9b42-da4f-4d13-8690-5d32eae76c6f",
    "clientRequestId": "test-001",
    "phoneNumber": "2001004049",
    "proveId": "41570934-6d6b-476d-9425-3eaf305cf2e5",
    "provePhoneAlias": "4B2C41FC4VKDEO100F960011D0AD4A8050MEK19P4SF9PD23EFE27CD2C76A6FAA8375E60AC0550604F6G32D9ED60E06262CCC570F3C15F2D16900184E",
    "identity": {
        "firstName": "Bettina",
        "lastName": "Halbert", 
        "assuranceLevel": "AL2", 
        "reasons": [ 
          "AL2a"
        ]
    },
    "additionalIdentities": [
        {
            "firstName": "Johnny",
            "lastName": "Halbert", 
            "assuranceLevel": "AL2", 
            "reasons": [
              "AL2a"
            ]
        }
    ],
    "evaluation": {
        "authentication": {
            "result": "pass"
        },
        "risk": {
            "result": "pass"
        }
    }
}