Get started
What is Capa
Projects, models, entries, drafts, keys and the CDN, on one page.
Capa is a hybrid headless CMS. Your team writes and publishes in the admin. Your sites, apps and agents read the content as JSON from a cached API.
This page names the parts. Each one has a page of its own.
The parts
| Part | What it is |
|---|---|
| Project | One site's space: its models, entries, media, keys and members. Nothing crosses from one project to another. |
| Model | A content type you define, such as Article or Product. Each has a namespace, like article, that the API uses. |
| Field | One value on a model: text, a number, a date, an image, a link to another entry. |
| Entry | One piece of content: one article, one product. |
| Relation | A field that points at another entry, such as an article's author. Your content is a graph, not a set of tables. |
| Version | Every save of an entry is kept. One version is live. |
| Key | The credential your code reads with. It decides which project you read and what you see. |
How content gets to your site
- An editor writes an entry in the admin at app.capacms.com and saves it as a draft.
- They publish it. That version becomes the live one.
- Your site asks for it with a key:
curl "https://cdn.capacms.com/api/entries/article?select=title,slug" \
-H "x-api-key: $CAPA_KEY" \
-H "Capa-Version: 2026-10-01"- Capa's CDN answers from cache when it can. Publishing a change purges the cached copies, so the next read gets the new version.
Drafts and the live version
Saving never changes your site. Publishing does.
A production key sees published entries only. A draft key sees drafts too, for preview builds and staging sites. The key decides, never a query parameter. See Drafts and publishing.
Ways to read
| Surface | Use it for |
|---|---|
GET /api/entries/{model} | REST reads. Choose fields with select, filter, sort, page, and expand relations. |
/api/graphql | GraphQL reads, typed from exactly the models your key can read. |
@capacms/sdk | A TypeScript client for both, with types generated from your models and helpers for Next.js. |
/v2/api, /v3/api | The legacy API that existing sites still use. It keeps working. |
These are for reading. Content is written in the admin, or by an AI agent through the Agent API.
Who uses it
- Developers model the content, make keys and build the site. Start with the Quickstart.
- Editors write, schedule and publish. Start with Your first day.
- Agencies run a project per client and hand it over. Start with the Agency playbook.
Words you will see
The admin says project and entry. Parts of the API say tenant and instance for the same things, such as the instance:read scope. See the Glossary.