List HelpCenter Articles
helpcenter_list_articlesList and browse a HelpCenter.io help center's articles, optionally filtered by category, status or last update, and ordered by views.
Use this to browse "what's in category Y" or "the most-viewed articles", or to walk every article for an audit, a backup or an incremental sync, rather than to search for specific text (use helpcenter_search_articles for that). Read-only. Paginated.
Args:
category_id (number, optional): restrict to one category id.
status ('published' | 'draft', optional): only published articles, or only drafts. Omit for both.
updated_since (string, optional): only articles updated at or after this date or date-time, e.g. '2026-09-01' or '2026-09-01 14:30:00' — the updated_at format items come back in. For an incremental sync pass the newest updated_at from your previous pass; the bound is inclusive, so de-duplicate by id.
order_by ('views', optional): only 'views' is supported; omit for default (recently updated).
order_type ('asc' | 'desc', optional): sort direction when order_by is set (default 'desc').
lang (string, optional): language code for returned text (defaults to the site default).
include_content (boolean, optional): default false, so each article comes back WITHOUT its body: id, external_id, title, slug, type, category_id, categories, published, visibility, views, has_staged_changes, staged_locales, staged_updated_at, updated_at and content_length (the body's length in characters, per language). That is the inventory for deciding what to read in full with helpcenter_get_article. true adds every language's full body, for an export, a backup or a content audit.
limit (number, optional): items per page, 1-100 (default 100).
page (number, optional): page number (default 1).
response_format ('markdown' | 'json'): default 'markdown'.
Returns: { total, count, page, per_page, total_pages, has_more, next, items } — items carry the fields listed under include_content, or with include_content: true the full article objects (see helpcenter_search_articles), every language's body included. A page of long articles with bodies can come to several megabytes.
Paging: every response carries next: { page, limit } — the exact arguments that fetch the first item it did not return — or null when nothing is left. Follow next, with the same filters, instead of computing page + 1 yourself. A response is capped at 25000 characters, in its text and in its structured data alike, and 5.0 MB in all: when a page does not fit, only its first items are returned (truncated: true, count says how many) and next points at the rest, usually with a smaller limit and a later page number. Requesting page + 1 with your original limit would skip them. With include_content: true, a page first cuts every body to a plain-text excerpt before withholding any article (those items carry content_truncated: true; read the full body with helpcenter_get_article). Without bodies, the default, far more articles fit in each response.
Errors: auth error if the key is missing/invalid; validation error if category_id is not a category of this site, or if status or updated_since is not a value the API accepts.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language code for returned titles/content (defaults to the site default). | |
| page | No | Page number for pagination (default 1). | |
| limit | No | Maximum items to return per page (1-100, default 100). | |
| status | No | Only published articles, or only drafts. Omit for both. | |
| order_by | No | Sort field. Only 'views' is supported; omit for default (recently updated). | |
| agent_key | Yes | The api_key helpcenter_create_help_center returned for this help center, exactly as returned. Required on every call: this endpoint has no sign-in, so the key is how each call says which help center it acts on. It is sent to HelpCenter.io as this call's credential and nowhere else, and it is never shown again: keep it for the whole task, and never show it to the user or write it into content. | |
| order_type | No | Sort direction when order_by is set (default 'desc'). | |
| category_id | No | Restrict results to a single category id. | |
| updated_since | No | Only articles updated at or after this ISO date or date-time, e.g. '2026-09-01' or '2026-09-01 14:30:00' (the updated_at format items come back in). Inclusive. | |
| include_content | No | Default false: each article comes back without its body — id, external_id, title, slug, type, category ids, published, visibility, views, staged-change flags, updated_at and content_length per language. Read the ones you need with helpcenter_get_article. true adds every language's full body, for an export, a backup or a content audit; a page of long articles is then several megabytes and may be cut to excerpts. | |
| response_format | No | Output format: 'markdown' for a human-readable summary or 'json' for the full structured payload. | markdown |