.wpb_animate_when_almost_visible { opacity: 1; }
Check Id Spain
Cross check your customer info with ours, to mitigate fraud while improving user experience with Mobile Connect.
1.0
API deprecated

The Check ID Spain API gives you information for Orange customers authenticating on your service through the Orange Authentication API. It can typically be used to protect your business, reassuring on the user identity and reducing fraud risk. You will need the end-user's consent in order to access his information. A dedicated UI is provided with the Orange Authentication API.

Before starting

Our Check ID Spain API requires a 3-legged authentication with our OpenID Connect platform. Please follow the method described here, with check_id scope, in order to get an access token that will be granted to retrieve end-user's claims.

Retrieve Orange customer's information

You need a valid access token to invoke the Check ID Spain API. This access token must be provided in the HTTP Authorization header:

curl -X GET \
    -H "Authorization: {authorization_header}" \
    https://api.orange.com/checkid/es/v1/premiuminfo

As an example:

curl -X GET -H "Authorization: Bearer OES-948ef...d5de1f4" 
"https://api.orange.com/checkid/es/v1/premiuminfo"
a/ If the transaction succeed

In the context of the Check ID Spain API, the check_id scope gives permissions to the following claims only:

ClaimTypeDescription
substringSubject - Issuer identifier for the end-user.
updated_atnumberTime the end-user's information was last updated. Its value is a JSON number representing the number of seconds from 1970-01-01T0:0:0Z as measured in UTC until the date/time.
given_namestringGiven name(s) or first name(s) of the end-user. Note that in some cultures, people can have multiple given names; all can be present, with the names being separated by space characters.
family_namestringSurname(s) or last name(s) of the end-user. Note that in some cultures, people can have multiple family names or no family name; all can be present, with the names being separated by space characters.
national_IDstringNational identifier (e.g., in accordance with eIDAS) in the following format: CC/Type/Identifier with CC (ISO 3166-1 Alpha-2 country code), Type (ID document type - ID card, passport etc.) and Identifier (ID number).
addressJSON objectEnd-user's preferred postal address. See Address structure below.
emailstringEnd-user's preferred e-mail address. Its value MUST conform to the RFC 5322 addr-spec syntax.
email_verifiedbooleanTrue if the end-user's e-mail address has been verified; otherwise false.
subscriber_msisdnstringUser's mobile number linked to his Orange subscription [E.164].
phone_numberstringEnd-user's preferred telephone number (E.164).
phone_number_verifiedbooleanTrue if the end-user's phone number has been verified; otherwise false.
phone_number_alternateboolean(optional) User's alternate/secondary telephone number [E.164].

The Address JSON object represents a physical mailing address. It is bound of the following attributes:

AttributeTypeDescription
formattedstringFull mailing address, formatted for display. MAY contain multiple lines, separated by newline characters (\n or \r\n).
street_addressstringMAY contain house number, street name, PO Box number. If using multiple lines, the lines are separated by newline characters.
localitystringCity, Town.
regionstringState, Province, County.
postal_codestringPost Code, ZIP code.
countrystringCountry name.

On success, the PremiumInfo request returns a 200 OK HTTP status code with JSON data containing requested claims about the end-user.

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 586
Cache-Control: no-store
Pragma: no-cache

{
  "sub": "PBYJJF-200-DwltrLnXq+7jwTQEkOx9Z9jelg0t0NQrxWFasUgUgEs=",
  "updated_at": 1433551702,
  "given_name": "Jane",
  "family_name": "Doe",
  "national_ID": "ES/NIF/51061998C",
  "address": {
    "formatted": "Calle Aduana, 29\n28070 Madrid\nSpain",
    "street_address": "Calle Aduana, 29",
    "locality": "Madrid",
    "region": "Madrid",
    "postal_code": "28070",
    "country": "Spain"
  },
  "email": "jane.doe@foe.com",
  "email_verified": true,
  "subscriber_msisdn": "+34712345678",
  "phone_number": "+34712345678",
  "phone_number_verified": true,
  "phone_number_alternate" : "+34972485396"  
}
b/ If the transaction failed

In case of error, the PremiumInfo endpoint returns an error response (JSON format) with the following information:

  • code (required): single ASCII error code
  • message (required): short localized string that describes the error.
  • description (optional): human-readable ASCII text providing additional information, used to assist the developer in understanding the error that occurred.

If the access_token is missing, a 401 Unauthorized HTTP status code is returned.

HTTP/1.1 401 Unauthorized
Content-Type: application/json; charset=utf-8

{
   "code": 40,
   "message": "Missing or invalid credentials",
   "description": "The requested service needs credentials, but the ones provided were invalid or missing."
}

If the access_token is expired, revoked or invalid, a 401 Unauthorized HTTP status code is returned. In that case, you'll have to renew the access token.

HTTP/1.1 401 Unauthorized
Content-Type: application/json; charset=utf-8

{
    "code": 41, 
    "message": "Invalid credentials", 
    "description": "access token resource OES-948ef...d5de1f4 not found"
}

See API Reference section for the exhaustive list of error codes.