Skip to content

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.

https://docs.creatorstudio.media/api/v1

All responses are JSON, UTF-8, with Content-Type: application/json. Errors use standard HTTP status codes and a { "error": "..." } body.

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.

GET /pages

Returns every page on the docs site, ordered by section then sidebar order.

Query params

ParamTypeDescription
sectionstringFilter to a single section slug (e.g. platform, api).
updated_sinceISO 8601Only pages updated on or after this timestamp.
limitintMax results (default 100, max 500).
cursorstringPagination cursor from a previous response.

Sample request

GET /api/v1/pages?section=platform&limit=2

Sample 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"
}
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-api

Sample 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.

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

ParamTypeDescription
qstring (required)Search query.
sectionstringRestrict to a section slug.
limitintMax results (default 10, max 50).

Sample request

GET /api/v1/search?q=memory+graph&limit=3

Sample 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
}
]
}
GET /sections

Returns 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 }
]
}
StatusMeaning
200OK.
400Bad query (missing q on /search, invalid cursor).
404Unknown slug on /pages/{slug}.
429Rate limited. Back off per Retry-After.
5xxServer error. Safe to retry with exponential backoff.
  • Timestamps are RFC 3339 / ISO 8601 UTC.
  • slug values 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.