Developer guide

Change one line.
Keep your code.

Ponako speaks the OpenAI API shape. Use the SDK you already know and point it at a different base URL.

Two small application windows connected by a single blue current
01 / Key

Make an API key.

Create an account, open Your Ponako, and make a named key. The full secret appears once. You can add a daily dollar cap and requests-per-minute limit to each key.

Small safety habit

Keep the key in an environment variable, not directly in source code. Give separate apps separate keys.

02 / Connect

Point your client here.

from openai import OpenAI

client = OpenAI(
    base_url="https://ponako.com/v1",
    api_key="sk-scalar-YOUR-KEY",
)

That is the only Ponako-specific setup. Messages, temperature, tools, response formats, and streaming pass through in the familiar shape.

03 / Ask

Send a completion.

reply = client.chat.completions.create(
    model="Qwen3.8-27B",
    messages=[
        {"role": "user", "content": "Hello from Ponako"}
    ],
)

print(reply.choices[0].message.content)

Use an exact model from the live market, or use auto when you want Ponako to choose the best current option.

04 / Stream

Stream when it matters.

stream = client.chat.completions.create(
    model="Qwen3.8-27B",
    messages=[{"role": "user", "content": "Explain rain."}],
    stream=True,
)

for event in stream:
    print(event.choices[0].delta.content or "", end="")

Ponako forwards tokens as they arrive. The response headers include the provider and price used for the request.

05 / Trust

Ask for stronger checks.

Require a minimum trust tier with X-Scalar-Min-Tier. Add X-Scalar-Require-Hash: 1 to fail closed unless the provider proved the signed model fingerprint. Add X-Scalar-Vet: 1 to ask a second provider to compare its answer. Jobs to a live agent are sealed on the wire; emails, phones, cards, and key-shaped secrets are stripped first. Ponako keeps an encrypted copy of the original prompt and the reply. Receipts do not include those texts.

Errors stay ordinary.

Bad keys return 401, insufficient credit returns 402, rate or budget limits return 429, and no eligible provider returns 503.

06 / Go

Your first useful roundtrip.

Create the account, copy a key, paste the sample, and run it. The dashboard will show the request and its cost as soon as it finishes.

Create a key