Прокси для OpenAI API: как выбрать API-шлюз и что спросить у сервиса

Чем API-шлюз отличается от сетевого прокси, по каким критериям его выбирать, какие вопросы задать до первой оплаты и как самому проверить, что списания совпадают с расчётом.

7 мин · · API-ключи · сравнение

Запрос «прокси для openai api» обычно задают разработчики, которым нужно подключить GPT или Claude к своему коду, а оплатить напрямую у поставщика неудобно или нужен доступ к нескольким вендорам через один ключ. Сервисов много, и выглядят они похоже. Ниже — что такое API-шлюз, по каким признакам отличить прозрачный сервис от непрозрачного, какие вопросы задать до оплаты и как за 15 минут проверить биллинг самому.

Прокси для OpenAI API: что под этим понимают

Под одним словом прячутся две разные вещи:

  • Сетевой прокси. Пересылает трафик, ключ и аккаунт остаются ваши, у поставщика. Это тема сетевых настроек, здесь её не разбираем.
  • API-шлюз (его тоже часто называют прокси). У вас свой ключ и баланс в шлюзе, а шлюз сам обращается к поставщикам моделей и списывает с вас стоимость токенов. Обычно через один ключ доступны модели разных вендоров, и почти всегда шлюз говорит на OpenAI-совместимом API (что это значит — в статье OpenAI-совместимый API) — менять код не нужно, только адрес и ключ.

Дальше речь о втором варианте. Схема простая: ваше приложение → шлюз (ваш ключ, ваш баланс) → поставщик модели. Отсюда и главные вопросы к шлюзу: как он считает деньги и как обращается с тем, что через него проходит.

Критерии выбора API-шлюза

Честный и проверяемый биллинг

Главный критерий. Вы должны иметь возможность по каждому запросу пересчитать стоимость сами: токены из ответа × цена из прайса. Если сервис продаёт абстрактные «кредиты» с неочевидным курсом или не показывает цену конкретного запроса, проверить его нельзя.

Что есть в Zukko для такой проверки:

  • в ответе — поле usage с числом входных и выходных токенов;
  • заголовок X-Zukko-Cost-Micros — стоимость запроса в микродолларах (только у обычных, не потоковых ответов);
  • история расходов в кабинете и через API (GET /v1/usage);
  • публичный прайс за 1M токенов по каждой модели.

Кэш промптов

Для агентов и чат-ботов с длинным контекстом кэш влияет на счёт сильнее, чем цена входа. Спросите, передаёт ли шлюз скидку за чтение кэша и как считает запись. В Zukko чтение кэша оплачивается по своей цене из таблицы, а запись в кэш списывается отдельно только у Claude. Для Claude скидка и строка записи работают в Anthropic-формате (/v1/messages), а в OpenAI-формате весь вход Claude идёт по цене входа. У GPT кэш виден в обоих форматах (prompt_tokens_details.cached_tokens); у GPT, DeepSeek, Gemini, Qwen и GLM запись в кэш отдельно не списывается.

Цена относительно официальной

Сравнивайте на своём объёме и с формулой, а не по рекламным множителям. Пример по ценам на 7 октября 2026 для gpt-6.1-sol: в Zukko $0.27 / $1.32 за 1M входных / выходных токенов, официальная цена вендора — $2 / $10. Сервис тратит в месяц 10M входных и 2M выходных токенов:

  • Zukko: 10 × 0.27 + 2 × 1.32 = 2.70 + 2.64 = $5.34;
  • официальная цена: 10 × 2 + 2 × 10 = 20 + 20 = $40.

Цены у поставщиков меняются часто, поэтому считайте это примером расчёта. Актуальный список и цены — GET https://api.zukko.pro/v1/models или страница «Модели» в кабинете.

Способы оплаты

Проверьте, чем можно платить, есть ли минимальная сумма и комиссии. В Zukko баланс в долларах, пополнение от $1. Оплата из России доступна: СБП, карта РФ (Мир, Visa, MC — в рублях по рыночному курсу на момент оплаты), криптовалюта. Зарубежная карта (MasterCard EU) — с комиссией около 13%.

Лимиты и контроль расходов

Хороший шлюз позволяет ограничить ущерб от ошибки в коде или утечки ключа. В Zukko у каждого ключа можно задать дневной и месячный лимит в долларах и список разрешённых моделей (allowed_models). Своего общего ограничения частоты запросов у Zukko нет: 429 приходит либо при исчерпании лимита ключа (key_daily_limit_reached / key_monthly_limit_reached), либо от провайдера модели.

Документация и коды ошибок

Шлюз, у которого не описаны адреса, форматы и коды ошибок, сложно встроить в продакшен. Минимум — base URL для OpenAI- и Anthropic-клиентов, список эндпоинтов, таблица ошибок с советом, что делать. Пример — справочник по аутентификации и страница о лимитах ключей и кэше в документации Zukko.

Поддержка

Узнайте, куда писать, если списание показалось странным или модель перестала отвечать. У Zukko это Telegram-канал @zukkopro и контакт поддержки, который дописывается к сообщениям об ошибках.

Вопросы, которые стоит задать сервису до оплаты

  1. Как считается стоимость запроса и где я увижу её по каждому запросу?
  2. Цены указаны за 1M токенов в долларах или во внутренних единицах? Как пересчитать?
  3. Как тарифицируются чтение и запись кэша для Claude и для GPT?
  4. Списываются ли деньги за запросы, которые закончились ошибкой?
  5. Какие способы оплаты, минимальная сумма, комиссии?
  6. Можно ли завести несколько ключей с лимитами и списком моделей?
  7. Есть ли собственный rate limit и какой код ошибки при его срабатывании?
  8. Что происходит, когда модель выключают или переименовывают?
  9. Как сервис обращается с содержимым запросов: что хранится и сколько? Ответ ищите в политике конфиденциальности.

Внятные ответы на эти вопросы важнее, чем самая низкая цена в прайсе.

Риски и как их снизить

Утечка ключа. Ключ от шлюза — это деньги на балансе. Храните его только на сервере, в переменных окружения, не в коде и не во фронтенде. Заведите отдельный ключ на каждый проект и поставьте лимиты: утёкший ключ потратит не больше лимита, а отозвать его можно, не трогая остальные. Полный ключ в Zukko показывается один раз при создании. Что делать, если ключ всё-таки утёк, — в статье утёк API-ключ.

Непрозрачные цены. Признаки: нет цены конкретного запроса, «кредиты» вместо долларов за токены, прайс без даты. Защита — тестовый прогон и сверка по формуле (ниже).

Данные проходят через посредника. Шлюз технически видит запросы и ответы. Не отправляйте лишнего: маскируйте персональные данные до запроса и прочитайте политику конфиденциальности сервиса.

Зависимость от одного адреса. Держите base URL и имя модели в конфиге, а не в коде. Тогда переезд на другой сервис или другую модель — правка настроек. Если модель выключили, Zukko отвечает 503 с кодом model_disabled — возьмите другую из GET /v1/models.

Как проверить шлюз за 15 минут

Создайте ключ с дневным лимитом $1, пополните баланс на минимальную сумму и отправьте запрос. Затем сравните стоимость из заголовка со своим расчётом. Цена в долларах за 1M токенов × число токенов = стоимость в микродолларах, поэтому формула получается без делений:

bash
from openai import OpenAI

PRICES = {"gpt-6.1-sol": (0.27, 1.32, 0.013)}  # $ за 1M: вход, выход, чтение кэша; на 7.10.2026

client = OpenAI(base_url="https://api.zukko.pro/v1", api_key="fetch_ваш_ключ")

raw = client.chat.completions.with_raw_response.create(
    model="gpt-6.1-sol",
    messages=[{"role": "user", "content": "Назови три критерия выбора API-шлюза."}],
)
resp = raw.parse()
u = resp.usage
cached = 0
if u.prompt_tokens_details and u.prompt_tokens_details.cached_tokens:
    cached = u.prompt_tokens_details.cached_tokens

p_in, p_out, p_cache = PRICES["gpt-6.1-sol"]
expected = (u.prompt_tokens - cached) * p_in + cached * p_cache + u.completion_tokens * p_out
print("расчёт, микродоллары:", round(expected))
print("заголовок X-Zukko-Cost-Micros:", raw.headers.get("x-zukko-cost-micros"))

Пример: 1 200 входных токенов без кэша и 300 выходных на gpt-6.1-sol дают 1 200 × 0.27 + 300 × 1.32 = 324 + 396 = 720 микродолларов, то есть $0.00072. Расхождение заметно больше округления — повод задать вопрос поддержке. Ещё несколько проверок собраны в статье как честно сравнить API-шлюзы.

Если хотите проверить Zukko по этому списку, создайте ключ на странице API-ключей и прогоните скрипт выше.

Частые вопросы

Чем API-шлюз отличается от прокси для OpenAI API?

Сетевой прокси только пересылает трафик, а ключ и оплата остаются у поставщика. API-шлюз выдаёт собственный ключ, ведёт свой баланс и сам обращается к моделям; часто через него доступны модели нескольких вендоров.

Нужно ли переписывать код при переходе на шлюз?

Если шлюз OpenAI-совместимый — нет: меняются base URL (https://api.zukko.pro/v1) и ключ. Для Anthropic SDK и Claude Code адрес без /v1: https://api.zukko.pro.

Как понять, что шлюз не завышает списания?

Сравните стоимость запроса из ответа (в Zukko — заголовок X-Zukko-Cost-Micros или история в кабинете) с расчётом по токенам из usage и опубликованным ценам. Делайте это на нескольких моделях и с кэшем.

Что делать, если ключ попал в чужие руки?

Сразу отозвать его в кабинете и создать новый. Лимиты на ключ заранее ограничивают возможный ущерб.

zukko

Платите в 25×
меньше

за Claude Code & ChatGPT

Один ключ fetch_* и base URL api.zukko.pro — в Cursor, Claude Code, Codex и любом SDK.