Content API
The Weaverse Content API is a REST API that lets you read and update your page content, theme settings, and project data from any application — headless frontends, mobile apps, static site generators, AI agents, or custom integrations.Base URL
Endpoints
The endpoint reference in the sidebar is generated from the API’s OpenAPI 3.1 specification, and is refreshed each time the docs are deployed. Endpoints are grouped by area:
Download the spec from any reference page to generate a client or load it into an API tool.
The separate public discovery API exposes
GET /api/public/v1/projects/:projectId/custom-pages for custom-page route metadata. It does not require a Content API key and does not filter assignments by publication state.
Response formats
Page and theme-settings endpoints support two output formats. The default is unchanged — existing integrations are unaffected.
When both the query parameter and the
Accept header are present, the query parameter wins. See Portable Text format for the mapping rules and a rendering example.
Authentication
All endpoints (except/openapi.json) require a Content API key. Pass it via the Authorization header:
Obtaining an API key
Content API keys are provisioned per shop. Generate one from the Weaverse Dashboard → Settings.Shop isolation
Each API key is scoped to a single Weaverse shop. Requests can only access projects that belong to that shop. Attempting to access another shop’s project returns a403 Forbidden error.
Scopes
Scoped API keys and delegated MCP OAuth tokens carry a list of scopes. Each reference page ends with the scope it requires.
A legacy API key without scopes keeps read, write and translation access and every endpoint that existed before scopes, but never gains publish, delete or project management. Translation-unit routes also accept a project-bound translation agent token.
Pagination
List endpoints (/projects and /pages) use cursor-based pagination.
Paginated response shape
nextCursorisnullwhen there are no more results.- Pass
nextCursoras theafterparameter to fetch the next page.
Example: iterating through pages
Error handling
All errors follow a consistent envelope:details object, for example the conflicting handles of a 409. Each reference page lists the errors that endpoint returns.
Error codes
Usage tracking & billing
Every authenticated API request counts toward your plan’s usage quota. API hits share the same billing pool as storefront page views:- 1 API request = 1 page view hit
- Usage is tracked per project and appears in your billing dashboard
- Tracking is non-blocking — it never slows down API responses
- The
/openapi.jsonendpoint is public and not tracked
Quick start
1
Get your API key
Obtain a Content API key from your Weaverse Studio dashboard.
2
List your projects
3
Fetch page content
4
Render in your app
Use the returned
items array to render page sections in any frontend framework.TypeScript example
Next steps
List Projects
Retrieve all projects in your shop
List Pages
Browse page assignments in a project
Get Page Content
Fetch full page data with component items
Edit with Drafts
Save a draft, then publish or schedule it