Fido uses conventional HTTP response codes to indicate the success or failure of an API request. In general: Codes in the 2xx range indicate success. Codes in the 4xx range indicate an error that failed given the information provided (e.g., a required parameter was omitted, a charge failed, etc.). Codes in the 5xx range indicate an error with Fido's servers (these are rare).

Some 4xx errors that could be handled programmatically include an error code that briefly explains the error reported.

Attributes

field name

field type

description

type

string

The type of error returned. One of api_connection_error, api_error, authentication_error, card_error, idempotency_error, invalid_request_error, or rate_limit_error.

code

string

For some errors that could be handled programmatically, a short string indicating the error code reported.

message

string

A human-readable message providing more details about the error. For card errors, these messages can be shown to your users.

Codes

code

description

200

OK. Everything worked as expected.

400

Bad Request: The request was unacceptable, often due to missing a required parameter.

401

Request Failed: The parameters were valid but the request failed.

403

Forbidden: The API key doesn't have permissions to perform the request.

402

Forbidden: The API key doesn't have permissions to perform the request.

403

Not Found: The requested resource doesn't exist.

404

Not Found: The requested resource doesn't exist.

409

Conflict: The request conflicts with another request (perhaps due to using the same idempotent key).

429

Too Many Requests: Too many requests hit the API too quickly. We recommend an exponential backoff of your requests.

500, 502, 503, 504

Server Errors: Something went wrong on Fido's end. (These are rare.)

Types

API errors cover any other type of problem (e.g., a temporary problem with Fido's servers), and are extremely uncommon.

type

description

api_connection_error

Failure to connect to Fido's API.

authentication_error

Failure to properly authenticate yourself in the request.

invalid_request_error

Invalid request errors arise when your request has invalid parameters.

rate_limit_error

Too many requests hit the API too quickly.

validation_error

Errors triggered by our client-side libraries when failing to validate fields (e.g., when a card number or expiration date is invalid or incomplete).


Did this page help you?