Skip to content

List categories

GET
/cms/category
curl --request GET \
--url 'https://api.example.com/cms/category?page_number=1&limit=10' \
--header 'API-Key: <API-Key>'
page_number
integer

Example

1

Page number

limit
integer

Example

10

Items per page (1-100)

categoryId
string

Comma-separated category IDs

publication
string

Comma-separated publication IDs

slug
string

Category slug

parentId
string

Parent ID or ‘null’ for top-level

List of categories

Media typeapplication/json
Array<object>
Category

API representation of a category

object
id

Category ID

string format: int64
layoutTemplate
One of:
PageTemplateMatch

The page builder template to render a category, publication, article, author or keyword with (the layoutTemplate field of their views). For category, author, keyword and article pages, prefer their /layout endpoint (e.g. GET /cms/category/{category_id}/layout), which returns the object and this template already filled in one call. Otherwise fetch the layout with GET /cms/layout/key/{key}, or GET /cms/layout/{id} when key is null.

object
id

Layout ID of the template

integer format: int64
key

Stable key of the template; null when not set

string
nullable
name

Template name

string
matchedBy

Why this template applies, most specific first: the content type (article templates only), the category itself, a parent category, or the publication; for author and keyword templates, the author or keyword itself

string
Allowed values: article_type category parent_category publication author keyword
targetType

What the template is used for

string
Allowed values: article_type category publication author keyword
targetId

ID of the content type, category, publication, author or keyword

integer format: int64
name

Category name

string
seo_name

Seo name

string
nullable
signature

Signature

string
nullable
slug

Slug

string
nullable
typeId

Type ID or object

mixed
nullable
parentId

Parent category ID

nullable
parent

Parent object

nullable
image

Image URL

string
nullable
cover

Cover URL

string
nullable
logo

Logo URL

string
nullable
paid

Paid flag

string
nullable
objectType

PHP class name of the object

string
url

Absolute URL

string
cssCode

CSS code

string
nullable
template

Template name

string
nullable
tagline

Tagline

string
nullable
link_param

Link parameter

string
nullable
description

Description

string
nullable
metaDescription

Meta description

string
nullable
iptcCode

IPTC Media Topic code

string
nullable
order

Order

nullable
pageId

Page ID

nullable
articlesCount

Articles count

integer
nullable
allowComments

Allow comments flag

string
nullable
accessType

Access type of the category (e.g., public, restricted)

string
nullable
status

Status

string
nullable
children
Array<object> recursive

Example

[
{
"layoutTemplate": {
"id": 31,
"key": "opinion-article",
"name": "Opinion article",
"matchedBy": "article_type",
"targetType": "article_type",
"targetId": 14
}
}
]