# List pages

URL: /docs/api/storefront/content/list-pages

## GET /v1/pages

```http
GET https://api.elaraone.app/api/v1/pages
```

### Parameters

| Name | In | Type | Required | Description |
|---|---|---|---|---|
| `filter[kind]` | query | string |  | Only pages of this kind: `page` or `post`. Comma-separate for both. An unknown kind matches nothing. |
| `sort` | query | string |  | `title`, `published_at`, `-title` or `-published_at` (default `-published_at`: newest first). |
| `X-Client-IP` | header | string |  | Optional. IP address of the shopper (one IPv4/IPv6, no port, no list). Honoured only together with a valid X-Tenant-Secret; ignored otherwise. Used for rate limits and recorded with form submissions. |
| `X-Tenant-Secret` | header | string |  | Optional here. Server secret of the store: server-to-server only, never from a browser. Enables X-Client-IP. |

### Responses

- **200**: A page of results, with `links` and `meta`.
- **402**: Payment required. Branch on `error.code`: - `TENANT_PAYMENT_REQUIRED`: this store is on payment hold. Show a "store temporarily unavailable" page; do not retry the request.