All pages

Developer docs

Errors

View as Markdown

Every refusal is a problem+json body (RFC 9457): type links to the entry below, code is stable and is what to act on, and detail is plain English to pass on to the person. Some refusals add facts beside the code, such as retry_after_seconds, limit, usage, archive_needed or invalid_params.

Access refusals

Any call can meet these. A change can also meet read_only_credential and machine_writes_disabled, and a call that sends a body can meet request_too_large.

invalid_credential

HTTP 401. Invalid key or token.

credential_in_url

HTTP 400. API key sent in the URL.

credential_suspended

HTTP 403. Key or connection paused.

credential_account_changed

HTTP 403. Key or connection belongs to another account.

staff_credentials_refused

HTTP 403. Not available to staff accounts.

customer_view_refused

HTTP 403. Not available in a customer view.

machine_access_disabled

HTTP 503. API access is switched off.

machine_access_not_available

HTTP 403. API access is not available yet.

rate_limited

HTTP 429. Too many requests.

temporarily_unavailable

HTTP 503. Temporarily unavailable.

invalid_request

HTTP 400. Invalid request.

unsupported_version

HTTP 400. Unsupported API version.

request_failed

HTTP 500. Request failed.

read_only_credential

HTTP 403. Read-only key or connection.

machine_writes_disabled

HTTP 503. Changes are switched off.

request_too_large

HTTP 413. Request too large.

Action refusals

Each operation page lists the ones it can answer with.

action_not_available

HTTP 403. Action not available.

not_permitted

HTTP 403. Not permitted.

not_found

HTTP 404. Not found.

method_not_allowed

HTTP 405. Method not allowed.

checks_ended

HTTP 409. Automatic checks have ended.

monitoring_ended

HTTP 409. Monitoring has ended.

recheck_not_available

HTTP 409. Re-check not available.

recheck_cooldown

HTTP 429. Re-check too soon.

check_not_started

HTTP 503. Check not started.

lookup_limit

HTTP 429. Lookup limit reached.

account_email_missing

HTTP 409. No email address on the account.

plan_unverified

HTTP 503. Plan could not be verified.

transfer_not_editable

HTTP 409. Transfer details cannot be changed.

corrections_used

HTTP 409. No corrections left.

label_not_available

HTTP 409. Label not available yet.

check_frequency_not_available

HTTP 409. Check frequency cannot be changed.

rescue_limit

HTTP 409. Rescue covers one transfer.

active_transfer_limit

HTTP 409. Active transfer limit reached.

monthly_limit_reached

HTTP 409. Monthly transfer limit reached.

transfer_archived

HTTP 409. Transfer is archived.

subscription_required

HTTP 409. Active subscription required.

demo_transfer

HTTP 409. The demo transfer cannot be changed.

record_not_available

HTTP 409. No payment record.

already_owner

HTTP 409. Already the account owner.

seat_exists

HTTP 409. Seat or invitation exists.

seat_on_other_account

HTTP 409. Seat on another account.

manages_paid_account

HTTP 409. Address manages a paid account.

team_requires_subscription

HTTP 409. Team seats need a subscription.

seat_limit

HTTP 409. Seat limit reached.

seat_not_active

HTTP 409. Seat no longer active.

seat_reservation_failed

HTTP 503. Seat not reserved.

invitation_not_pending

HTTP 409. Invitation no longer pending.

invitation_queued

HTTP 409. Invitation already queued.

invitation_rate_limited

HTTP 429. Too many invitations.

invitation_prepare_failed

HTTP 503. Invitation not prepared.

invitation_send_failed

HTTP 503. Invitation not sent.

invitation_not_sent

HTTP 503. Invitation not sent.

invitation_check_failed

HTTP 503. Invitation not checked.

member_removal_failed

HTTP 503. Teammate not removed.

destination_not_allowed

HTTP 400. Webhook address not accepted.

endpoint_exists

HTTP 409. Webhook address already registered.

endpoint_limit

HTTP 409. Webhook endpoint limit reached.