home/More/Self Service Portal/Tokens/OAuth integration guide

OAuth integration guide

You can enable secure, delegated access by configuring OAuth 2.0 authentication for your integration. The steps below describe how to create OAuth credentials, request an access token, and use that token when calling the API.

Create OAuth credentials

Log in to the Self Service Portal and create an OAuth integration. Make note of the Client ID and Client Secret — you will need these to request tokens.

  1. Log in to the Self Service Portal.
  2. Create a new OAuth integration. Detailed information on how to create a new OAuth integration.
  3. Make a note of the Client ID and Client Secret, as you will need these when requesting tokens.

Request the OAuth access token

Request an access token from Experian Data Quality's authorization server https://sso.experianaperture.io/oauth2/aust0wkxjeKyT3HRO4x7/v1/token.

This endpoint supports the OAuth 2.0 Client Credentials grant. Use HTTP POST with an application/x-www-form-urlencoded body. Replace <base64(client_id:client_secret)> with the Base64‑encoded value of client_id:client_secret.

curl -X POST "https://sso.experianaperture.io/oauth2/aust0wkxjeKyT3HRO4x7/v1/token" \
    -H "Content-Type: application/x-www-form-urlencoded" \
    -H "Authorization: Basic <base64(client_id:client_secret)>" \
    --data-urlencode "grant_type=client_credentials" \
    --data-urlencode "scope=clientid"

A successful request returns a JSON payload containing the access token and its validity period. Tokens are valid for 1,800 seconds (30 minutes). After expiry, you must request a new token before making further authorised API calls.

{
    "access_token": "eyJhbGciOiJI...",
    "token_type": "Bearer",
    "expires_in": 1800,
    "scope": "clientid"
}

Use the OAuth access token

Include the access token in the Authorization header as a Bearer token when calling APIs.

curl -X POST "https://api.experianaperture.io/email/validate/v2" \
    -H "Accept: application/json" \
    -H "Authorization: Bearer <access_token>" \
    -H "Content-Type: application/json" \
    -d '{"email":"support@experian.com"}'

OAuth token management and best practices

  • Cache tokens in memory or a short-lived secure store and reuse until expires_in elapses.
  • Refresh by requesting a new token when the current token is expired or about to expire.
  • Handle 401 Unauthorized errros by obtaining a new token.