Документация APICODIK API

APICODIK совместим с OpenAI API: подключение — это смена адреса и ключа. Для Claude Code есть формат Anthropic, для Gemini CLI — формат Gemini.

Первый запрос

Если ключа ещё нет, начните со страницы активации. Выберите модель, укажите адрес своего протокола и отправьте короткое сообщение. Проверить расход можно в кабинете.

Claude Code · Cursor · Codex CLI · Ошибки API

Адрес и авторизация

Base URL (OpenAI)https://apicodik.ai/v1
Base URL (Anthropic, Claude Code)https://apicodik.ai — SDK сам допишет /v1/messages
Base URL (Gemini)https://apicodik.ai/gemini
Ключsk-6969-… в заголовке Authorization: Bearer; также принимаются x-api-key (Anthropic SDK) и x-goog-api-key (Google SDK). В адресе запроса ключ не передавайте.
МоделиGET https://apicodik.ai/v1/models — 37 моделей; список с ценами — здесь.

OpenAI SDK и curl

curl

bash
curl https://apicodik.ai/v1/chat/completions \
  -H "Authorization: Bearer sk-6969-ваш-ключ" \
  -H "Content-Type: application/json" \
  -d '{"model": "gpt-6-sol", "stream": true,
       "messages": [{"role": "user", "content": "Объясни рекурсию одним абзацем"}]}'

Python

python
from openai import OpenAI

client = OpenAI(base_url="https://apicodik.ai/v1", api_key="sk-6969-ваш-ключ")
reply = client.chat.completions.create(
    model="claude-sonnet-5",
    messages=[{"role": "user", "content": "Привет!"}],
)
print(reply.choices[0].message.content)

Node.js

javascript
import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://apicodik.ai/v1", apiKey: "sk-6969-ваш-ключ" });
const reply = await client.chat.completions.create({
  model: "gemini-3.8-flash",
  messages: [{ role: "user", content: "Привет!" }],
});
console.log(reply.choices[0].message.content);

Поддерживаются потоковый вывод (stream: true), вызов инструментов и формат /v1/responses (его использует Codex).

Responses API для Codex

Base URL тот же, что у OpenAI SDK. Путь /responses дописывает SDK.

python
from openai import OpenAI
import os
client = OpenAI(base_url="https://apicodik.ai/v1", api_key=os.environ["API_KEY"])
reply = client.responses.create(model="gpt-6-sol", input="Объясни рекурсию одним абзацем")
print(reply.output_text)

Формат Anthropic (Claude Code, Anthropic SDK)

python
import anthropic

client = anthropic.Anthropic(base_url="https://apicodik.ai", api_key="sk-6969-ваш-ключ")
msg = client.messages.create(
    model="claude-opus-5-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Привет!"}],
)
print(msg.content[0].text)

Для Claude Code — отдельная пошаговая инструкция.

Gemini API и curl

Для Gemini используется адрес https://apicodik.ai/gemini и путь Google Gemini API /v1beta/models/<model>:generateContent. Идентификаторы доступны в каталоге моделей.

bash
curl https://apicodik.ai/gemini/v1beta/models/gemini-3.8-flash:generateContent   -H "x-goog-api-key: $APICODIK_API_KEY"   -H "Content-Type: application/json"   -d '{"contents":[{"parts":[{"text":"Привет!"}]}]}'

Для потокового ответа используйте действие streamGenerateContent. Поддерживаемые поля и фактический usage зависят от выбранной модели; сверяйте списание в кабинете.

Агенты в терминале: установщик в одну команду

Установщик пропишет адрес, ключ и модель в настройки программы. Команда --remove убирает ровно то, что он поставил, и возвращает прежние значения. Каждую ночь мы проверяем все программы на реальной задаче.

bash
# подключить (программа, ключ, модель — по желанию)
curl -fsSL https://apicodik.ai/cli | sh -s claude sk-6969-ваш-ключ
curl -fsSL https://apicodik.ai/cli | sh -s codex sk-6969-ваш-ключ gpt-6-sol

# отключить
curl -fsSL https://apicodik.ai/cli | sh -s claude --remove

Программы: claude (Claude Code), codex (Codex CLI), opencode, kimi (Kimi Code), grok (Grok CLI), hermes, gemini (Gemini CLI). Для Gemini CLI при первом запуске ответьте «да» на вопрос о доверии к папке — иначе он не прочитает настройки.

Коды ошибок

HTTPТипЧто значит
401invalid_api_keyНет заголовка авторизации или ключ неверный.
402insufficient_creditsНа балансе закончились средства — пополните кодом в кабинете.
403key_paused / key_revoked / key_expiredКлюч приостановлен, отозван или истёк срок.
403model_not_allowedКлючу запрещена эта модель (ограничение задаётся в кабинете).
404model_not_foundТакой модели нет — сверьте ID со списком /v1/models.
413request_too_largeЗапрос больше контекстного окна модели.
429rate_limit_exceededСлишком много запросов в секунду с одного ключа — повторите чуть позже.
502—Модель временно недоступна: шлюз уже перепробовал доступные источники — повторите запрос чуть позже.

Подробнее: действия для каждого кода и таймаута. В OpenAI-протоколе пример формы ошибки: {"error": {"type": "…", "message": "…"}}.

Vibe-котик пишет код за ноутбуком

Один ключ для вашего проекта

Посмотрите порядок получения ключа и активируйте уже полученный код. Подключение — по инструкции для вашей программы.

Как получить ключ