API Response Codes — Complete Reference
This page is a complete reference for all response codes returned by DQVerify APIs — both HTTP-level errors and service-specific validation codes. Use the sections below to look up any code you receive.
HTTP Errors
These errors occur at the HTTP transport level and are common across all DQVerify API services.
Classic APIs
| HTTP Status | Cause | Typical Response |
|---|---|---|
| 400 Bad Request | Missing or empty mandatory parameter (Licence, Email, Tel, Pays, Adresse) | 400 Bad Request or empty JSON response |
| 500 Internal Server Error | Missing mandatory parameter in Geocoding endpoints (IDVoie, Num, Pays) | 500 Internal Server Error |
| Licence error | Missing, empty, or invalid Licence parameter | ** LICENCE KO ** (Email), Licence Down in JSON (Phone), or empty response (Address) |
| unauthorized_client | Incorrect licence number (Email Classic API only) | unauthorized_client |
RESTful APIs
RESTful APIs return structured JSON error objects:
{
"status": 400,
"message": "Missing parameters",
"details": "Licence",
"error": "bad request"
}| Status / Error | Cause |
|---|---|
| 400 bad request | Missing or empty mandatory parameter. The details field names the missing parameter. |
| 401 unauthorized_client | Invalid or inactive licence key |
| 401 Unauthorized | Missing or invalid OAuth2 authentication token (RESTful Email and Phone APIs) |
Email API
Returned by Email API — Validate an email address (Classic) and RESTful Email API — email/lookup
IdError codes
| Code | Description | Suggested UI Message |
|---|---|---|
| 00 | Valid email address | Valid email |
| 01 | Email syntax correct but username could not be checked (catch-all domain) | Valid email |
| 02 | Email address not found for this domain | Please check your email address |
| 03 | Inbox is full — soft bounce | Please check your email address |
| 04 | Empty email address | Please check your email address |
| 91 | Syntax error | Please check your email address |
| 92 | Unknown domain | Please check your email address |
| 93 | Blacklisted email address or domain | Please check your email address |
| 94 | Unauthorized username | Please check your email address |
| 95 | Disposable or temporary email address | Please check your email address |
| 99 | Verification service temporarily unavailable — treat as valid | Valid email |
CodeActivite codes
Returned only when level 2 verification is enabled. M = current month.
| Code | Description |
|---|---|
| 100 | Email was delivered at least once |
| 200 | Email address is valid and active |
| 201 | Active within the last month (M-1) |
| 202 | Active between M-1 and M-2 |
| 203 | Active between M-2 and M-3 |
| 204 | Active between M-3 and M-4 |
| 206 | Active between M-4 and M-6 |
| 209 | Active between M-6 and M-9 |
| 212 | Active between M-9 and M-12 |
| 300 | Inactive email address |
Phone API
Returned by Phone API — Classic and RESTful Phone API — phone/lookup
IdError codes
| Code | Description |
|---|---|
| 0 | Invalid or non-existing phone number |
| 1 | Valid and attributed phone number |
| 2 | Valid syntax only — number has not been attributed (reserved range) |
Status codes
French mobile numbers only. Set Status=Y in the request. (Level 2 verification, Classic API only.)
| Code | Description |
|---|---|
| 0 | Reachable — mobile number is currently reachable |
| 1 | Not Reachable — mobile number is currently not reachable |
Address API — CheckAddress (DQECodeDetail)
Returned by Classic API — CheckAddress and RESTful Address — checkaddress. The DQECodeDetail field gives the address validation quality score.
| Code | Description | Suggested UI Message |
|---|---|---|
| 10 | Address is fully correct | Valid address |
| 20 | Address is correct — street not found but is CEDEX or PO | Valid address |
| 21 | Small city — street number out of range | Please check your postal address |
| 22 | Small city — street number missing, rest of address correct | Please check your postal address |
| 23 | Large city — street number out of range | Please check your postal address |
| 24 | Large city — street number missing, rest of address correct | Please check your postal address |
| 25 | CEDEX address unknown (when CEDEXA is active) | Valid address |
| 30 | Small city — street name not recognized | Please check your postal address |
| 31 | Small city — street name not recognized (alternative match) | Please check your postal address |
| 40 | Small city — street missing, district recognized but insufficient | Please check your postal address |
| 41 | Small city — street name missing | Please check your postal address |
| 50 | Large city — street name not recognized | Please check your postal address |
| 51 | Large city — street not recognized, district recognized but insufficient | Please check your postal address |
| 60 | Large city — street missing, district recognized but insufficient | Please check your postal address |
| 61 | Large city — street name missing | Please check your postal address |
| 70 | Postal code / city mismatch — cannot be corrected (street present) | Please check your postal address |
| 71 | Postal code / city mismatch — cannot be corrected (street missing) | Please check your postal address |
| 80 | Address input block is empty | Please check your postal address |
| 81 | Address input block is empty (alternative) | Please check your postal address |
| 90 | International address detected — valid | Valid address |
| 95 | Missing or incorrect country code | Please check your postal address |
Quick interpretation guide
- 10, 20, 25, 90 — valid address
- 21–24 — street number issue
- 30–61 — street name issue
- 70–71 — postal code / city mismatch
- 80–81 — empty input
- 95 — wrong or missing country code
Geocoding API (CodeQualiteGeo)
Returned by Geocoding API and by CheckAddress when Version=1.
| Code | Description |
|---|---|
| 1 | ENTREE — Main access point to an enclosure or land parcel |
| 2 | BATIMENT — Building or part of a building |
| 3 | ESCALIERS — Stairwell inside a building |
| 4 | LOGEMENT — Housing or room inside a building |
| 5 | PARCELLE CADASTRALE — Cadastral parcel |
| 6 | SEGMENT DE VOIE — Position derived from the connecting street segment |
| 7 | POINT D'ACCES TECHNIQUE — Technical access point |
| 8 | POINT DELIVRANCE POSTALE — Postal delivery point (mailbox) |
| 9 | ZONE D'ADRESSAGE — Point placed in the dependent locality |
| 10 | CENTRE VILLE — City centre, lowest precision |
| 00 | CENTRE DE LA VOIE — Point in the centre of the street |
| 90 | A CONTROLER — Coordinates should be verified |
| 99 | NON PRESENTE — Coordinates could not be computed |
When Licence is missing or invalid, the Geocoding API returns Latitude: 0.00 and Longitude: 0.00 instead of an HTTP error.
B2B API
Returned by B2B Classic API — RECSIRET, SIRETINFO, RESTful B2B API — Lookup, and GetInfo.
DQE_status (SIRETINFO extended form)
| Value | Description |
|---|---|
| FOUND | Company was found in the database |
| NOT FOUND | No matching company was found for the provided SIRET |
CompanyStatus
| Value | Description |
|---|---|
| 1 | Company is in operation |
| 0 | Company is no longer in operation |
MainCompanyFlag
| Value | Description |
|---|---|
| 1 | This record is the company head office |
| 0 | This record is a secondary establishment |
SMS Phone Confirmation API
Returned by SMS Phone Confirmation API — Send OTP (GDPR_MSG) and Verify OTP (GDPR_VERIF).
GDPR_MSG — SMS delivery status
| Status | Description |
|---|---|
| PENDING | SMS sent to operator, awaiting delivery confirmation |
| DELIVERED | SMS successfully delivered |
| UNDELIVERABLE | SMS could not be delivered |
| EXPIRED | SMS expired before delivery confirmation |
| REJECTED | SMS rejected by the operator |
GDPR_MSG — error codes
| Code | Description |
|---|---|
| 00 | No errors |
| 01 | Missing parameters |
| 02 | Service not authorized for this licence |
| 03 | Invalid phone number |
| 04 | Invalid country code |
| 05 | Invalid duration |
| 06 | Country not found |
| 07 | Invalid company name (must be 3–11 characters) |
| 08 | Internal API error |
| 09 | No delivery status received from operator |
| 10 | Invalid consent values |
| 11 | At least one communication channel must be enabled |
GDPR_VERIF — error codes
| Code | Description |
|---|---|
| 00 | No errors — PIN verified successfully |
| 01 | Missing parameters |
| 02 | PIN must contain 6 digits |
| 03 | PIN has expired |
| 04 | PIN is invalid for this token or phone number |
| 05 | Invalid token |
ID Mobile API
Returned by all ID Mobile scopes: Simswap, Matching without OTP, Number Verify, Formfilling, and Billing. Errors are returned as a JSON object with error_id and error_type fields.
{
"status": "error",
"error_type": "invalid phone number",
"error_id": "10"
}Step 1 error codes — all scopes
| 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 | The requested scope is invalid |
| 05 | missing or empty parameter (user_infos) for this scope | A required parameter is missing |
| 06 | bad parameter format (user_infos) is not valid JSON | The user_infos parameter is not valid JSON |
| 07 | missing mandatory key in user_infos (phone) | The phone key is mandatory |
| 09 | ineligible phone number | The phone number is not eligible |
| 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 not found | The operator could not be found |
| 14 | operator not authorized for this licence | Your licence is not authorized for this operator |
| 15 | operator not supported yet | The solution is not yet available for this operator |
| 16 | operator unreachable | The operator could not be contacted |
| 17 | scope not supported by this operator yet | This scope is not supported by the operator |
| 30 | invalid or expired token | Authentication token has expired — obtain new token via Token endpoint |
Step 2 error codes — Number Verify, Formfilling, Billing
Additional codes for the retrieval call (Step 2).
| 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 | The requested scope is invalid |
| 18 | failed to retrieve data from operator | No data received after OTP validation |
| 20 | phone mismatch | OTP validation not completed — phone mismatch |
| 21 | access denied | OTP validation declined by user |
| 30 | invalid or expired token | Authentication token has expired |
| 99 | internal server error | Server error — retry or contact support |
