Create a category
Create a category in the portal. Its id is what goes into category_id when creating an article, and its locale is what decides that article’s language and translation target.
The locale has to be one of the portal’s allowed_locales — list portals shows the current list and updating the portal is how you add one.
Requires being an administrator of the account or a member of the portal.
Authorizations
The id_token from POST /auth/v1/signin, sent as Authorization: Bearer <id_token>. Not the access_token — that one does not carry the identity Cloud Chat authorizes on.
Headers
Your Cloud Chat instance ID — an integer, fixed for your company, told at onboarding. The API overview explains how instances work, how to find yours, and the errors a wrong or missing value produces.
1
Path Parameters
Your Cloud Chat account. It has to be an account your token grants membership on, and it has to live on the instance in the cloudchat-instance header — the two travel together. Account numbers are only unique within an instance, so the same number is a different company on another instance. Usually a mismatched pair fails closed with a 401, because your user does not exist on the other instance — but if your identity happens to exist on both, the call succeeds against the other company's data, silently. Read it and you are looking at the wrong help center; write it and you have stored into the wrong account. Send the two values that were given to you together, and never try a number to see what answers.
1
The portal's slug — the URL-safe handle you see in its public address (/hc/<slug>/...), not a numeric id. List portals returns every slug on the account. Note the asymmetry: portals are addressed by slug, articles by numeric id.
"acme-help"
Body
The category goes under a category wrapper. Only name is required.
Response
The category as stored.
A category of one help center portal.
What goes in category_id when creating or updating an article.
12
"getting-started"
"Getting Started"
An article created in this category inherits this locale, and translate translates into it. Older categories can carry a locale that is no longer among the portal's allowed_locales: they are still listed and still render, but any write to them is refused until that locale is allowed again through updating the portal.
"en"
The order the help center renders, ascending. Null on a category that never got one — which is most of them, because nothing assigns a position automatically. The listing puts those last.
10
"2026-05-02T11:04:17.000Z"
"2026-08-10T14:32:05.123Z"
"First steps with the product."
Set when the category is nested under another.
null
Root category linking the translations of the same category across locales.
null