Skip to content
API and agents

Abilities reference

Every ability on this installation with its inputs, permissions and where it is available. Generated from the running CMS.

On this page

Ability names are the same everywhere: entries/create in REST and the CLI, entries.create as an MCP tool. Plugins add their own namespaces.

abilities

abilities/list
read-only

Every action this site supports for you, with input schemas.

account

account/get
read-only

The signed-in user.

account/two-factor-confirm
not via REST, MCP, Assistant

Verify a code from the authenticator app and enable two-factor sign-in.

InputTypeNotes
code requiredstring
account/two-factor-disable
not via REST, MCP, Assistant

Turn off two-factor sign-in (needs your password).

InputTypeNotes
password requiredstring
account/two-factor-setup
not via REST, MCP, Assistant

Generate a TOTP secret. Confirm with account/two-factor-confirm.

account/update
not via MCP, Assistant

Change name, email, locale, preferences, profile fields (data) or password (password changes need the current password).

InputTypeNotes
namestring
emailstring
localestring | null
avatarstring | null
preferencesobject
dataobjectProfile fields (see users/fields).
currentPasswordstring
passwordstring

admin

admin/arrangement
read-onlyneeds settings.manage

Every item of the sidebar or the home screen and an arrangement of them (the saved one, the given one, or the defaults when layout is null). Save with settings/update (namespace "admin", value "sidebar" or "dashboard").

InputTypeNotes
of requiredstringsidebar, or dashboard when letterncms/dashboard is on
layoutobject | null

analytics

analytics/breakdown
read-onlyneeds analytics.view

Views per page (with the entry it shows) or language for a period, most first. In visitors mode also visitors per page, entry page (where visits started), source (referring site or campaign; "Direct" when none), device, browser or operating system; in counts mode (the default) those answer {unavailable: "mode"}.

InputTypeNotes
periodstringThe last 7, 30 or 90 days, today included. One of 7d, 30d, 90d. Default '30d'.
dimension requiredstringOne of pages, languages, entries, sources, devices, browsers, os.
limitintegerDefault 10.
analytics/summary
read-onlyneeds analytics.view

Page views for a period, the same number for the period before (to compare) and one row per day. In visitors mode also visitors, views per visit, bounce rate and how many people are on the site now; in counts mode (the default, see `mode`) those are null.

InputTypeNotes
periodstringThe last 7, 30 or 90 days, today included. One of 7d, 30d, 90d. Default '30d'.

assistant

assistant/conversation
read-onlyneeds assistant.usenot via REST, MCP, Assistant, CLI

One of your chats as shown in the panel, with calls waiting for approval.

InputTypeNotes
id requiredstring
assistant/conversation-delete
destructiveneeds assistant.usenot via REST, MCP, Assistant, CLI

Delete one of your chats.

InputTypeNotes
id requiredstring
assistant/conversation-title
needs assistant.usenot via REST, MCP, Assistant, CLI

Give one of your chats a short name from how it starts.

InputTypeNotes
id requiredstring
assistant/conversations
read-onlyneeds assistant.usenot via REST, MCP, Assistant, CLI

Your recent chats with the assistant, newest first.

InputTypeNotes
limitinteger
offsetinteger
assistant/resource
read-onlyneeds assistant.usenot via REST, MCP, Assistant, CLI

One context resource, for a chat that attaches it.

InputTypeNotes
uri requiredstring
assistant/resources
read-onlyneeds assistant.usenot via REST, MCP, Assistant, CLI

What @ offers in a chat besides content: the context resources this person may read.

assistant/skills
read-onlyneeds assistant.usenot via REST, MCP, Assistant, CLI

What / offers in a chat: the skills this person may use.

assistant/status
read-onlyneeds assistant.usenot via REST, MCP, Assistant, CLI

Whether the assistant is set up, the models to pick from and the default one.

assistant/suggest
read-onlyneeds assistant.usenot via REST, MCP, Assistant, CLI

What to ask next, given what is on view. For a new chat.

InputTypeNotes
titlestring
kindstring
contentstring
selectedstring[]

audit

audit/list
read-onlyneeds audit.view

Recent changes made through abilities, newest first.

InputTypeNotes
userIdstring
pageintegerDefault 1.
perPageintegerDefault 50.
audit/recent
read-onlyneeds audit.view

The latest changes across the site in plain words: who did what to which entry, page or setting, and through which channel (admin, agent, API, CLI). Repeated saves of the same thing are folded into one item with a count.

InputTypeNotes
limitintegerDefault 8.

blocks

blocks/from-markdown
read-onlyneeds admin.access

Convert Block Markdown (Markdown plus ::: directives for other blocks) into a block tree.

InputTypeNotes
markdown requiredstring
blocks/icons
read-onlyneeds admin.access

Search the Phosphor icon set for the Icon and Button blocks. Append -bold, -fill or -light to a name for other weights.

InputTypeNotes
querystring
limitintegerDefault 120.
blocks/to-markdown
read-onlyneeds admin.access

Convert a block tree to Block Markdown.

InputTypeNotes
blocks requiredarray
blocks/types
read-onlyneeds admin.access

Every block type (props, children, examples), every style property and variant, data sources for Repeat, and the schema of scripts (logic) and animations (motion). Compose pages from these.

brevo

brevo/stats
read-onlyneeds settings.manage

Transactional email totals from Brevo for the last 7 days: requests, delivered, unique opens and clicks, bounces, blocked and spam reports. state is "ok", "inactive" (Brevo is not the mail transport), "no-key" or "error" (with a message). Cached for 10 minutes.

collab

collab/presence
read-onlynot via REST, MCP, Assistant, CLI

Say you have an entry open (and whether you are editing); returns who else has it open and when it was last saved.

InputTypeNotes
entryId requiredstring
editingbooleanDefault false.
leavebooleanDefault false.

collections

collections/delete
destructiveneeds collections.manage

Delete a collection definition. Nonempty collections require deleteEntries true; entries, drafts and history are removed.

InputTypeNotes
handle requiredstring
deleteEntriesbooleanDefault false.
collections/get
read-onlyneeds admin.access

A collection definition with its fields, the JSON schema entry data must follow, and its settings as fields.

InputTypeNotes
handle requiredstring
collections/list
read-onlyneeds admin.access

All content collections (content types) with their routes and structure.

collections/options
read-onlyneeds admin.access

Initial collection definition defaults and settings from the active plugins. Apply defaults before explicit creation settings; without the blocks plugin a new collection can contain fields only.

collections/overview
read-onlyneeds admin.access

Each content collection you can view with how many entries it has in the default language, how many of them are drafts, and when one last changed.

collections/save
needs collections.manage

Create or update a collection definition (fields, route, structure). Written to content/collections/<handle>.yaml.

InputTypeNotes
handle requiredstring
createOnlybooleanReject an existing handle when creating a collection. Default false.
definition requiredobjecttitle, singular, icon, driver (database|files), structure (list|tree|dated), default_view (table|grid|calendar), default_columns (null for automatic, [] for title only, or column IDs: uri, status, translations, author, published, updated, field:<handle>), route (e.g. /blog/{slug}), template, sort, body (the main content field handle; empty for fields only), section (default sidebar group), nav_order (default sidebar priority, lower first), fields[]

comments

comments/create

Comment on an entry, or reply to a thread with parentId. mentions are user ids (see comments/people); they get an email.

InputTypeNotes
entryId requiredstring
body requiredstring
parentIdstring
blockIdstring
mentionsstring[]Default [].
comments/delete
destructive

Delete your comment (moderators can delete any). Deleting a thread’s first comment deletes its replies.

InputTypeNotes
id requiredstring
comments/inbox
read-onlyneeds comments.view

Open threads that mention you or sit on entries you created, newest first.

InputTypeNotes
limitintegerDefault 10.
comments/list
read-only

Comment threads on an entry (open threads first), with replies and mentions.

InputTypeNotes
entryId requiredstring
resolvedbooleanInclude resolved threads Default true.
comments/people
read-only

Admin users who can see an entry and can be @mentioned on it.

InputTypeNotes
entryId requiredstring
comments/resolve

Mark a thread as resolved (or reopen it with resolved: false).

InputTypeNotes
id requiredstring
resolvedbooleanDefault true.
comments/update

Change the text of your comment.

InputTypeNotes
id requiredstring
body requiredstring

content

content/recent
read-onlyneeds admin.access

The most recently changed entries across collections you can view.

InputTypeNotes
limitintegerDefault 10.

design

design/code
needs site.code

Replace the site’s custom.css or custom.js (content/design). CSS is appended after everything else; JS loads as an ES module on every page and may register Alpine components (document.addEventListener("cms:alpine", (e) => e.detail.data("name", () => ({…})))) that elements use through logic.component.

InputTypeNotes
cssstring
jsstring
design/fonts-import
needs settings.manage

Download a Google Fonts family (latin, variable weights when available) into content/design/fonts so it is self-hosted, and add it to the design system. Then use it in a font token.

InputTypeNotes
family requiredstring
italicbooleanDefault false.
design/fonts-upload
needs settings.manage

Add a .woff2 file (base64) to content/design/fonts and the design system.

InputTypeNotes
family requiredstring
namestring
data requiredstring
weightstringDefault '400'.
stylestringOne of normal, italic. Default 'normal'.
design/get
read-onlyneeds admin.access

The site’s design system (content/design): tokens (use as token:group.name in styles), fonts, element styles, prose styles, button variants, page transition, breakpoints, custom CSS and JS, and the templates entries can use.

design/preview
read-onlyneeds settings.manage

The stylesheet the site would get with these changes (the design/update input, plus css), without saving. For live previews.

InputTypeNotes
tokensobject
darkobject
removestring[]
renameobject
stylesobject
proseobject
buttonsobject
transitionobject
cssstring
design/update
needs settings.manage

Change tokens (e.g. {"color.primary": "#0f766e"}; values may be CSS or {"min","max"} for fluid sizes), dark-mode values (null clears), renames, element styles, prose styles, button variants, fonts or the page transition. Sections you pass replace the stored ones. The site rebuilds.

InputTypeNotes
tokensobjectpath => value
darkobjectpath => dark-mode value
removestring[]
renameobjectold path => new path, within a group; references follow
stylesobjectElement styles: {"h1": {"fontSize": "token:text.5xl"}}
proseobject
buttonsobject{"primary": {"base": {...}, "hover": {...}}}
fontsarray
transitionobject

entries

entries/create

Create an entry. `data` keys are the collection's field handles (see collections/get for the schema). Created as a draft unless status is "published".

InputTypeNotes
collection requiredstring
title requiredstring
slugstring
dataobjectDefault [].
localestring
parentIdstring | null
originIdstring | nullFor translations: the entry this one translates.
statusstringOne of draft, published. Default 'draft'.
authorIdstring | null
atstringPublication time; requires status published.
entries/delete
destructive

Permanently delete an entry. Children of tree entries move up one level.

InputTypeNotes
id requiredstringEntry id (ULID).
expectedVersionstring
entries/discard-draft
destructive

Throw away unpublished changes of a published entry.

InputTypeNotes
id requiredstringEntry id (ULID).
expectedVersionstring
entries/duplicate

Copy an entry (as a draft).

InputTypeNotes
id requiredstringEntry id (ULID).
expectedVersionstring
entries/get
read-only

One entry with its working copy (draft changes included) and data fields.

InputTypeNotes
id requiredstringEntry id (ULID).
entries/list
read-only

Query entries of a collection with filters, search, sorting and pagination.

InputTypeNotes
collection requiredstring
localestring
statusstringOne of any, published, draft, live. Default 'any'.
searchstring
parentIdstring | nullTree collections: children of this entry; null for top level.
sortstringField to sort by: title, slug, uri, status, locale, published_at, updated_at, created_at, position, author_id (by the author’s name) or a data field. Prefix with - for descending, e.g. -published_at. Empty values sort last.
directionstringSort direction; overrides a - prefix on sort. One of asc, desc.
fieldsstring[]Data fields to include per entry under `values` (relations come with their titles and names).
filtersobject[]
pageintegerDefault 1.
perPageintegerDefault 25.
entries/lookup
read-onlyneeds admin.access

Summaries for a list of entry ids (any collection you can view), in the given order.

InputTypeNotes
ids requiredstring[]
entries/move

Move an entry immediately without publishing its draft. Moving published content requires publishing permission.

InputTypeNotes
id requiredstringEntry id (ULID).
parentId requiredstring | null
positioninteger
expectedVersionstring
entries/publish

Publish an entry (applying its draft). Pass `at` to schedule.

InputTypeNotes
id requiredstringEntry id (ULID).
atstring
expectedVersionstring
entries/reorder

Set the order of sibling entries (and move them under parentId for trees).

InputTypeNotes
collection requiredstring
ids requiredstring[]
parentIdstring | nullDefault null.
versionsobject
entries/restore

Restore an entry to a previous revision (as a draft for published entries).

InputTypeNotes
revisionId requiredstringEntry id (ULID).
expectedVersionstring
entries/revision
read-only

A single revision snapshot.

InputTypeNotes
id requiredstringEntry id (ULID).
entries/revisions
read-only

Revisions of an entry, newest first.

InputTypeNotes
id requiredstringEntry id (ULID).
entries/tree
read-only

All entries of a tree collection (e.g. pages) nested by parent.

InputTypeNotes
collection requiredstring
localestring
fieldsstring[]Data fields to include per entry under `values` (relations come with their titles and names).
entries/unpublish

Take an entry offline (it becomes a draft).

InputTypeNotes
id requiredstringEntry id (ULID).
expectedVersionstring
entries/update

Change an entry. `data` is merged into existing data. For published entries changes are saved as a draft until published (or pass publish: true).

InputTypeNotes
id requiredstringEntry id (ULID).
titlestring
slugstring
dataobject
authorIdstring | null
atstringPublication time; requires publish true.
publishbooleanDefault false.
expectedVersionstring

fields

fields/types
read-onlyneeds admin.access

Available field types and their options, for building blueprints.

fieldsets

fieldsets/list
read-onlyneeds admin.access

Reusable field groups that collections can import.

fieldsets/save
needs collections.manage

Create or update a reusable fieldset (content/fieldsets/<handle>.yaml).

InputTypeNotes
handle requiredstring
title requiredstring
fields requiredobject[]

forms

forms/activity
read-onlyneeds forms.view

Number of forms, unread submissions across all forms, submissions per day for the last 14 days (oldest first) and the latest submissions with a one-line summary.

InputTypeNotes
limitintegerDefault 5.
forms/delete
destructiveneeds forms.manage

Delete a form definition (submissions are kept).

InputTypeNotes
handle requiredstring
forms/export
read-onlyneeds forms.viewnot via MCP

All submissions of a form as CSV.

InputTypeNotes
form requiredstring
forms/get
read-onlyneeds forms.view

A form definition: fields (blocks) and settings.

InputTypeNotes
handle requiredstring
forms/list
read-onlyneeds forms.view

Forms with their field counts and new submissions.

forms/save
needs forms.manage

Create or update a form. fields is a block tree using form/* blocks (form/text, form/email, form/textarea, form/select, form/radio, form/checkboxes, form/checkbox, form/consent, form/file, form/number, form/date, form/tel, form/url, form/hidden) and layout blocks; each field has props label, name, required.

InputTypeNotes
handle requiredstring
title requiredstring
fields requiredarray
settingsobject
localesobjectThe form in other languages, per language code: {settings: {submit, success, confirmation_subject, confirmation_message}, fields: {<field name>: {label, help, placeholder, options, text}}}. Options keep their values: value|Label.
forms/submission-delete
destructiveneeds forms.manage

Permanently delete submissions and their files.

InputTypeNotes
ids requiredstring[]
forms/submission-update
needs forms.view

Mark a submission as read, spam or archived.

InputTypeNotes
ids requiredstring[]
status requiredstringOne of new, read, spam, archived.
forms/submissions
read-onlyneeds forms.view

Submissions of a form, newest first.

InputTypeNotes
form requiredstring
statusstringOne of all, new, read, spam, archived. Default 'all'.
searchstring
pageintegerDefault 1.
perPageintegerDefault 50.

globals

globals/delete
destructiveneeds globals.manage

Delete a global set and its values.

InputTypeNotes
handle requiredstring
globals/get
read-onlyneeds globals.view

A global set with its fields and values.

InputTypeNotes
handle requiredstring
localestring
globals/list
read-onlyneeds globals.view

Global sets (site-wide values like footer or contact details), with when each last changed.

globals/save
needs globals.manage

Create a global set or change its fields.

InputTypeNotes
handle requiredstring
title requiredstring
iconstring
fields requiredobject[]
globals/update
needs globals.edit

Set values of a global set (merged into existing values).

InputTypeNotes
handle requiredstring
values requiredobject
localestring

languages

languages/list
read-onlyneeds admin.access

The site’s languages with names, URL prefixes, direction and how many entries each has.

languages/save
needs settings.managenot via MCP

Set the site’s languages and the default one. Languages that still have entries cannot be removed.

InputTypeNotes
default requiredstringLanguage code, e.g. de or pt-BR
languages requiredstring[]
prefixDefaultbooleanAlso put the default language under a prefix (/en/…).

mail

mail/log
read-onlyneeds settings.manage

Recently sent and failed emails.

InputTypeNotes
limitintegerDefault 50.
mail/status
read-onlyneeds settings.manage

The transport email is sent with, whether it really delivers (log only does not), sent and failed counts for the last 7 days and the latest emails.

InputTypeNotes
limitintegerDefault 5.
mail/test
needs settings.managenot via MCP

Send a test message with the current email settings.

InputTypeNotes
to requiredstring

mcp

mcp/agents
read-onlyneeds tokens.manage

AI agents (MCP clients) signed in to your account with OAuth, when each was last active, and the latest changes made through MCP as you.

InputTypeNotes
limitintegerDefault 5.

media

media/delete
destructiveneeds media.delete

Permanently delete a file and its image variants. Refused while something uses it, unless force is true.

InputTypeNotes
id requiredstring
forcebooleanDefault false.
media/import
needs media.upload

Add a file from a public URL or base64 data. Returns the new media item (use its id in media fields and image blocks).

InputTypeNotes
urlstring
filenamestring
datastringBase64 file content (with filename).
altstring
folderstringDefault ''.
media/list
read-onlyneeds media.view

Browse the media library with search, filters and sorting.

InputTypeNotes
searchstring
kindstringOne of all, image, video, audio, pdf, file. Default 'all'.
folderstring | null
sortstringOne of name, -name, size, -size, folder, -folder, created_at, -created_at, updated_at, -updated_at. Default '-created_at'.
pageintegerDefault 1.
perPageintegerDefault 60.
media/lookup
read-onlyneeds admin.access

Details for media ids.

InputTypeNotes
ids requiredstring[]
media/report
read-onlyneeds media.view

Ids and /media/ URLs that point at nothing, records without a file, files without a record, and items nothing uses.

media/update
needs media.edit

Change name, alt text, caption, folder or focal point (0–100 %).

InputTypeNotes
id requiredstring
namestring
altstring
captionstring
folderstring
focalobject

navigation

packages

packages/add-key
needs packages.managenot via MCP, Assistant

Put the key for a paid plugin in place, so the store offers it here.

InputTypeNotes
key requiredstring
packages/catalog
read-onlyneeds packages.manage

A store's signed catalog as this site sees it: for each package what can be done with it here, and whether this site has access to it.

InputTypeNotes
storestringDefault 'default'.
refreshbooleanDefault false.
packages/disable
needs packages.managenot via MCP, Assistant

Turn a module or plugin off. Its data is kept. Required modules cannot be turned off.

InputTypeNotes
name requiredstring
packages/enable
needs packages.managenot via MCP, Assistant

Turn a module or plugin on and run its install/upgrade steps.

InputTypeNotes
name requiredstring
packages/install
needs packages.managenot via MCP, Assistant

Start installing a package from a store. Drive it with packages/job-step until it's done.

InputTypeNotes
storestringDefault 'default'.
package requiredstring
versionstring
turnOnbooleanDefault true.
packages/item
read-onlyneeds packages.manage

One package's listing, its description cleaned on this site.

InputTypeNotes
storestringDefault 'default'.
package requiredstring
packages/job-status
read-onlyneeds packages.manage

Where an install stands.

InputTypeNotes
id requiredstring
packages/job-step
needs packages.managenot via MCP, Assistant

Run the next step of an install. Each step is its own request, so nothing runs into a time limit.

InputTypeNotes
id requiredstring
packages/list
read-onlyneeds packages.manage

Installed packages with status and their settings namespaces. core marks the modules the admin is made of; required ones cannot be disabled.

InputTypeNotes
typestringOne of module, plugin, all. Default 'all'.
packages/plan-install
read-onlyneeds packages.manage

What installing a package means here: dependencies in order, capabilities, access. Refused with the reason when it can't work.

InputTypeNotes
storestringDefault 'default'.
package requiredstring
versionstring
packages/rollback
needs packages.managenot via MCP, Assistant

Put the previous version of a package back.

InputTypeNotes
package requiredstring
packages/store-add
needs packages.managenot via MCP, Assistant

Read a store's name and root key fingerprint. Pinned only when confirm repeats that fingerprint. Code from a store runs with full access to this site.

InputTypeNotes
url requiredstring
confirmstring
packages/store-remove
needs packages.managenot via MCP, Assistant

Forget a store. What it installed stays.

InputTypeNotes
id requiredstring
packages/stores
read-onlyneeds packages.manage

The stores this site installs from, each with the fingerprint of its root key.

packages/sync
needs packages.managenot via MCP, Assistant

Run database migrations and install/upgrade steps for active packages.

packages/uninstall
destructiveneeds packages.managenot via MCP, Assistant

Disable a plugin and remove its data (and its files when deleteFiles is true).

InputTypeNotes
name requiredstring
deleteFilesbooleanDefault false.
packages/update-auto
needs packages.managenot via MCP, Assistant

Turn automatic security updates on or off.

InputTypeNotes
on requiredboolean
packages/update-check
needs packages.manage

Fetch the signed release list and the store catalog now. Sends nothing but a User-Agent with the version.

packages/update-postpone
needs packages.managenot via MCP, Assistant

Hold automatic security updates back for up to 14 days.

InputTypeNotes
daysintegerDefault 7.
packages/update-rollback
needs packages.managenot via MCP, Assistant

Go back to the release before this one, while it's still on disk.

packages/update-start
needs packages.managenot via MCP, Assistant

Start updating the core to a version on offer. Drive it with packages/update-step.

InputTypeNotes
version requiredstring
packages/update-step
needs packages.managenot via MCP, Assistant

Run the next step of the core update. After the switch, the answer says drive: the new release finishes through /_cms/update/tick.

packages/update-switch
needs packages.managenot via MCP, Assistant

Switch to a release someone uploaded into runtime/<version>/ by FTP.

InputTypeNotes
version requiredstring
packages/update-tick
not via MCP, Assistant

Advance automatic security updates by one step.

packages/updates
read-onlyneeds packages.manage

The core update on offer and everything in its way, updates for store packages, and advisories about what's installed.

packages/upload
needs packages.managenot via MCP, Assistant

Upload a package zip in chunks of base64. The last chunk starts the install. Unsigned packages need a super admin and allowUnsigned.

InputTypeNotes
id requiredstring
index requiredinteger
lastbooleanDefault false.
data requiredstring
sigobject
allowUnsignedbooleanDefault false.
turnOnbooleanDefault true.

patterns

patterns/list
read-onlyneeds admin.access

Entries of the components collection (plus plugin patterns). Synced ones are components: instances update everywhere and take property values. Others are sections copied on insert. Create and change them with entries/create and entries/update in the "components" collection.

InputTypeNotes
workingbooleanDefault false.
patterns/save

Create or replace an entry of the components collection by handle (slug). synced: true makes it a component. Saved as a draft of an existing one unless publish is true.

InputTypeNotes
handle requiredstring
title requiredstring
descriptionstring
categorystring
syncedbooleanDefault false.
propsarray
blocks requiredarray
publishbooleanDefault true.

reading-time

reading-time/estimate
read-only

How many words an entry has and how many minutes it takes to read.

InputTypeNotes
id requiredstring
reading-time/longest
read-onlyneeds admin.access

The published entries that take longest to read, and the average reading time.

InputTypeNotes
limitintegerDefault 5.

redirects

redirects/list
read-onlyneeds seo.manage

URL redirects (content/redirects.yaml).

redirects/save
needs seo.manage

Replace the redirect list. Each: {from: "/old", to: "/new" or "https://…", status: 301|302}.

InputTypeNotes
redirects requiredobject[]

roles

roles/list
read-onlyneeds users.view

Roles with their permissions, plus every known permission grouped. Change roles with settings/update (namespace "roles").

seo

seo/analyze
read-only

On-page checks for search engines and AI answers (title, description, headings, alt text, answer-first, questions, links) with a score.

InputTypeNotes
id requiredstring
seo/health
read-onlyneeds admin.access

The on-page checks of seo/analyze across published pages (the 200 changed last; noindex pages left out): average score, how many pages score below 80, the most common issues and the lowest-scoring pages. Refreshed at most every 10 minutes.

InputTypeNotes
limitintegerDefault 5.
seo/markdown
read-onlyneeds admin.access

The clean Markdown version of a live page that AI crawlers receive.

InputTypeNotes
id requiredstring

settings

settings/get
read-only

Fields and values for one settings namespace (secrets masked).

InputTypeNotes
namespace requiredstring
settings/list
read-onlyneeds admin.access

Settings namespaces registered by the core and plugins.

settings/update
not via MCP

Save values for a settings namespace.

InputTypeNotes
namespace requiredstring
values requiredobject

site

site/build
needs site.build

Rebuild the static site (all pages). Work continues in the background; poll site/build-status.

site/build-status
read-onlyneeds admin.access

Progress of the static build. Calling it also advances queued work.

site/get
read-onlyneeds admin.access

Name, URL, timezone, locales and themes. Change them with settings/update (namespace "site").

site/preview-url
read-onlyneeds admin.access

URL that previews an entry's working copy (drafts included) for signed-in users.

InputTypeNotes
id requiredstring

system

system/info
read-onlyneeds admin.access

CMS version, PHP, database, packages and pending upgrades.

templates

templates/list
read-onlyneeds admin.access

Entries of the templates collection: block documents that frame pages (header, Page content, footer…). `default` frames anything without its own, `404` renders missing pages. Edit them with entries/update; publishing rebuilds the site.

InputTypeNotes
workingbooleanDefault false.

tokens

tokens/create
needs tokens.managenot via REST, MCP, Assistant

Create a personal access token. Scopes are ability patterns (e.g. "entries/*", "read" for all read-only abilities, "*" for everything). The token is shown once.

InputTypeNotes
name requiredstring
scopesstring[]Default ["*"].
expiresInDaysinteger | null
tokens/list
read-onlyneeds tokens.managenot via MCP, Assistant

Personal access tokens for the REST API and MCP.

tokens/revoke
destructiveneeds tokens.managenot via MCP, Assistant

Delete one of your tokens.

InputTypeNotes
id requiredstring

translations

translations/coverage
read-onlyneeds admin.access

For each language, how many entries exist in it (as the original or a translation) out of all entries in content collections, as counts and a share. Counted at most every 10 minutes.

translations/create

Start the version of an entry in another language, as a draft. translate: true translates the text with AI (when the assistant is set up); otherwise the content is copied for a person to translate.

InputTypeNotes
id requiredstring
locale requiredstringLanguage code, e.g. de or pt-BR
translatebooleanDefault false.
translations/list
read-only

Every language version of an entry, with status and URL, plus the languages it is missing.

InputTypeNotes
id requiredstring

users

users/access
read-onlyneeds users.view

What someone holds beyond their roles (access names the gate on entries compares), who gave it and until when.

InputTypeNotes
id requiredstring
users/create
needs users.managenot via MCP

Add a user. Without a password, an invitation email with a set-password link is sent.

InputTypeNotes
name requiredstring
email requiredstring
passwordstring
roles requiredstring[]
superbooleanDefault false.
dataobjectProfile fields (see users/fields).
users/delete
destructiveneeds users.managenot via MCP

Remove a user. Their content stays.

InputTypeNotes
id requiredstring
users/fields
read-onlyneeds admin.access

The fields every user profile has beyond name and email (content/users.yaml), as stored and resolved.

users/fields-save
needs collections.manage

Replace the fields of user profiles. Values of removed fields stay stored.

InputTypeNotes
fields requiredobject[]
users/get
read-onlyneeds users.view

One user.

InputTypeNotes
id requiredstring
users/grant
needs users.managenot via MCP

Give someone an access name, optionally until a date. Entries gated on that name open for them.

InputTypeNotes
id requiredstring
access requiredstring
untilstring | null
users/invite
needs users.managenot via MCP

Email a user a link to set their password.

InputTypeNotes
id requiredstring
users/list
read-onlyneeds users.view

People with an account on this site: the team (who can open the admin) by default, or the site's visitors.

InputTypeNotes
searchstring
rolestring
kindstringOne of team, visitors, all. Default 'team'.
pageintegerDefault 1.
perPageintegerDefault 50.
users/lookup
read-onlyneeds admin.access

Safe person identities for authors and user relations, without account details.

InputTypeNotes
searchstring
idsstring[]
pageintegerDefault 1.
perPageintegerDefault 25.
users/recent
read-onlyneeds users.view

The people who signed in most recently (never signed in last), with their role names and how many users there are in all.

InputTypeNotes
limitintegerDefault 6.
users/revoke
destructiveneeds users.managenot via MCP

Remove an access name from someone, whoever gave it.

InputTypeNotes
id requiredstring
access requiredstring
users/update
needs users.managenot via MCP

Change a user's name, email, roles or profile fields (data).

InputTypeNotes
id requiredstring
namestring
emailstring
rolesstring[]
superboolean
dataobjectProfile fields (see users/fields), merged into the current values.
suspendedbooleanA suspended account cannot sign in, and is signed out at its next request.