Octavia AI CMS – Product Overview
Learn what AI CMS does and how it fits into your stack
How this documentation is organised
Everything under the AI CMS tab belongs to one of these areas. If you are looking for a specific endpoint, this is the fastest way to narrow it down.New to the API? Read Quickstart — it
builds the whole content model in about five minutes.
How content fits together
Content and forms are two separate systems. They share one dependency: Language. Build in the order below — each step needs only what is above it.Tags and Comments attach to an article but nothing depends on them, so they
can be added at any time.
Content Management
The full model, the creation order, and which fields are required
Set up in three steps
1
1. Create your account
Sign up to reach the dashboard and activate the CMS.
Sign Up for Free
Start for free — no credit card required.
2
2. Activate the AI CMS service
Enable the AI CMS app for your workspace from the dashboard.
Go to Dashboard
Enable the AI CMS app in your workspace.
3
3. Generate an API key
Create a key scoped to AI CMS, with the smallest role that covers
what you need. See API keys.
Make your first request
Every call needs a base URL and an API key header. That is the whole authentication model.Every endpoint — success or failure — returns the same envelope. Branch on
statusCode or success, never on the presence of a
body. See Response format.Prefer an SDK?
Official client libraries exist for JavaScript, Python, PHP, C#, and Go. They send the API key for you, unwrap the envelope, and give you typed errors.All SDKs
Compare all five and pick one.
JavaScript
Node.js and browser.
Python
Python 3.9+.
PHP
PHP 8.0+.
C#
.NET 6+.
Go
Go 1.21+.
Conventions used in these docs
A few things are true across the whole API, so they are stated once here.- Identifiers are 24-character hex strings (MongoDB ObjectIds), passed as path or body fields.
- Slugs are URL-facing and must be unique. Most create endpoints accept one explicitly; some derive it from the name.
- Multilingual fields are maps from a language code to a string, e.g.
{ "en": "Hello", "es": "Hola" }. - Arrays matter.
categoryandsubCategoryon an article take arrays of IDs even when you only have one. - Only
x-api-keyis yours to send. Multi-tenancy headers are injected by the gateway.
Spot something unclear? Check Rate limits &
errors — it covers the failures
you are most likely to hit.

