> ## Documentation Index
> Fetch the complete documentation index at: https://docs.esimstory.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Orders

> Conventions shared by every order endpoint

Conventions that apply to every request, and the limits you share across them.
For the endpoint itself, see [Create an order](/endpoints/create-order).

## Request format

* `Content-Type: application/json`
* The three signature headers on every call — see
  [Authentication](/authentication/overview)
* A timestamp within 5 minutes of our clock

## Response format

JSON with snake\_case keys. Errors come in one of two shapes, and which one you
get depends on the status:

| Status       | Shape                                                       |
| ------------ | ----------------------------------------------------------- |
| `401`, `404` | `{"error": {"code": "...", "message": "..."}}`              |
| `422`, `429` | `{"errors": ["...", "..."]}`                                |
| `400`        | `{"error": "..."}` — raw parser message, wording not stable |
| `5xx`        | Not guaranteed to be JSON. Do not parse                     |

Each status is documented under
[Errors](/endpoints/create-order#errors).

## Rate limits

**300 requests per 5 minutes**, counted by source IP across all endpoints.
Contact support if your integration needs a higher ceiling.

[Get eSIM status](/endpoints/esim-status) carries a second, tighter limit of
**60 requests per minute**, counted against your access key rather than your IP,
because every call reaches the upstream provider. Both limits apply to it.

Going over returns `429 Too Many Requests` with a `Retry-After` header in
seconds:

```json theme={null}
{
  "errors": ["Too many requests. Please try again shortly."]
}
```

<CardGroup cols={2}>
  <Card title="Create an order" icon="cart-shopping" href="/endpoints/create-order">
    The endpoint, the webhook, and the errors
  </Card>

  <Card title="Authentication" icon="key" href="/authentication/overview">
    Sign your requests
  </Card>
</CardGroup>
