# List blog categories

**Publié le** : 2026-05-12
**Catégorie** : Storefront API

## `GET /categories`

**List blog categories**

List published categories for the site. Returns a flat list with the
computed `path` per the site's `blogUrlMode` (`with-categories` vs
`flat`). Use `/categories/tree` for the nested representation.

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `page` | query | number | No | Number |
| `limit` | query | number | No | Number <= 100 |
| `search` | query | string | No | Full-text search query |
| `sortBy` | query | "created_at" \| "updated_at" \| "name" \| "slug" \| "display_order" | No | One of: created_at, updated_at, name, slug, display_order |
| `sortOrder` | query | "asc" \| "desc" | No | One of: asc, desc |
| `dateFrom` | query | string | No | Filter from date (ISO 8601) |
| `dateTo` | query | string | No | Filter until date (ISO 8601) |
| `slug` | query | string | No | URL-friendly identifier, unique per site and locale |
| `slugs` | query | string[] | No | Array of strings |
| `ids` | query | string[] | No | Array of strings |
| `excludeIds` | query | string[] | No | Array of strings |
| `parentId` | query | string \| null | No | Parent resource ID |
| `isRoot` | query | boolean | No | Boolean |
| `includeChildren` | query | boolean | No | Boolean |


### Responses

| Status | Description |
| --- | --- |
| `200` | Successful response |


> **Notes:** Cache: `Cache-Control: public, max-age=300`. Rate-limit bucket:
> general. Envelope deviates from the standard `{ data }` wrap; it
> also carries `blogUrlMode` and `locale` at the top level.

### Examples

```curl
curl "https://api.lynkow.com/public/{siteId}/categories?locale=en"
```

```javascript
const res = await fetch(`https://api.lynkow.com/public/${siteId}/categories?locale=en`)
const { data, blogUrlMode, locale } = await res.json()
```

### Response Example

```json
"{\n  \"data\": [\n    {\n      \"id\": \"01J9PA0NZK7BX4HQ7M2DC9V5T8\",\n      \"name\": \"Engineering\",\n      \"slug\": \"engineering\",\n      \"path\": \"/blog/engineering\",\n      \"description\": \"Posts about the engineering team.\",\n      \"image\": \"https://cdn.lynkow.com/sites/acme/cat/engineering.jpg\",\n      \"contentMode\": \"standard\",\n      \"schema\": null,\n      \"schemaSource\": null,\n      \"displayOrder\": 1,\n      \"locale\": \"en\",\n      \"contentCount\": 12\n    }\n  ],\n  \"blogUrlMode\": \"with-categories\",\n  \"locale\": \"en\"\n}\n"
```

---