Skip to main content

Response conventions

The API uses a small number of response shapes. Always branch on the HTTP status code first, then inspect the JSON body for endpoint-specific details.

Status envelopes

Many member-scoped endpoints return:
Some endpoints use a boolean success field:
Treat both shapes as endpoint contracts; do not assume every endpoint uses the same top-level field names.

Pagination

Collection endpoints generally accept page and per_page. per_page is capped by the endpoint, commonly at 100. Laravel-style collection responses include the records in data plus pagination metadata:
Some endpoints wrap that paginator inside a success envelope:
Follow the schema on each endpoint page and stop when next_page_url is null or current_page equals last_page.

Error bodies

Depending on the endpoint, the human-readable message can appear in message, error, or error_message:
Use the field-specific errors object to guide form corrections. Do not show raw server error details to end users.

Common status codes

Retry guidance

  • Retry 429 and transient 5xx responses with exponential backoff and jitter.
  • Cap retry attempts and set request timeouts.
  • Retry safe reads automatically only when your product can tolerate stale or delayed data.
  • Do not automatically retry registration, signup, or other mutations unless your application can prove the first request did not succeed.
  • Log a request correlation identifier if one is returned, but never log API keys, member tokens, or personal response bodies.