Skip to content

Management API

All endpoints require authentication. See Overview & Auth.

Auth

MethodPathDescription
POST/api/auth/loginEmail/password login. Returns session cookie.
POST/api/auth/logoutClear session cookie.

Pages

MethodPathDescription
GET/api/pagesList pages. Query: ?status=, ?content_type=, ?search=
POST/api/pagesCreate a page
GET/api/pages/:idGet page with its latest version
PUT/api/pages/:idUpdate page (creates new version)
DELETE/api/pages/:idDelete page
POST/api/pages/:id/publishPublish page
POST/api/pages/:id/scheduleSchedule page. Body: { "scheduled_at": "<ISO date>" }
POST/api/pages/:id/unpublishUnpublish page
GET/api/pages/:id/versionsList all versions for the current locale
GET/api/pages/:id/versions/:versionGet a specific version
POST/api/pages/:id/restore/:versionRestore a version (creates new version)

Content Models

MethodPathDescription
GET/api/content-modelsList content models
POST/api/content-modelsCreate a content model
GET/api/content-models/:idGet a content model
PUT/api/content-models/:idUpdate a content model
DELETE/api/content-models/:idDelete a content model
POST/api/content-models/:id/duplicateDuplicate a content model

Components

MethodPathDescription
GET/api/componentsList components. Query: ?component_type=
POST/api/componentsCreate a component
GET/api/components/:idGet a component
PUT/api/components/:idUpdate a component (creates new version)
DELETE/api/components/:idDelete a component
POST/api/components/publish-batchPublish multiple components. Body: { "ids": ["..."] }

Assets

MethodPathDescription
GET/api/assetsList assets. Query: ?search=, ?page=, ?limit=
POST/api/assetsUpload asset (multipart/form-data, field: file)
GET/api/assets/:idGet asset metadata
PUT/api/assets/:idUpdate asset metadata (alt_text, filename)
DELETE/api/assets/:idDelete asset from D1 and R2

Organizations

MethodPathDescription
GET/api/organizationsList organizations
POST/api/organizationsCreate organization
GET/api/organizations/:idGet organization
PUT/api/organizations/:idUpdate organization
DELETE/api/organizations/:idDelete organization
GET/api/organizations/:id/membersList members
POST/api/organizations/:id/membersAdd member
PUT/api/organizations/:id/members/:userIdUpdate member role
DELETE/api/organizations/:id/members/:userIdRemove member

Spaces

MethodPathDescription
GET/api/spacesList spaces in current org
POST/api/spacesCreate space
GET/api/spaces/:idGet space
PUT/api/spaces/:idUpdate space
DELETE/api/spaces/:idDelete space

Environments

MethodPathDescription
GET/api/environmentsList environments
POST/api/environmentsCreate environment
GET/api/environments/:idGet environment
PUT/api/environments/:idUpdate environment
DELETE/api/environments/:idDelete environment

Locales

MethodPathDescription
GET/api/localesList locales for current environment
POST/api/localesCreate locale
PUT/api/locales/:idUpdate locale
DELETE/api/locales/:idDelete locale

Users

MethodPathDescription
GET/api/usersList users in current org
POST/api/usersCreate user
GET/api/users/:idGet user
PUT/api/users/:idUpdate user
DELETE/api/users/:idDelete user

Webhooks

MethodPathDescription
GET/api/webhooksList webhooks
POST/api/webhooksCreate webhook
PUT/api/webhooks/:idUpdate webhook
DELETE/api/webhooks/:idDelete webhook
POST/api/webhooks/:id/testSend a test event

API Keys

MethodPathDescription
GET/api/api-keysList API keys
POST/api/api-keysCreate API key
PUT/api/api-keys/:idUpdate API key
DELETE/api/api-keys/:idDelete (revoke) API key

Preview

MethodPathDescription
POST/api/previewCreate a preview token
DELETE/api/preview/:tokenRevoke a preview token
GET/api/preview-urlsList preview URLs
POST/api/preview-urlsCreate preview URL
PUT/api/preview-urls/:idUpdate preview URL
DELETE/api/preview-urls/:idDelete preview URL