API-ключ Claude в России: Anthropic SDK и Claude Code на ключе Zukko
Консоль Anthropic не работает с Россией, но ключ Zukko подходит для Anthropic SDK и Claude Code. Пошагово: ключ, код, кэш промптов и цены Opus 5.5 и Sonnet 5.
5 мин · · API-ключи · разработка
API-ключ Claude обычно получают в консоли Anthropic, но из России этот путь закрыт: регион не поддерживается, а российские карты не принимаются. Если вам нужен ключ для своего кода на Anthropic SDK или для Claude Code, подойдёт ключ Zukko: он работает в формате Anthropic и оплачивается в рублях. Ниже — пошаговая настройка, кэш промптов и цены.
Почему ключ Anthropic из России получить сложно
Россия не входит в список регионов, которые Anthropic поддерживает для своего API (мы сверялись со списком в документации Anthropic 7 октября 2026). Пополнить баланс в консоли Anthropic картой российского банка не получится. Аккаунт, зарегистрированный в обход правил, рискует блокировкой вместе с оплаченным балансом — для рабочего проекта это неприемлемо.
Что такое ключ Zukko для Claude
Zukko — API-шлюз к моделям Claude, GPT, Gemini, DeepSeek, Qwen и GLM. Ключ вида fetch_... работает с Anthropic-совместимым API:
POST https://api.zukko.pro/v1/messages— сообщения в формате Anthropic;POST https://api.zukko.pro/v1/messages/count_tokens— подсчёт токенов до запроса.
Авторизация — заголовок Authorization: Bearer fetch_.... Anthropic SDK отправляет ключ в заголовке x-api-key, это тоже работает. Заголовок anthropic-version: 2023-06-01 SDK ставят сами.
Важно: это не ключ Anthropic. Он работает только с адресом Zukko, на api.anthropic.com его отправлять бесполезно.
Как получить API-ключ Claude: пошагово
Шаг 1. Ключ в кабинете
- Зарегистрируйтесь на zukko.pro и пополните баланс: СБП или карта российского банка в рублях по рыночному курсу, либо криптовалюта. Минимум — $1.
- Откройте «API-ключи» и создайте ключ. Задайте имя, дневной и месячный лимит в долларах и, если нужно, список разрешённых моделей.
- Скопируйте ключ сразу: полностью он показывается один раз.
Шаг 2. Anthropic SDK для Python
import os
from anthropic import Anthropic
client = Anthropic(
base_url="https://api.zukko.pro",
api_key=os.environ["ZUKKO_API_KEY"],
)
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=1024,
messages=[{"role": "user", "content": "Найди ошибку в функции: def avg(xs): return sum(xs) / len(xs)"}],
)
print(message.content[0].text)
print(message.usage)Адрес — без /v1: SDK добавляет его сам и отправляет запрос на /v1/messages.
Шаг 3. Anthropic SDK для Node.js
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
baseURL: "https://api.zukko.pro",
apiKey: process.env.ZUKKO_API_KEY,
});
const message = await client.messages.create({
model: "claude-opus-5-5",
max_tokens: 1024,
messages: [{ role: "user", content: "Предложи структуру таблиц для учёта заказов" }],
});
console.log(message.content[0].text);Шаг 4. Проверка через curl
curl https://api.zukko.pro/v1/messages \
-H "Authorization: Bearer $ZUKKO_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{"model": "claude-sonnet-5", "max_tokens": 256, "messages": [{"role": "user", "content": "Привет!"}]}'Справка по формату — в документации /v1/messages.
Шаг 5. Claude Code
Claude Code поддерживает подключение к шлюзу через переменные окружения. Ключ передаётся в ANTHROPIC_AUTH_TOKEN — его значение Claude Code отправляет в заголовке Authorization: Bearer:
export ANTHROPIC_BASE_URL=https://api.zukko.pro
export ANTHROPIC_AUTH_TOKEN=fetch_ваш_ключ
export ANTHROPIC_MODEL=claude-sonnet-5
export ANTHROPIC_DEFAULT_HAIKU_MODEL=claude-sonnet-5
claudeANTHROPIC_DEFAULT_HAIKU_MODEL нужен обязательно: фоновые запросы Claude Code идут на модель слота Haiku (по умолчанию claude-haiku-*), которой нет в каталоге Zukko, а на неизвестное имя модели шлюз отвечает 404 model_not_found. Если переключаетесь через /model opus или /model sonnet, задайте также ANTHROPIC_DEFAULT_OPUS_MODEL и ANTHROPIC_DEFAULT_SONNET_MODEL на модели из каталога.
Те же переменные можно прописать в блок env файла ~/.claude/settings.json, чтобы не задавать их в каждом терминале:
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.zukko.pro",
"ANTHROPIC_AUTH_TOKEN": "fetch_ваш_ключ",
"ANTHROPIC_MODEL": "claude-sonnet-5",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-sonnet-5"
}
}Подробная настройка — в документации по Claude Code, примерный расход за месяц — в статье сколько стоит Claude Code в месяц.
Если код написан на OpenAI SDK
Claude можно вызывать и через OpenAI-совместимый адрес https://api.zukko.pro/v1 — шлюз конвертирует запрос. Но для Claude скидку за кэш даёт только Anthropic-формат: в OpenAI-формате весь вход идёт по цене входа. Для длинных промптов и агентов выгоднее Anthropic SDK.
Если у вас уже есть проект на официальном API Anthropic, чек-лист переезда — в статье миграция с Anthropic API.
Цены и кэш промптов
Цены — в долларах за 1M токенов, на 7 октября 2026:
| Модель | id | Вход / выход | Кэш чтение / запись | Индекс силы |
|---|---|---|---|---|
| Claude Opus 5.5 | claude-opus-5-5 | 0.8 / 4 | 0.08 / 1 | 58 |
| Claude Sonnet 5 | claude-sonnet-5 | 0.4 / 2 | 0.05 / 0.5 | — |
| Claude Fable 5.1 | claude-fable-5-1 | 7 / 35 | 0.7 / 8.75 | 53 |
Индекс силы — Intelligence Index от Artificial Analysis, для Sonnet 5 данных нет. 6 октября 2026 Claude подорожал примерно вдвое, цены меняются часто: актуальный список и цены — GET https://api.zukko.pro/v1/models или страница «Модели» в кабинете.
Пример: длинный системный промпт
Допустим, у вас системный промпт на 5 000 токенов, и вы делаете 1 000 запросов с 500 свежими входными токенами и 300 выходными. Отметьте системный промпт для кэширования:
LONG_INSTRUCTIONS = "...ваши инструкции на 5 000 токенов..."
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=512,
system=[{"type": "text", "text": LONG_INSTRUCTIONS, "cache_control": {"type": "ephemeral"}}],
messages=[{"role": "user", "content": "Текст обращения клиента"}],
)
print(message.usage.cache_creation_input_tokens, message.usage.cache_read_input_tokens)Первый запрос записывает 5 000 токенов в кэш, следующие 999 читают их. Формула: (запись × цена записи + чтение × цена чтения + свежий вход × цена входа + выход × цена выхода) / 1 000 000. Для Sonnet 5:
- запись: 5 000 × 0.5 / 1 000 000 = $0.0025;
- чтение: 999 × 5 000 × 0.05 / 1 000 000 = $0.24975;
- свежий вход: 1 000 × 500 × 0.4 / 1 000 000 = $0.20;
- выход: 1 000 × 300 × 2 / 1 000 000 = $0.60;
- итого ≈ $1.05.
Без кэша: 1 000 × 5 500 × 0.4 / 1 000 000 + $0.60 = $2.20 + $0.60 = $2.80. Для Opus 5.5 по той же схеме ≈ $2.00 с кэшем и $5.60 без него. Расчёт предполагает, что кэш не успевает истечь: по документации Anthropic срок жизни кэша по умолчанию — 5 минут. Это пример на ценах 7 октября 2026; посчитать токены заранее можно через POST /v1/messages/count_tokens.
Частые вопросы
Нужен ли аккаунт в консоли Anthropic?
Нет. Ключ, баланс и история расходов — в кабинете Zukko.
Почему Claude Code не принимает ключ?
Проверьте три вещи: ключ передан в ANTHROPIC_AUTH_TOKEN, адрес https://api.zukko.pro указан без /v1, переменные заданы в том же терминале, где запускается claude. Если же приходит 404 model_not_found, проверьте, что в ANTHROPIC_MODEL и ANTHROPIC_DEFAULT_HAIKU_MODEL стоят id из каталога.
Можно ли ограничить ключ только моделями Claude?
Да. В настройках ключа задайте список разрешённых моделей. Запрос к другой модели вернёт 403 model_not_allowed_for_key.
Что делать при ошибке 402?
Это нехватка баланса. Пополните его в кабинете: СБП, карта российского банка или криптовалюта, от $1.
zukko
Платите в 25×
меньше
за Claude Code & ChatGPT
Один ключ fetch_* и base URL api.zukko.pro — в Cursor, Claude Code, Codex и любом SDK.
Похожие статьи
- Свой прокси к нейросети на Node.js: не показывать API-ключ во фронтендеНебольшой сервер на Express между вашим фронтендом и API нейросети: ключ остаётся на сервере, а модели, длина запроса и частота ограничены.
- DeepSeek API на Python: запросы, стриминг, JSON и обработка ошибокГотовый код для DeepSeek V4.1 Flash и V4 Pro на OpenAI SDK: запрос, стриминг, разбор JSON и аккуратная обработка ошибок.
- Gemini API на Python: запросы через OpenAI SDK и OpenAI-форматРабочий пример Gemini API на Python без отдельной библиотеки: меняем base_url в OpenAI SDK, добавляем стриминг и JSON и сравниваем с google-genai.
- Anthropic SDK для Python: base_url, ключ и первый запрос через шлюзОфициальный пакет anthropic для Python нужно только направить на другой адрес. Разбираем base_url, ключ, стриминг, подсчёт токенов, кэш и ошибки.