Docs API reference
The Docs API gives you structured JSON access to every page on this documentation site: pages, sections, search, and metadata. Use it to embed CSM’s docs inside your own surface (agent tool, creator dashboard, internal wiki), to cache docs locally, or to power search over CSM content without crawling HTML.
These endpoints are the planned shape. Confirm availability against /api/v1/health before integrating.
Base URL
Section titled “Base URL”https://docs.creatorstudio.media/api/v1All responses are JSON, UTF-8, with Content-Type: application/json. Errors use standard HTTP status codes and a { "error": "..." } body.
Authentication
Section titled “Authentication”None required. The Docs API is read-only and public. If you plan to hit it at high volume, send a User-Agent identifying your integration so we can reach out if something breaks.
Endpoints
Section titled “Endpoints”List pages
Section titled “List pages”GET /pagesReturns every page on the docs site, ordered by section then sidebar order.
Query params
| Param | Type | Description |
|---|---|---|
section | string | Filter to a single section slug (e.g. platform, api). |
updated_since | ISO 8601 | Only pages updated on or after this timestamp. |
limit | int | Max results (default 100, max 500). |
cursor | string | Pagination cursor from a previous response. |
Sample request
GET /api/v1/pages?section=platform&limit=2Sample response
{ "pages": [ { "slug": "platform/agent-ra", "title": "Agent Ra", "description": "The director at the center of CreatorStudio. Reads your brief, reads your back catalog, routes fifteen models into one coherent story.", "section": "platform", "url": "https://docs.creatorstudio.media/platform/agent-ra/", "updated_at": "2026-04-18T09:12:04Z" }, { "slug": "platform/director-memory-graph", "title": "Director Memory Graph", "description": "Per-creator compounding data: voice, cast, format DNA, audience signal, conversion patterns.", "section": "platform", "url": "https://docs.creatorstudio.media/platform/director-memory-graph/", "updated_at": "2026-04-17T22:40:11Z" } ], "next_cursor": "eyJvZmYiOjJ9"}Fetch a single page
Section titled “Fetch a single page”GET /pages/{slug}Returns the full page object: frontmatter, markdown body, last-updated timestamp. Slugs are the section-prefixed path used in the sidebar (e.g. api/docs-api, getting-started/quickstart).
Sample request
GET /api/v1/pages/api/docs-apiSample response
{ "slug": "api/docs-api", "title": "Docs API reference", "description": "Endpoint reference for programmatic access to CreatorStudio's documentation content.", "section": "api", "body_markdown": "The Docs API gives you structured JSON access to every page on this documentation site...", "updated_at": "2026-04-19T14:02:00Z"}body_markdown is the raw source (frontmatter stripped). It contains Starlight-flavored Markdown with absolute trailing-slash internal links; render it with any CommonMark-compatible parser.
Search
Section titled “Search”GET /search?q=Full-text search across titles, descriptions, and body content. Results are ranked by relevance (title matches weigh highest, then description, then body).
Query params
| Param | Type | Description |
|---|---|---|
q | string (required) | Search query. |
section | string | Restrict to a section slug. |
limit | int | Max results (default 10, max 50). |
Sample request
GET /api/v1/search?q=memory+graph&limit=3Sample response
{ "query": "memory graph", "results": [ { "slug": "platform/director-memory-graph", "title": "Director Memory Graph", "description": "Per-creator compounding data: voice, cast, format DNA, audience signal, conversion patterns.", "section": "platform", "url": "https://docs.creatorstudio.media/platform/director-memory-graph/", "snippet": "...the Graph becomes a per-customer fine-tuned adapter that survives model swaps underneath...", "score": 0.94 }, { "slug": "getting-started/channel-analyzer", "title": "Channel Analyzer", "description": "Paste a YouTube URL, get your Director Memory Graph in 60 seconds. Free.", "section": "getting-started", "url": "https://docs.creatorstudio.media/getting-started/channel-analyzer/", "snippet": "...your Memory Graph is live: voice profile, visual fingerprint, audience signal, format DNA...", "score": 0.81 } ]}List sections
Section titled “List sections”GET /sectionsReturns the sidebar section index: every top-level section, its slug, its label, and the number of pages in it. Useful for building a navigation UI over the Docs API content.
Sample response
{ "sections": [ { "slug": "getting-started", "label": "Getting started", "page_count": 4 }, { "slug": "platform", "label": "Platform", "page_count": 7 }, { "slug": "guides", "label": "Guides", "page_count": 4 }, { "slug": "api", "label": "API", "page_count": 3 }, { "slug": "architecture", "label": "Architecture", "page_count": 6 }, { "slug": "project", "label": "Project", "page_count": 3 } ]}Errors
Section titled “Errors”| Status | Meaning |
|---|---|
200 | OK. |
400 | Bad query (missing q on /search, invalid cursor). |
404 | Unknown slug on /pages/{slug}. |
429 | Rate limited. Back off per Retry-After. |
5xx | Server error. Safe to retry with exponential backoff. |
- Timestamps are RFC 3339 / ISO 8601 UTC.
slugvalues are stable; prefer them over URLs for keys.- Response shapes are additive-compatible: new optional fields may appear without a version bump. If a field disappears or changes type, it ships under a new namespace.