Verify API - Status codes
NOTE:
To add this product to your account, contact a Telesign expert. This product is available for full-service accounts only. Contact our sales team for availability of supported verification methods in your region.
Verification API
Response status codes for POST requests.
Parameter | HTTP Status | status.code | status.description | Description |
---|---|---|---|---|
phone_number | 400 | 3101 | Invalid value for parameter phone_number | Phone number is too long, too short, or contains non-digit values |
external_id | 400 | 3103 | Unsupported value for parameter external_id | Parameter external_id is longer than 100 or contains non-ASCII characters. |
400 | 3119 | Invalid value for parameter email | Email is not valid. | |
phone_number | 400 | 3302 | Missing parameter phone_number | Returned if phone based methods are specified in policy but recipient does not contain phone_number |
400 | 3309 | Missing parameter email | Returned if email is specified in policy but recipient does not contain email |
Other validations for POST requests
HTTP status | status.code | status.description | Additional details |
---|---|---|---|
200 | 3001 | Message in progress | The message is being sent to selected channel, final status to be returned later, when available, via callback. (Intermediate) |
400 | 3110 | Invalid request | API request / JSON improperly formatted. |
400 | 3116 | Payload limit size exceeded | Allowed payload size is limited to 10KB. If payload size exceeded, HTTP 413 will be returned, without validation on API. |
401 | 3906 | Unified Verification Product not enabled for Customer ID | The Verify API is not enabled in your account. |
401 | 3400 | Not authorized | No permissions for this resource or authorization failed. |
429 | 3204 | Rate limit exceeded | Allowed number of requests per second has been exceeded. |
503 | 3500 | System Unavailable | System is unavailable, the request should be resubmitted. |
503 | 3041 | Carrier rejected - temporary problem | Try request again. |
3072 | Message blocked due to high risk score | Intelligence Score higher than set threshold. Telesign blocked the transaction. |
Verification mobile backend API
NOTE:
If you need assistance with a code not listed in this table, please contact our Customer Support Team.
HTTP status | status.code | status.description | Additional details |
---|---|---|---|
400 | 3110 | Invalid request | API request / JSON improperly formatted. |
400 | 3116 | Payload limit size exceeded | Allowed payload size is limited to 10KB. if payload size exceeded, HTTP 413 will be returned, without validation on API. |
401 | 3906 | Unified Verification Product not enabled for Customer ID | The Verify API product is not enabled for your account. |
401 | 3400 | Not authorized | No permissions for this resource or authorization failed. |
429 | 3204 | Rate limit exceeded | Allowed number of requests per second on API has been exceed. |
503 | 3500 | System Unavailable | System is unavailable, the request should be resubmitted. |
Verification processing errors
HTTP status | status.code | status.description | Additional details |
---|---|---|---|
200 | 3900 | Verified | Any of the inner methods has successfully completed verification of end user |
200 | 3901 | Request in progress | The verification request was delivered to the gateway. If the gateway responds with further information (including successful delivery to handset or delivery failure), the status is updated. Verification is in ONGOING state |
400 | 3903 | Invalid reference_id | |
400 | 3904 | Verification Failed | Inner method failed (mismatch). Verification is in FAILED state |
400 | 3905 | Method Failed | Next method in fallback order should be called as the previous one has failed. Verification is in ONGOING state |
401 | 3906 | Unified Verify Product not enabled for Customer ID | Product is not enabled in your account. |
400 | 3907 | No verification method enabled for Customer ID | None of the verification methods is enabled in your account. This is also returned when Countries is enabled for the Silent Verify feature but you are trying to verify a number which does not belong to the set of selected countries. |
400 | 3908 | Verification time expired | Time has expired for all chosen methods. Verification is in FAILED state. |
400 | 3909 | Invalid code entered | Invalid code entered. Verification is in ONGOING state. End user can try again. |
400 | 3911 | One or more verification methods not enabled | |
400 | 3912 | Invalid verification policy | Is returned in case of improper formatting or ordering of verification policy through manual mode or in case SRE is enabled and returns an empty verification_policy parameter |
400 | 3913 | Invalid or missing recipient | If recipient is missing phone number and email or if the format is invalid. |
400 | 3922 | Missing parameter action | |
400 | 3923 | Missing parameter method | |
400 | 3924 | Invalid value for parameter method | |
400 | 3925 | Invalid value for parameter action | |
3927 | Too many START events without FINALIZE | Customer is not using FINALIZE for Verify API | |
400 | 3931 | Invalid workflow request | Upon calling start - if the verification object isn't 'created' or 'ongoing' or method in 'created' state Upon calling finalize - if the verification object isn't 'ongoing' or method in 'ongoing' state |
400 | 3932 | Wrong verification method called | Returned if a method is not in policy. If another method is ongoing its state will be set to failed (method status will be 3905) |
400 | 3933 | Method expired | |
400 | 3934 | Method skipped | |
400 | 3935 | Code validity expired | The set code validity period has expired and code is no longer valid |
400 | 3936 | Invalid security_factor | String is over 10 characters |
400 | 3941 | Missing parameter X-TS-sdk-version | |
400 | 3942 | Invalid or missing parameter push_app_token | |
400 | 3943 | Invalid value for parameter push_registration | |
400 | 3944 | Invalid, missing or mismatched supported_algorithm | |
400 | 3945 | Invalid or missing parameter app_id | |
400 | 3946 | Invalid or missing parameter public _key | |
400 | 3947 | Timestamp expired, please register push device again | |
400 | 3948 | public_key error | |
400 | 3949 | User rejected verification | |
400 | 3950 | Stamp error | |
400 | 3951 | Envelope error | |
400 | 3952 | Challenge error |
Verify API - Silent Verify status codes
Parameter | HTTP status | Code | Description | Endpoint | Verify API mapping |
---|---|---|---|---|---|
create_success_response | 200 | 4501 | Success | initiate, finalize | 3901 |
successfully_verified | 200 | 4501 | Successfully verified | initiate, finalize | 3900 |
phone_number_not_verified | 200 | 4502 | The phone number does not match | finalize | 3904 |
Verify API - Silent Verify error codes
Parameter | HTTP status | Code | Description | Endpoints | Verify API mapping |
---|---|---|---|---|---|
invalid_reference_id | 400 | 10001 | Invalid value for parameter reference_id | initiate, finalize | Returns 3905 if another method is available in the fallback order; otherwise returns 3904. |
not_in_coverage | 400 | 40010 | Not in coverage | initiate | Returns 3905 if another method is available in the fallback order; otherwise returns 3904. |
not_authorized | 401 | 40002 | Not authorized | finalize | Returns 3400. |
not_found | 404 | Invalid value for parameter reference_id | Returns 3905 if another method is available in the fallback order; otherwise returns 3904. | ||
rate_limit_exceeded | 429 | 10019 | Rate Limit Exceeded | initiate, finalize | Returns 3204. |
internal_server_error | 503 | 10039 | Internal server error - An unexpected failure happened most likely in a dependent AWS managed service | initiate, finalize | Returns 3905 if another method is available in the fallback order; otherwise returns 3500. |
system_unavailable | 503 | 10000 | System unavailable, please try again later | initiate, finalize | Returns 3905 if another method is available in the fallback order; otherwise returns 3500. |
gateway_error_temporary | 503 | 4505 | Error on gateway - temporary error | initiate, finalize | Returns 3905 if another method is available in the fallback order; otherwise returns 3500. |
gateway_error_permanent | 503 | 4506 | Error on gateway - permanent error | initiate, finalize | Returns 3905 if another method is available in the fallback order; otherwise returns 3500. |
Push Verify - gRPC response mapping
Parameter | gRPC Status | Response status_code | Response status_description | Verify API mapping |
---|---|---|---|---|
No errors - PV accepted request | 0 | 0 | "" | 3901 |
Invalid Input | 0 | 1 | "Invalid input: Missing required parameter parent_reference_id" "Invalid input: Missing required parameter customer_id" "Invalid input: Missing required parameter push_app_token" | 3045 |
Internal Error | 0 | 2 | "Issue processing request due to RabbitMQ." | 3500 |
Push Verify - Status update mapping
Push Verify pushes message to Verify API queue to update the Push Verify status.
Possible Response from Firebase - https://firebase.google.com/docs/cloud-messaging/http-server-ref
Status | Status code | Details | Verify API mapping |
---|---|---|---|
MessageProcessed | 53200 | Firebase accepted message and sent to device. | 3901 |
MissingRegistration | 53201 | Missing push_app_token . | 3942 |
InvalidRegistration | 53202 | Invalid push_app_token . | 3942 |
NotRegistered | 53203 | push_app_token may be expired or the client app may have been unregistered from Firebase Cloud Messaging. This token should no longer be used. | 3942 |
InvalidPackageName | 53204 | This error should not occur, as Push Verify does not specify a package name. However, it indicates that the push_app_token does not match the expected app package. | 3942 |
MismatchSenderId | 53205 | The push_app_token is associated with a group of senders. If your account credentials are not part of that sender group, this error will occur | 3400 |
MessageTooBig | 53206 | The payload of template parameters is too large. Up to 4096 bytes (including both key and value) are allowed. This limit also includes the mobile_app_token being passed through. | 3116 |
InvalidDataKey | 53207 | The template parameters include a key reserved by Firebase, such as from or gcm , which cannot be used. | 3904 |
InvalidTtl | 53208 | This error should not occur, as Push Verify does not pass a TTL to Firebase. However, if it does, the TTL must be between 0 and 2,419,200 seconds (4 weeks). | 3904 |
DeviceMessageRateExceeded | 53209 | Too many messages have been sent to the device in a short period. Push Verify has automatically retried sending the message. | 3204 |
InvalidJson | 53400 | Push Verify formatted JSON incorrectly for Firebase to consume. | 3904 |
AuthenticationError | 53401 | Your account credentials may be invalid, preventing authorization to send push messages through Firebase. | 3400 |
InvalidParameters | 53402 | The payload was incorrectly formatted or contained invalid values, preventing Firebase from processing the request. | 3904 |
FCMError | 53500 | Firebase returned a 500 status code due to an internal error. Push Verify automatically retried sending the message. | 3041 |
Timeout | 53501 | Firebase was unable to process the request within the expected time window. Push Verify automatically retried sending the message. | 3041 |
Unavailable | 53502 | Firebase returned an 'Unavailable' error, which should be treated the same as a timeout. Push Verify automatically retried sending the message. | 3041 |
InternalServerError | 53503 | Firebase encountered an internal error and returned a structured error response instead of an HTTP 500. Push Verify automatically retried sending the message. | 3041 |
Unknown | 53600 | Firebase returned an unrecognized error. Push Verify was unable to classify or process the response. | 3041 |
MissingFirebaseCredential | 53420 | Your account is missing the Firebase credentials required to send push messages through Push Verify. | 3041 |
InternalServerError | 53520 | Push Verify encountered a persistent error after five retry attempts. The message could not be delivered. | 3500 |
Verify API – Voice status mapping
Status Code | Status Name | Description |
---|---|---|
0 | Call has been placed on media server | Delivered. |
3 | Invalid input | One or more required fields are missing or improperly formatted. |
13 | Internal server error | Something unexpected happened. |
129 | Call blocked by customer request | Call is blocked by subscriber action or request. |
130 | Call blocked by Telesign | Call is blocked by Telesign. |
1002 | Number on country blocklist | Line is busy. |
1003 | Generic error delivering voice call | Call failed to deliver to end user. |
1004 | Exhausted gateway hosts | Call is cancelled by end user. |
Updated about 5 hours ago