DevelopersCore concepts

Markdown Open app

Requests and errors

Interpret application API responses without treating internal endpoints as a public contract.

Request validation

Requests can be rejected when their bodies, query parameters, path parameters or headers do not match the endpoint’s contract. A value accepted by the interface may still be rejected if the request does not match the endpoint’s schema.

Send only documented fields for an approved integration. Never rely on client-supplied account IDs or roles to grant access.

Common response classes

StatusMeaning and next step
400The request does not match the expected contract. Correct it before retrying.
401Authentication is missing or invalid. Use the normal authentication flow.
403The request is forbidden, including origin or permission failures.
415The request body uses an unsupported content type.
429A rate limit was reached. Respect retry guidance when provided.
502 / 503An upstream dependency or the service is unavailable. Check status and avoid rapid retries.

Retry deliberately

Do not retry a write merely because the client did not receive a success response. The action may already have completed.

Read-only requests and mutations have different retry risks. An idempotency key only protects a request when that specific endpoint explicitly supports it.

Keep diagnostics safe

Record the operation, status and time without logging credentials or private payloads. Redact personal information before sharing an error report.