Get Canvas
Get the semantic design spec + structured canvas metadata.
Authorizations
API key from Settings > Developer > REST API
Headers
Calendar-dated API version pin. New integrations should pin 2026-05-01 to opt into the newest response shapes. For back-compat the server also accepts requests with no header and resolves them to the current default (today: 2026-04-12); that default advances on each sunset date. Any unsupported value returns 400 unsupported_version.
2026-04-12, 2026-05-01 "2026-05-01"
Path Parameters
Prefixed cvs_ wire ID (Crockford base32 body) — the canonical, recommended form. For back-compat, a bare UUID string is also accepted in both path parameters and JSON request bodies (older integrations that stored raw UUIDs keep working). Both are permanent, supported inputs.
^cvs_[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$"cvs_01HT9WK8N3M2J4A5Z6P7Q8R9TV"
Query Parameters
1-indexed page number
Optional share token from POST /v1/share_links/resolve. When set, the canvas is fetched via the public share endpoint instead of DB auth, allowing callers who aren't on the canvas's team to read shared designs.
Response
Successful Response
Response shape for GET /v1/canvases/{id}.
Carries the semantic design markdown plus structured handles back to the
source canvas so callers don't have to parse the # Source: header out
of the markdown body to link back to the editor.
Prefixed canvas identifier for the requested canvas.
^cvs_[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$"cvs_01HT9WK8N3M2J4A5Z6P7Q8R9TV"
Full URL to open this canvas in the Moda editor.
Semantic pseudo-HTML design spec for the canvas (or the requested page).
Canvas display name.
Canvas description, or null.
'template', 'theme', or null.