Compose API

Artifact creation, storage, and sharing — compose.casa

Authentication

Pass your API key via header:

X-Compose-Key: ck_xxxxxxxxxxxx

Or Bearer token:

Authorization: Bearer ck_xxxxxxxxxxxx

Endpoints

POST /api/create

Create a new artifact.

{
  "content": "# Hello World",
  "title": "My Document",
  "content_type": "text/markdown",
  "metadata": {}
}

Returns: { "id": "abc12345", "url": "https://compose.casa/v/abc12345" }

GET /api/{id}

Retrieve an artifact by ID. Returns full content, metadata, and version info.

PUT /api/{id}

Update an artifact. Creates a new version. Body same as create.

GET /api/{id}/versions

List all versions of an artifact.

GET /api/list

List recent artifacts. Query: ?limit=20

GET /api/keys

List API keys for the authenticated user (admin sees all).

POST /api/keys

Create a new API key (admin only).

{ "tier": "free", "owner": "user@example.com" }

DELETE /api/keys/{key}

Revoke an API key (admin only).

GET /api/og/{id}

Dynamic OG image (SVG) for social sharing previews.

GET /api/health

Health check. Returns { "status": "ok" }

Views

PathDescription
/v/{id}Rendered viewer with metadata
/raw/{id}Raw content (plain text)
/embed/{id}Embeddable iframe view

Rate Limits

TierArtifacts/dayMax size
free50256 KB
pro5002 MB
enterpriseunlimited10 MB

MCP Server

Compose is available as an MCP tool server:

HTTP:  compose.casa/mcp
Stdio: /opt/axecloud-mcp/compose-mcp

Tools: compose, canvas, recall

AXE Technologies — compose.casa