---
title: Лимиты запросов Claude API
description: "Что означает 429 на apiToken.sale, как лимиты Claude API считают запросы и токены в минуту и как строить повторы с Retry-After и экспоненциальным backoff."
url: https://apitoken.sale/ru/docs/learn/claude-api-rate-limits
language: ru
---

# Разбираемся в лимитах запросов Claude API

Лимиты запросов Claude API — это поминутные потолки на запросы и токены; превышение возвращает HTTP 429 вместо ответа. Это руководство показывает, как читать такой ответ, выстроить политику повторов с учётом Retry-After и отличать лимиты пропускной способности от ограничений расходов на вашем ключе apiToken.sale.

## Что такое лимит запросов Claude API на самом деле

Лимиты Claude API — это потолки пропускной способности: сколько запросов и сколько токенов ваш аккаунт может пропустить за минуту. Превысите любой из них — и API ответит HTTP 429 вместо завершённой генерации. apiToken.sale не публикует фиксированную таблицу RPM: 429 там сигнализирует о ёмкости шлюза или апстрима, и надёжное решение — дисциплинированные повторы плюс меньшая параллельность, а не бóльшая цифра в конфиге.

В собственном API Anthropic потолки измеряются тремя способами: запросы в минуту, входные токены в минуту и выходные токены в минуту — с учётом по организации. При прямом доступе эти потолки повышаются по уровням использования по мере роста совокупных расходов. Все три счётчика сбрасываются каждую минуту — поэтому тридцатисекундный всплеск может упасть, хотя ваш часовой средний выглядит пустяковым.

## Как читать ответ 429

Грамотно написанный клиент воспринимает 429 как данные, а не как отказ. В теле ответа — ошибка типа rate_limit_error, а сам ответ обычно несёт заголовок retry-after с числом секунд, которые сервер просит подождать.

```
curl -i https://router.apitoken.sale/v1/messages \
  -H "x-api-key: sk-pool-•••" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-sonnet-5",
    "max_tokens": 64,
    "messages": [{"role":"user","content":"hi"}]
  }'

# when throttled:
# HTTP/2 429
# retry-after: 17
# {"type":"error","error":{"type":"rate_limit_error","message":"..."}}
```

> retry-after — это подсказка, а не контракт, и не каждый ответ 429 его несёт. Если заголовка нет, переходите на экспоненциальный backoff с джиттером — и никогда не повторяйте 429 в плотном цикле: это лишь усиливает перегрузку, которая его вызвала.

## Политика повторов, которая выживает в продакшене

1. Ставьте всплески в очередь, а не выпускайте разом: каждый воркер отправляет по одному запросу за раз.
2. Получив 429, прочитайте retry-after и подождите не меньше указанного числа секунд.
3. Если заголовка нет, ждите base × 2^attempt плюс случайный джиттер, с потолком около 30 секунд.
4. После 4–6 попыток остановитесь и громко завершите задачу с ошибкой вместо бесконечных повторов.
5. Логируйте модель, время ожидания и число попыток: при затяжных 429 у вас будет паттерн для поддержки.

```
const sleep = (ms: number) => new Promise((r) => setTimeout(r, ms));

async function callClaude(body: unknown): Promise<Response> {
  for (let attempt = 0; attempt < 5; attempt++) {
    const res = await fetch("https://router.apitoken.sale/v1/messages", {
      method: "POST",
      headers: {
        "x-api-key": process.env.APITOKEN_KEY!,
        "anthropic-version": "2023-06-01",
        "content-type": "application/json",
      },
      body: JSON.stringify(body),
    });
    if (res.status !== 429 && res.status < 500) return res;
    const retryAfter = Number(res.headers.get("retry-after"));
    const wait = retryAfter > 0
      ? retryAfter * 1000
      : Math.min(1000 * 2 ** attempt, 30_000) * (0.5 + Math.random() / 2);
    await sleep(wait);
  }
  throw new Error("Claude API still rate-limited after 5 attempts");
}
```

## Почему всплески упираются в лимиты раньше, чем средние значения

Поскольку счётчики поминутные, реальный рычаг — параллелизм. Пятьдесят параллельных вызовов в начале минуты могут исчерпать бюджет запросов, даже если следующий час вы не отправите ничего. Счётчики токенов усиливают эффект: каждая параллельная длинная генерация продолжает расходовать бюджет выходных токенов, пока идёт, поэтому десять одновременных ответов по 4 000 токенов давят на лимит куда сильнее, чем десять быстрых.

Стриминг ничего не меняет в учёте. Стриминговый вызов — всё тот же один запрос, который мерится и тарифицируется по тем же входным и выходным токенам, что и обычный: он лишь позволяет раньше отрисовывать токены и прерваться досрочно, когда агент получил нужное.

[Стриминг Claude API: SSE-события и та же тарификация](/docs/learn/claude-api-streaming)

## Лимиты пропускной способности — не лимиты расходов

Здесь часто путают две системы. Лимит запросов — это регулятор трафика: временный, поминутный, решается ожиданием. Ограничение расходов — тормоз бюджета: оно определяет, сколько ключ вообще может потратить. В панели apiToken.sale пропускная способность запросов вообще не настраивается: доступные ограничения ключа — необязательный общий лимит расходов за всё время и дата истечения. Ошибка 429 говорит «притормозите» и ничего не сообщает о вашем балансе; пополнение её не снимет.

|  | Лимит пропускной способности | Ограничение расходов ключа |
| --- | --- | --- |
| Что ограничивает | Запросы и токены в минуту | Совокупные траты одного ключа за всё время |
| Как проявляется | HTTP 429 с rate_limit_error | Ключ перестаёт тратить по достижении заданного лимита |
| Где живёт | Ёмкость шлюза и апстрима | Ваша панель apiToken.sale, по каждому ключу |
| Правильная реакция | Retry-After, backoff, меньше параллелизма | Осознанно поднять или снять лимит |

[Как задать общий лимит расходов и дату истечения ключа](/docs/learn/claude-api-key-security)

## Как снизить давление 429, не повышая лимит

- Разносите cron- и пакетные задачи случайными сдвигами, чтобы они не налетали на одну минуту.
- Ограничьте параллелизм воркеров и дайте очереди поглощать всплески.
- Сокращайте контекст, чтобы каждый запрос нёс меньше входных токенов.
- Ограничивайте max_tokens реально нужным объёмом ответа.
- Кешируйте большой стабильный контекст промпт-кешированием — это снижает тарифицируемую стоимость входа при повторах.

Большинство штормов 429 устроены самими пользователями: цикл повторов без джиттера, деплой, удвоивший число воркеров, плановая задача, разлетающаяся в :00. Сначала исправьте форму трафика, а уже потом ищите потолок повыше.

## Когда 429 становится разговором о мощностях

Если сглаженный трафик и корректные повторы всё равно дают регулярные 429 при вашей целевой нагрузке, это вопрос мощностей, а не кода. Обратитесь в поддержку, указав модель, целевые запросы и токены в минуту и характер нагрузки: устойчиво более высокая пропускная способность решается как разговор об аккаунте, а не самообслуживаемым ползунком.

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

### Какие лимиты запросов у Claude API?

При прямом доступе к Anthropic лимиты — запросы в минуту плюс входные и выходные токены в минуту на организацию; они растут по уровням использования с накоплением трат. apiToken.sale не публикует фиксированную таблицу RPM: 429 там отражает ёмкость шлюза или апстрима и обрабатывается через Retry-After и backoff.

### Как исправить ошибку 429 в Claude API?

Соблюдайте заголовок retry-after, когда он есть, иначе — экспоненциальный backoff с джиттером, и снижайте параллелизм. Если после этого 429 сохраняются при продакшен-нагрузке, обратитесь в поддержку насчёт устойчиво более высокой пропускной способности.

### Стоит ли ошибка 429 денег?

Запрос, отклонённый с 429, падает до генерации, поэтому не производит ни токенов, ни учитываемого расхода. Ваш предоплаченный баланс уменьшают только завершённые вызовы.

### Стриминг расходует больше моего лимита?

Нет. Стриминговый ответ — это один запрос, который мерится и тарифицируется так же, как обычный; стриминг меняет только то, когда вы видите токены.

### Можно ли задать лимит запросов в минуту на ключе apiToken.sale?

Нет. Пропускная способность запросов не настраивается на уровне ключа. Доступные в панели ограничения ключа — необязательный общий лимит расходов за всё время и дата истечения.

### Что такое заголовок Retry-After в Claude API?

Это число секунд, которое сервер предлагает подождать перед следующей попыткой. Считайте его минимумом; когда его нет, используйте экспоненциальный backoff с джиттером.

---
Get a key: https://apitoken.sale/register
More guides: https://apitoken.sale/ru/docs/learn
