Skip to main content

Sign In With Coinbase Error Messages

Overview

All error messages return both machine (id) and a human readable (message) message. Except for validation_error, all error messages return only one error. Some errors include a link to the documentation (url).

When a POST or PUT request fails validation, a validation_error with status code 400 is returned. The response contains an errors field with a list of errors.

caution

Different error types (id) can be added and removed over time so you should make sure your application accepts new ones as well.

Error idCodeDescription
two_factor_required402When sending money over 2fa limit
param_required400Missing parameter
validation_error400Unable to validate POST/PUT
invalid_request400Invalid request
personal_details_required400User's personal detail required to complete this request
identity_verification_required400Identity verification is required to complete this request
jumio_verification_required400Document verification is required to complete this request
jumio_face_match_verification_required400Document verification including face match is required to complete this request
unverified_email400User has not verified their email
authentication_error401Invalid auth (generic)
invalid_token401Invalid Oauth token
revoked_token401Revoked Oauth token
expired_token401Expired Oauth token
invalid_scope403User hasn't authenticated necessary scope
not_found404Resource not found
rate_limit_exceeded429Rate limit exceeded
internal_server_error500Internal server error

Generic error response (4xx, 5xx)

{
"errors": [
{
"id": "not_found",
"message": "Not found"
}
]
}

Validation failed (400)

{
"errors": [
{
"id": "validation_error",
"message": "Please enter a valid email or bitcoin address"
}
]
}

Error with document link

{
"errors": [
{
"id": "invalid_scope",
"message": "Invalid scope",
"url": "http://developers.coinbase.com/api#permissions"
}
]
}

Other errors

OAuth2

When authenticating or refreshing access tokens, OAuth2, will follow different error format.

{"error": "invalid_request", "error_description": "The request is missing a required parameter, includes an unsupported parameter value, or is otherwise malformed."}

Was this helpful?