Skip to content

Quickstart

Get your first response in under 60 seconds.

Prerequisites

You need an API key. Keys are issued per client — contact Jim to get yours.

Make your first call

Replace <YOUR_API_KEY> with the token you were issued.

1
2
3
4
5
6
7
8
9
curl https://api.pokkit.dev/v1/chat/completions \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-4-6",
    "messages": [
      { "role": "user", "content": "Say hello in one sentence." }
    ]
  }'
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from openai import OpenAI

client = OpenAI(
    api_key="<YOUR_API_KEY>",
    base_url="https://api.pokkit.dev/v1",
)

response = client.chat.completions.create(
    model="claude-sonnet-4-6",
    messages=[{"role": "user", "content": "Say hello in one sentence."}],
)
print(response.choices[0].message.content)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
import OpenAI from "openai";

const client = new OpenAI({
  apiKey: "<YOUR_API_KEY>",
  baseURL: "https://api.pokkit.dev/v1",
});

const response = await client.chat.completions.create({
  model: "claude-sonnet-4-6",
  messages: [{ role: "user", content: "Say hello in one sentence." }],
});
console.log(response.choices[0].message.content);

Try a different provider

Switch the model to route to a different upstream:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# Together AI (open-weights)
curl https://api.pokkit.dev/v1/chat/completions \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{"model": "Qwen/Qwen3.5-397B-A17B", "messages": [{"role": "user", "content": "Hello"}]}'

# OpenRouter (catch-all)
curl https://api.pokkit.dev/v1/chat/completions \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{"model": "anthropic/claude-sonnet-4-6", "messages": [{"role": "user", "content": "Hello"}]}'

See Models for the full list of supported model strings.