# Get the cookie table

URL: /docs/api/storefront/consent-and-privacy/get-the-cookie-table

Every identifier the store's analytics and conversion tracking keep, on the device or on the
servers, with its purpose, lifetime, consent category and when it is deleted; the ad click IDs
and their windows; what is never used; and the register's version history. Render it as the
store's cookie table (the page the consent banner links to). `register_version` is the version
consent records store. Cache it for 5 minutes; revalidate with `If-None-Match` for a bodyless
`304`.

## GET /v1/privacy/cookies

```http
GET https://api.elaraone.app/api/v1/privacy/cookies
```

Every identifier the store's analytics and conversion tracking keep, on the device or on the
servers, with its purpose, lifetime, consent category and when it is deleted; the ad click IDs
and their windows; what is never used; and the register's version history. Render it as the
store's cookie table (the page the consent banner links to). `register_version` is the version
consent records store. Cache it for 5 minutes; revalidate with `If-None-Match` for a bodyless
`304`.

### Parameters

| Name | In | Type | Required | Description |
|---|---|---|---|---|
| `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. |
| `If-None-Match` | header | string |  | Optional. The `ETag` of an answer you already hold. While it is still current the answer is `304 Not Modified` with no body (the `ETag` and `Cache-Control` headers are repeated); otherwise a normal 200 with the new `ETag`. |

### Responses

- **200**: Success.
- **304**: Not modified: the `ETag` sent in `If-None-Match` is still current. No body; keep using your copy.
- **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.