API reference

REST · signed · idempotent · versioned.

Every Pixicode capability is available over a stable REST API. SDKs in TypeScript and Python wrap the same endpoints with type-safe ergonomics.

Authentication

All requests require a bearer token. Generate one in Settings → API keys. Keys are scoped per workspace.

curl https://api.pixicode.com/v1/workflows \
  -H "Authorization: Bearer pxk_live_..."

POST /v1/runs

Trigger a workflow run.

POST /v1/runs
{
  "workflow": "brand-migration",
  "input": {
    "figma_file": "abc123",
    "target_tokens": "@northwind/tokens@2.0.0"
  },
  "idempotency_key": "mig-2026-q2"
}

→ 201 Created
{
  "id": "run_01HXY...",
  "status": "queued",
  "trace_url": "https://app.pixicode.com/trace/run_01HXY..."
}

GET /v1/workflows

List every workflow registered in the workspace.

GET /v1/workflows?limit=50

→ 200 OK
{
  "data": [
    { "name": "brand-migration", "version": 4, "owner": "platform-eng" },
    { "name": "a11y-remediation", "version": 12, "owner": "design-systems" }
  ]
}

GET /v1/tokens

Resolve the current canonical token set for a workspace.

GET /v1/tokens?source=figma

→ 200 OK
{
  "version": "2.4.1",
  "color": { "fg.primary": "#0E0E0C", "bg.canvas": "#F4F2EC" },
  "space": { "s-4": 16, "s-6": 24 }
}

POST /v1/evals

Run a regression eval on a workflow version.

POST /v1/evals
{
  "workflow": "brand-migration",
  "version": "5-rc1",
  "dataset": "ds_01HXY..."
}

Webhooks

Subscribe to run.completed, verifier.abstained, pr.merged and 14 other events. All payloads are HMAC-signed with the workspace secret.

// header
X-Pixicode-Signature: t=1716835200, v1=4f2c...

// payload
{
  "type": "run.completed",
  "data": { "id": "run_01HXY...", "status": "success", "tasks": 412 }
}