TokiLabsDocs
Справка

Примеры вызовов API

API совпадает с официальными форматами OpenAI и Anthropic. В существующем коде достаточно заменить base_url и ключ — остальную логику менять не нужно.

Один ключ работает со всеми моделями. Ключ хранится только в вашем браузере и никуда не отправляется.

Эндпоинты

МетодПутьОписание
POST/v1/messagesAnthropic Messages (нативный формат Claude)
POST/v1/chat/completionsOpenAI Chat Completions
POST/v1/responsesOpenAI Responses (используется Codex)
GET/v1/modelsСписок моделей, доступных для текущего ключа

Аутентификация: в формате OpenAI используется Authorization: Bearer sk-..., в формате Anthropic — x-api-key: sk-...; распознаются оба заголовка.

Формат OpenAI

Terminal
pip install openai
main.py
from openai import OpenAI

client = OpenAI(
    base_url="https://api.tokilabs.xyz/v1",
    api_key="sk-your-key",
)

resp = client.chat.completions.create(
    model="gpt-6.1-sol",
    messages=[{"role": "user", "content": "Расскажи о себе в одном предложении"}],
)
print(resp.choices[0].message.content)

Формат Anthropic

base_url для Anthropic SDK указывается без /v1.
Terminal
pip install anthropic
main.py
import anthropic

client = anthropic.Anthropic(
    base_url="https://api.tokilabs.xyz",
    api_key="sk-your-key",
)

msg = client.messages.create(
    model="claude-sonnet-5-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Расскажи о себе в одном предложении"}],
)
print(msg.content[0].text)

Чтение из переменных среды

Оба официальных SDK автоматически читают переменные среды. Если задать OPENAI_BASE_URL (значение https://api.tokilabs.xyz/v1) и OPENAI_API_KEY, адрес и ключ в коде указывать не нужно:

Python
from openai import OpenAI
client = OpenAI()  # Автоматически используются OPENAI_BASE_URL и OPENAI_API_KEY
Anthropic SDK читает ключ из переменной ANTHROPIC_API_KEY, а Claude Code — из ANTHROPIC_AUTH_TOKEN. При использовании Anthropic SDK в коде дополнительно задайте ANTHROPIC_API_KEY.