Skip to content

Endpoints

Endpoint Method Auth required
/ GET No
/v1/models GET Yes
/v1/chat/completions POST Yes
/v1/chat/router POST Yes
/v1/router/chat/completions POST Yes

Public Health Check

GET /

No API key is required.

Example:

curl https://puter-api.x0root.workers.dev/

Example response:

{
  "status": "ok",
  "tiers": {
    "free": "Most models",
    "pro": "All models including claude-opus-4-7, gpt-5.5-pro, gpt-5.4-pro"
  },
  "docs": "Authorization: Bearer qp-..."
}

List Models

GET /v1/models

Requires API key.

This endpoint fetches Puter model metadata and returns an OpenAI-style model list. It includes all available models (including Pro models) regardless of the user's tier, though Pro models are labeled with "tier": "pro". It is mainly for compatibility with OpenAI-style clients.

Example:

curl https://puter-api.x0root.workers.dev/v1/models \
  -H "Authorization: Bearer qp-your-api-key"

Example response:

{
  "object": "list",
  "data": [
    {
      "id": "grok-4.3",
      "object": "model",
      "owned_by": "x0root",
      "name": "grok-4.3",
      "tier": "free",
      "context_window": 131072
    }
  ]
}

Chat Completions

POST /v1/chat/completions

Requires API key.

This is the primary endpoint. It accepts OpenAI-style chat completion requests.

Example:

curl https://puter-api.x0root.workers.dev/v1/chat/completions \
  -H "Authorization: Bearer qp-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "router",
    "messages": [
      { "role": "user", "content": "Explain recursion simply." }
    ],
    "context": true,
    "max_tokens": 2048
  }'

Router Alias Endpoints

These endpoints use the same implementation as /v1/chat/completions:

POST /v1/chat/router
POST /v1/router/chat/completions

Example:

curl https://puter-api.x0root.workers.dev/v1/chat/router \
  -H "Authorization: Bearer qp-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "messages": [
      { "role": "user", "content": "What is 12 * 19?" }
    ]
  }'