VitrinaAPI
Errors

Error codes

Every value `error.code` can take, and the HTTP status it travels with.

Read from the backend's ErrorCode union, so this list is exactly what the API can put in error.code — no more, and never less. What the ones you will actually meet mean is in Errors.

A code with two statuses has two origins: VALIDATION_ERROR is the 400 of a request that failed validation and the 422 of one that parsed fine but named something unusable. A dash means the code is declared but nothing throws it today.

CodeHTTP
ACCOUNT_DELETION_BLOCKED409
ADDON_NOT_OFFERED409
ADDON_NOT_PRICED409
ADS_ACTION_CONSENT_REQUIRED409
ADS_ACTION_NOT_AVAILABLE409
ADS_ACTION_NOT_REVERSIBLE409
ADS_ACTION_READ_UNAVAILABLE503
ADS_ACTION_REPLAY_BLOCKED409
ADS_KEY_NEEDS_REMINT409
AGENT_EVALS_NOT_ENABLED402
AGENT_EVALS_PRICE_CHANGED409
ATTRIBUTION_PROFILE_MISMATCH409
ATTRIBUTION_PROFILE_UNAVAILABLE503
AUDIO_RENDITION_PENDING503
BANK_FEED_NOT_CONFIGURED503
CAMPAIGN_FROM_CONNECTED_MAILBOX422
CHANNEL_READ_ONLY409
CLINIC_PLAN_REQUIRED402
CONFIRMATION_REQUIRED—
CONFLICT409
CONNECTED_APP_EXCLUDED_OPERATION403
CONNECTED_APP_SENSITIVE_DATA403
COPILOT_APPROVALS_UNAVAILABLE503
COPILOT_APPROVAL_REPLAY_BLOCKED409
COPILOT_BUDGET_EXCEEDED402
COPILOT_DISABLED403
DEALER_SITES_NOT_CONFIGURED503
DEVICE_AGENT_ALREADY_PAIRED422
DEVICE_AGENT_KIND_NOT_ALLOWED403
DEVICE_AGENT_NOT_PAIRED409
DEVICE_AGENT_REVOKED409
DEVICE_AGENT_SELF_REQUIRES_USER422
DEVICE_TASK_STATUS_NOT_ALLOWED422
DOCUMENT_LOGO_UNAVAILABLE503
EMAIL_SENDER_UNRESOLVED422
ENTITLEMENT_NOT_ACTIVE402
FACEBOOK_MARKETPLACE_ATTACHMENT_UNSUPPORTED422
FACEBOOK_MARKETPLACE_NOT_AVAILABLE422
FACEBOOK_MARKETPLACE_NO_PHONE_AGENT503
FACEBOOK_MARKETPLACE_THREAD_NOT_ADDRESSABLE422
FINANZAS_ACCOUNT_CONFLICT409
FINANZAS_ACCOUNT_INVALID422
FINANZAS_CASE_CHANGED409
FINANZAS_CASE_INVALID422
FINANZAS_CLASSIFICATION_CONFLICT409
FINANZAS_CLASSIFICATION_INVALID422
FINANZAS_CLAVE_ERROR—
FINANZAS_DOCUMENT_CONFLICT409
FINANZAS_DOCUMENT_INVALID422
FINANZAS_MONTH_NOT_CLOSABLE409
FINANZAS_PERIOD_CLOSED409
FINANZAS_SYNC_THROTTLED429
FORBIDDEN403
GONE410
GTM_CONSENT_REQUIRED409
GTM_CONTAINER_REQUIRED409
GTM_NOT_CONFIGURED503
GTM_NOT_CONNECTED409
GTM_PENDING_CHANGES409
GTM_PERMISSION_DENIED409
GTM_WORKSPACE_CONFLICT409
GTM_WORKSPACE_LIMIT409
IDEMPOTENCY_KEY_CONFLICT409
INTERNAL_ERROR500 · 502 · 503
INVALID_SIGNATURE401
MALFORMED_SIGNATURE401
MEDIA_SIGNING_UNAVAILABLE503
MESSAGING_ACCOUNT_TENANT_MISSING500
MESSAGING_WINDOW_CLOSED422
MIRROR_LINES_UNMAPPED409
MISSING_SIGNATURE401
MODULE_NOT_ENABLED403
MONTH_OWNED_BY_VENDOR409
NOT_FOUND404
NO_OFFERING_ADAPTER422
OUTBOUND_BLOCKED422
OUTBOUND_WARNING409
PAYLOAD_TOO_LARGE413
PRICE_CHANGE_CONFIRMATION_REQUIRED422
RATE_LIMITED429
RECONTACTO_NOT_ENABLED—
REPLAY_DETECTED409
REPLY_PACING_LOCKED403
SANDBOX_BILLING_FORBIDDEN409
SANDBOX_CHANNEL_FORBIDDEN409
SANDBOX_NOT_PROVISIONED409
SANDBOX_RESET_UNAVAILABLE409
SHARE_IMAGE_UNAVAILABLE503
STAGE_QUALIFIES_LEAD_NOT_ALLOWED422
STALE_SIGNATURE401
STOREFRONT_ZONES_NOT_CONFIGURED503
SYNC_QUEUE_UNAVAILABLE503
TASADOR_ANON_DAILY_LIMIT429
TASADOR_CAPACITY_REACHED503
TASADOR_QUOTA_EXHAUSTED429
TENANT_BILLING_PAUSED402
TURNSTILE_UNAVAILABLE503
UNAUTHORIZED401
UNIQUE_CONFLICT409
UNSUPPORTED_MEDIA_TYPE415
UNSUPPORTED_VEHICLE_TYPE422
UPSTREAM_ERROR424 · 501 · 502 · 503
VALIDATION_ERROR400 · 422
VEHICLE_VALUE_OUT_OF_RANGE422
VERSION_CONFLICT409
VERTICAL_NOT_ENABLED403
WAITING_SUBJECT_CHANGED409
WORKSPACE_DEACTIVATED402
WORKSPACE_MEMBER_INACTIVE422
YAPO_FEED_SWAP_CONSENT_REQUIRED409
account_connected_elsewhere409
boleta_not_found404
boleta_not_supported409
boleta_pdf_unavailable502
candidate_unavailable422
disconnect_refused502
dpa_acceptance_required409
evals_quota_exceeded409
evals_request_too_large422
flow_ai_incomplete422
flow_completion_mode_unsupported422
flow_endpoint_not_ready409
flow_field_map_invalid422
flow_key_taken409
flow_test_phone_invalid422
handoff_mismatch409
integration_managed409
invalid_outcome422
meta_ads_not_connected409
not_connected409
not_selecting409
partner_token_invalid502
portal_listing_incomplete—
portal_listing_rejected—
portal_no_package—
reconnect410
reminder_account_disabled—
reminder_account_not_found—
reminder_account_required—
reservo_session503
selection_conflict409
selection_expired410
stage_not_found404
stage_not_writable409
stages_write_blocked409
start_again409
sync_in_flight409
template_flow_unavailable422
template_not_approved—
template_not_found—
template_positional_variables—
template_unknown_variable—
template_unsupported—
window_closed409