Use this endpoint to retrieve user information (name, date of birth, email, postal address) registered with the operator, with user consent. The process involves two steps: initiate the consent request, then retrieve the data.
Related ID Mobile documentation:
Step 1 — Initiate consent request
GET request
https://{SERVER_ADDRESS}/IDMOBILE/?number={NUM}&token={TOKEN}&mode={MODE}&name={NAME}&code_name={CODE_NAME}&licence={LICENCE_CODE}&scope=formfilling&redirect_uri={URL_REDIRECT}
Replace the values in braces with your own information:
| Parameter | Description | Mandatory/Optional |
|---|---|---|
| SERVER_ADDRESS | Address of the DQE server that will process the data. | Mandatory |
| licence | Number assigned to you as your licence code. | Mandatory |
| number | Phone number. | Mandatory |
| token | Token retrieved through authentication. | Mandatory |
| mode |
2: authentication by code. |
Mandatory |
| name | Partner name in the DQE Software database, usually your company name. | Mandatory |
| code_name | Optional field containing a code associated with name. |
Optional |
| scope | Static value. Must be formfilling for this scope. |
Mandatory |
| redirect_uri | Redirection URL. DQE adds the session token and status to the redirect. | Optional |
POST request
https://{SERVER_ADDRESS}/IDMOBILE/
Add the following parameters in the request body using x-www-form-urlencoded:
| Parameter | Description | Mandatory/Optional |
|---|---|---|
| licence | Number assigned to you as your licence code. | Mandatory |
| number | Phone number. | Mandatory |
| token | Token retrieved through authentication. | Mandatory |
| mode |
2: authentication by code. |
Mandatory |
| name | Partner name in the DQE Software database, usually your company name. | Mandatory |
| code_name | Optional field containing a code associated with name. |
Optional |
| scope | Static value. Must be formfilling for this scope. |
Mandatory |
| redirect_uri | Redirection URL. DQE adds the session token and status to the redirect. | Optional |
Response
Success
| Key | Description | Type |
|---|---|---|
| status | success |
STRING |
| operator | Operator. | STRING |
| url | URL of the operator API. | STRING |
Example:
{
"status": "success",
"operator": "Orange",
"url": "https://api.operator/openidconnect/fr"
}
Error
| Error ID | Error type | Description |
|---|---|---|
| 01 | invalid request | The request is not valid. |
| 02 | invalid licence key | The licence is not valid. |
| 04 | invalid scope | Invalid scope. |
| 05 | missing or empty parameter (user_infos) for this scope | A parameter is missing for the requested scope. |
| 06 | bad parameter format (user_infos) is not a valid JSON | The user_infos parameter is not valid JSON. |
| 07 | missing mandatory key in user informations (phone) | The phone key is mandatory in the user_infos parameter for this operator. |
| 09 | ineligible phone number | The phone number is not eligible for the solution. |
| 10 | invalid phone number | The phone number does not exist. |
| 11 | phone number is empty | The phone number is empty. |
| 12 | phone check failed | The operator verification failed. |
| 13 | operator [Operator Name] not found | The operator could not be found. |
| 14 | operator [Operator Name] not authorized for this licence | Your licence is not authorised for this operator. |
| 15 | operator [Operator Name] not supported yet | The solution is not yet available for this operator. |
| 16 | operator [Operator Name] unreachable | The operator could not be contacted. |
| 17 | scope not supported by this operator [Operator Name] yet | This scope is not supported by the operator. |
| 30 | invalid or expired token | The token has expired. |
Step 2 — Retrieve user data
GET request
https://{SERVER_ADDRESS}/GET/?token={TOKEN}&Licence={LICENCE_CODE}&scope=formfilling
| Parameter | Description | Mandatory/Optional |
|---|---|---|
| SERVER_ADDRESS | Address of the DQE server that will process the data. | Mandatory |
| Licence | Number assigned to you as your licence code. | Mandatory |
| token | Token retrieved through authentication. | Mandatory |
| scope | Static value. Must be formfilling for this scope. |
Mandatory |
POST request
https://{SERVER_ADDRESS}/GET/
Add the following parameters in the request body using x-www-form-urlencoded:
| Parameter | Description | Mandatory/Optional |
|---|---|---|
| Licence | Number assigned to you as your licence code. | Mandatory |
| token | Token retrieved through authentication. | Mandatory |
| scope | Static value. Must be formfilling for this scope. |
Mandatory |
Response
Success
The API returns a JSON object containing the following keys:
| Key | Description | Type |
|---|---|---|
| status |
success: information was successfully retrieved. |
STRING |
| scope | Contains the scope previously sent. | STRING |
| code_name | Contains the code name previously sent. | STRING |
| formfilling | Object containing the retrieved user data. See keys table below. | JSON OBJECT |
Keys within the formfilling object:
| Key | Description | Type |
|---|---|---|
| phone_number | Phone number. | STRING(10) |
| family_name | Last name. | STRING |
| name | First name and last name. | STRING |
| locale | Native language. | STRING(3) |
| gender | Gender: M for male, F for female. |
STRING |
| updated_at | Date of last information update. | DATE |
| birthdate | Birth date. | DATE |
| birthplace | Birth department. | STRING |
| given_name | First name. | STRING |
| address | Postal address object. Keys: country, postal_code, formatted, street_address, number, locality. |
JSON OBJECT |
| Complete email address. | STRING | |
| email_domain | Email domain. | STRING |
| email_account | Email username. | STRING |
| subscriber_msisdn | Phone number used for the contract subscription. | STRING(10) |
| sub | Customer identifier in the operator database. | STRING |
Example:
{
"status": "success",
"scope": "matching,formfilling",
"code_name": "",
"formfilling": {
"phone_number": "",
"family_name": "",
"name": " -",
"locale": "fr-FR",
"gender": "M",
"email_domain": ".com",
"updated_at": "-08-09",
"birthdate": "-08-30",
"birthplace": "-08-30",
"given_name": "",
"address": {
"locality": "",
"country": "",
"number": "",
"formatted": "",
"postal_code": "",
"street_address": ""
},
"email_account": "",
"email": "",
"subscriber_msisdn": "",
"sub": ""
}
}
Pending
| Key | Description | Type |
|---|---|---|
| status |
pending: DQE is waiting for the operator response. |
STRING |
| scope | Contains formfilling and/or matching. |
STRING |
Example:
{
"status": "pending",
"scope": "formfilling"
}
Error
| Error ID | Error type | Description |
|---|---|---|
| 01 | invalid request | The request is not valid. |
| 02 | invalid licence key | The licence is not valid. |
| 04 | invalid scope | Invalid scope. |
| 18 | failed to retrieve data from operator | No data was received after OTP validation. |
| 20 | OTP incorrect | OTP validation was not completed. |
| 21 | access denied | OTP validation was declined. |
| 30 | invalid or expired token | The token has expired. |
| 99 | internal server error | Server error. |
Example:
{
"status": "error",
"error_type": "internal server error",
"error_id": "99"
}