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

# Get A CMS Entry

> Fetch one CMS entry by id.

Use this endpoint when you already know the entry id.

```text theme={null}
GET /api/public/cms/[modelId]/[id]
```

## Example

```bash theme={null}
curl "https://api.plato.ae/api/public/cms/products/entry_123?fields=id,name,price" \
  -H "Authorization: Bearer $PLATO_API_KEY"
```

## Path Parameters

| Parameter | Meaning                                 |
| --------- | --------------------------------------- |
| `modelId` | CMS database identifier or database id. |
| `id`      | Entry id.                               |

## Query Parameters

| Parameter       | Type    | Default                          | Notes                                  |
| --------------- | ------- | -------------------------------- | -------------------------------------- |
| `fields`        | string  | system fields and visible fields | Select specific fields.                |
| `includeHidden` | boolean | `false`                          | Include hidden CMS fields.             |
| `maxDepth`      | number  | `3`                              | Relation expansion depth. Maximum `6`. |

## Response

```json theme={null}
{
  "id": "entry_123",
  "name": {
    "en": "Classic Burger"
  },
  "price": 38,
  "createdAt": "2026-06-17T08:20:00.000Z",
  "updatedAt": "2026-06-17T09:15:00.000Z"
}
```

## Not Found

If the entry does not exist in the API key workspace, Plato returns:

```json theme={null}
{
  "message": "Entry not found."
}
```

with status `404`.
