For the complete documentation index, see llms.txt. This page is also available as Markdown.

Reference

Route index and conventions for the JSON REST API.

Complete route index for the Elements CMS JSON REST API.

Conventions

  • Base URL: https://example.test/api, or whatever the Online Editor's API page shows.

  • Most routes live under /cms/.

  • Requests and responses are application/json unless noted.

  • Public read routes use the envelope documented in Errors.

  • Authenticated write and settings routes bridge into the Online Editor handlers and may return the editor JSON shape directly.

  • JSON API access is required for every route. Without it, the API returns 402 Payment Required.

  • Authenticated routes require Authorization: Bearer api_.... See Authentication and API Keys.

  • Public read routes can be called same-server without a key. Cross-origin clients should send an api_... key.

Resource pages

  • GET / and GET /status - service status and CMS app version.

  • Collections - list the site's content collections.

  • Items - CRUD for content items inside a collection.

  • Resources - media and file management.

  • Versions - item revision metadata, reads, and restore routes.

  • Settings - theme, users, and webhooks.

  • Search and Feeds - search index, tags, RSS, sitemap, and related items.

Collection addressing

Routes that target a specific collection accept either the integer folder index or the case-insensitive label slug. These are equivalent:

Slugs come from the folder label, such as Blog Posts becoming blog-posts, or from the folder-path basename.

Item addressing

Items are stored on disk as YYYY-MM-DD-<slug>.md or <slug>.md. Item routes accept either:

  • The slug alone, for example hello-from-rest.

  • The full filename, for example 2026-04-20-hello-from-rest.md.

Use the bare slug unless you need to target a specific dated filename.

Last updated

Was this helpful?