1. Reference
  2. Problem codes

Every refusal is an RFC 9457 problem document with a stable code. Branch on code. title and detail are prose written for a person, and they can change without notice.

CodeStatusCategoryCan the identical request succeed later?
authentication_required401authenticationno — change something first
credential_expired401authenticationno — change something first
credential_revoked401authenticationno — change something first
idempotency_key_reused409conflictno — change something first
invalid_request400invalid-requestno — change something first
not_found404not-foundno — change something first
plan_limit_reached409conflictno — change something first
project_archived409conflictno — change something first
rate_limited429rate-limitedyes
revision_conflict409conflictno — change something first
scope_missing403authorizationno — change something first
service_unavailable503unavailableyes
state_conflict409conflictno — change something first
test_to_live_escalation403authorizationno — change something first
version_conflict409conflictno — change something first

Each quickstart’s step tables say which of these a step can produce and what to do about it.