Claude API и первый запрос по актуальной документации

Claude API и первый запрос по актуальной документации

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

Это документированный разбор одного минимального запроса к Claude API по текущей первичной документации Anthropic, а не пересказ старого туториала. Задача узкая: не встроить в проект устаревший endpoint или устаревший пример SDK. Ниже нет утверждения «запрос работает всегда» — есть список полей, которые нужно сверить с документацией, и честный список того, что осталось непроверенным.

Тезис простой и опровержимый: если поле или endpoint не подтверждены текущей первичной документацией, пример нельзя считать основой первого запроса. Разбор ниже держится строго в границах официального Anthropic API; отдельно, ближе к концу, разберём совместимый маршрут через provod.ai, актуальный для случаев, когда зарубежная карта и VPN — не то, чем разработчик готов заниматься до первого запроса.

Что такое Claude API и где путаница начинается раньше кода

Короткий ответ на вопрос, что такое claude api (или короче — api claude): это HTTP-интерфейс Anthropic, через который приложение отправляет модели список сообщений и получает ответ. Основная точка входа — Messages API. Согласно документации Claude Platform (platform.claude.com, доступ 2026-07-18), запрос идёт на POST требует заголовки x-api-key, anthropic-version и content-type: application/json, а в теле обязательны три поля: model, max_tokens и messages — массив объектов с role и content`.

Русскоязычные разработчики чаще ищут то же самое как клод апи или api клод. Формулировки клод api и апи claude приводят туда же, потому что кириллица не меняет протокол: заголовки и обязательные поля в документации те же, что и в англоязычной версии страницы.

Отдельная путаница возникает между api claude ai и claude ai api. Оба варианта звучат похоже, но обозначают разные вещи: чат на сайте claude.ai — готовый продукт для конечного пользователя, а разработческий контракт, о котором эта статья, живёт на домене api.anthropic.com. Даже если поисковая формулировка звучит как https claude api или сокращается до api claude com, канонический адрес один — ` и домена вида api.claude.com в документации нет.

Сама справочная площадка называется Claude Platform Docs, но в поиске её иногда обозначают в обратном порядке слов: claude api platform или claude platform api. Оба ведут на один и тот же platform.claude.com, если не потерять домен по дороге. По сути это anthropic claude api: единая документация Anthropic для всех клиентов, которые говорят на протоколе Messages API, и её текущая версия — единственный источник, которому в этом разборе можно доверять.

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

Минимальный запрос: три поля, у которых есть строка в документации

Документация Python SDK Anthropic (доступ 2026-07-18) приводит минимальный первый вызов в три шага: установка пакета, создание клиента и один вызов messages.create.

# pip install anthropic import os from anthropic import Anthropic client = Anthropic(api_key=os.environ.get("ANTHROPIC_API_KEY")) message = client.messages.create( model="claude-opus-4-8", max_tokens=1024, messages=[{"role": "user", "content": "Hello, Claude"}], ) print(message) print(message._request_id)

Поля model, max_tokens и messages — те самые три обязательных поля из контракта Messages API. Заголовок anthropic-version в коде не виден, потому что официальный SDK, согласно документации версионирования, проставляет его сам. Свойство _request_id документация Python SDK описывает как публичное: оно берётся из ответного заголовка request-id, и сохранять его стоит с первого запроса, потому что именно этот идентификатор отвечает на вопрос, какой конкретно вызов упал, если понадобится обращаться в поддержку.

Здесь нужна честность по жанру этого разбора. Установить пакет, записать номер установленной версии SDK и текст любой возникшей ошибки — это действие, которое выполняет читатель у себя, а не уже случившийся факт. Я не утверждаю, что запустил этот код и получил ответ; я утверждаю, что каждое его поле сверено с первичной документацией на 2026-07-18. Разница между «сверил контракт» и «показал результат прогона» и есть та граница, за которой начинается выдумка.

Claude API и первый запрос по актуальной документации

Почему версия протокола стабильна, а SDK обновляется каждую неделю

На уровне протокола эту связку иногда называют anthropic ai api или claude anthropic api, хотя официального продукта с таким названием нет: это тот же Messages API, просто другая формулировка запроса в поиске. Значение заголовка anthropic-version по документации версионирования сейчас стабильно и равно 2023-06-01; оно не менялось с тех пор, как заменило первоначальный релиз 2023-01-01. Политика Anthropic для фиксированной версии описана явно: в пределах одной версии существующие входные и выходные параметры сохраняются, добавляться могут только новые опциональные входы, выходные значения или новые варианты enum.

Сам протокол можно считать устойчивой опорой, а вот слой над ним — нет. По данным GitHub-релизов Anthropic (доступ 2026-07-18), Python SDK выходит примерно раз в неделю: v0.117.0 от 16 июля 2026 добавил поддержку «dreaming» и MCP-туннели, v0.116.0 вышел 2 июля, v0.115.1 — 1 июля, а v0.115.0 от 30 июня принёс стриминг для Managed Agents и другие agent-функции. SDK под разработчиком движется куда быстрее, чем протокол над проводом, и фраза «у коллеги работает» без указания номера версии — не воспроизведение, а совпадение.

Claude API и первый запрос по актуальной документации

Когда падает не ключ, а модель или параметр

Разберём по документации ошибок Anthropic (доступ 2026-07-18). Ответ об ошибке всегда JSON: верхнеуровневый объект error с полями type и message, плюс поле request_id. Среди документированных пар HTTP-статус и тип, разобранных в этой статье, — 400 invalid_request_error, 401 authentication_error, 403 permission_error, 404 not_found_error, 429 rate_limit_error, 500 api_error; это не исчерпывающий перечень кодов ошибок Anthropic API, а подмножество, значимое для минимального запроса из этого разбора. Полный список этих кодов иногда ищут как claude api docs; сама страница называется Errors и лежит в том же разделе платформенной документации, что и Messages API.

Python SDK, согласно документации, вместо сырого JSON поднимает типизированные исключения по коду: 400 — BadRequestError, 401 — AuthenticationError, 429 — RateLimitError, 500 и выше — InternalServerError. Это меняет технику отладки: разработчик ловит не строку, а класс, и у каждого объекта ответа есть _request_id. Разница между 401 и 400 здесь принципиальна: AuthenticationError — про ключ, BadRequestError — чаще про то, что в теле запроса, включая идентификатор модели и запрещённые параметры.

Согласно странице снятия моделей с поддержки (доступ 2026-07-18), claude-opus-4-20250514 и claude-sonnet-4-20250514 помечены как Retired с датой ретайра 15 июня 2026, а claude-opus-4-1-20250805 — как Deprecated с предварительной датой ретайра 5 августа 2026. Запросы к снятым моделям падают напрямую. Ключ при этом валиден, endpoint верен, а model="claude-opus-4-20250514" из прошлогоднего примера возвращает не понятную ошибку про устаревшую модель, а BadRequestError, который по тексту неотличим от опечатки в теле запроса.

Второй пример с той же страницы: параметры temperature, top_p и top_k помечены как Deprecated для Claude Opus 4.7 и новее, включая Opus 4.8, и для Claude Sonnet 5. Установка любого из них в недефолтное значение на этих моделях теперь возвращает 400. Поведение модельно-специфично, а не глобально: тот же temperature на другой ещё активной модели может быть допустим, и минимальный пример, собранный против одного семейства моделей, может молча оказаться неверным для другого.

Отдельно стоит Claude Mythos Preview (claude-mythos-preview): на странице снятия у него явное уведомление о ретайре 21 июля 2026, через три дня после даты моей сверки, 2026-07-18. Это буквальная иллюстрация тезиса: идентификатор модели может протухнуть внутри окна ревизии одной статьи. Тот, кто ищет доступ к модели программно, а не через чат, обычно формулирует это как claude через api, и именно на этом пути таблица снятия моделей особенно важна: она живая и меняется по расписанию Anthropic, а не разово.

  • Симптом: Неверный или отозванный ключ • Что видит SDK: AuthenticationError (401) • Первая гипотеза: Проблема аутентификации • Куда смотреть в документации: Заголовок x-api-key
  • Симптом: Модель в статусе Retired • Что видит SDK: BadRequestError (400) • Первая гипотеза: Устаревший идентификатор модели • Куда смотреть в документации: Таблица снятия моделей
  • Симптом: temperature на Opus 4.8 • Что видит SDK: BadRequestError (400) • Первая гипотеза: Запрещённый параметр для модели • Куда смотреть в документации: Список deprecated-параметров
  • Симптом: Пустой или битый messages • Что видит SDK: BadRequestError (400) • Первая гипотеза: Нарушен контракт тела • Куда смотреть в документации: Messages API, обязательные поля
  • Симптом: Превышен лимит • Что видит SDK: RateLimitError (429) • Первая гипотеза: Троттлинг, не ключ • Куда смотреть в документации: rate_limit_error
  • Симптом: Сбой на стороне API • Что видит SDK: InternalServerError (≥500) • Первая гипотеза: Ретрай, не правка кода • Куда смотреть в документации: api_error
Claude API и первый запрос по актуальной документации

Совместимый маршрут из России: та же форма вызова, другой владелец

Официальный контракт разобран. Теперь честная развилка для российского бэкендера: прямой доступ к Anthropic API требует зарубежной карты и часто VPN, и это отдельная инфраструктурная задача поверх кода, никак не связанная с полями запроса.

Решает именно эту задачу, не трогая форму вызова, совместимый маршрут. provod.ai (российский OpenRouter) агрегирует Claude, GPT, Gemini, DeepSeek и Qwen в одном чате и даёт единый API, совместимый с SDK OpenAI и Anthropic: подключение сводится к смене ключа и base_url. Для минимального примера из этого разбора это ровно одна правка:

from anthropic import Anthropic client = Anthropic( api_key="<ключ_provod>", base_url="https://api.provod.ai", )

Оплата идёт с одного рублёвого баланса: российская карта, СБП или счёт, без зарубежной карты и без VPN. Модели, по заявлению продукта, доступны без наценки provod.ai сверх официальной цены провайдера.

Границу стоит проговорить прямо, раз жанр это обязывает. Совместимый маршрут повторяет форму официального вызова, но это не Anthropic, и ни один источник в этом разборе не подтверждает, что каждое поле поддерживается сторонним оператором один в один: это нормативная граница, а не проверенный факт совместимости каждого параметра. provod.ai также не заменяет платформы автоматизации, приватную или on-prem инфраструктуру и эксклюзивные функции вендорских подписок; отдельно стоит уточнить, что это не GigaChat и не замена работы по внедрению. Контракт полей запроса разработчик по-прежнему сверяет с первичной документацией Anthropic, а не с постом об агрегаторе.

Один и тот же вопрос звучит по-разному, а контракт один

Часть путаницы в этой теме возникает не из-за документации, а из-за того, как по-разному разработчики формулируют один и тот же запрос в поиске. Опечатки вроде cloude ai api или claud ai api не меняют протокол, но могут привести на чужую страницу с чужим, устаревшим кэшем документации вместо текущей. Полный URL, который некоторые ищут как https claude ai api, тоже сбивает с толку: он звучит похоже на официальный, но ведёт не туда, потому что API живёт на домене api.anthropic.com, а не на claude.ai.

Независимо от формулировки запроса, результат должен быть один и тот же: страница текущей документации Anthropic, а не архивная копия или чужой пересказ. Разница между вариантами написания орфографическая, а разница между версиями документации, на которые они выводят, может быть содержательной, потому что именно там меняются идентификаторы моделей и статус параметров.

Claude API и первый запрос по актуальной документации

Чего этот разбор не решает

Разбор узкий сознательно, и его границы стоит назвать, чтобы не выдать проверку контракта за проверку всего.

Он не заменяет официальную документацию: это её сопровождение, а не замена. Он покрывает один нестриминговый запрос Messages API и точку входа Python SDK; поведение чата на claude.ai, не-Python SDK, схемы событий стриминга и конкретные числа лимитных тиров здесь не проверялись. Гипотеза, вокруг которой всё построено, что пофайловая сверка полей реально предотвращает отгрузку устаревшего endpoint или идентификатора модели, остаётся гипотезой: она выглядит обоснованной, но не доказана прогоном. Поведение будущих версий SDK неизвестно: раз релизы идут еженедельно, любое утверждение о завтрашнем контракте — прогноз, а не факт.

Главное ограничение по датам: всё в этом разборе сверено на 2026-07-18. Пример с claude-mythos-preview, у которого ретайр назначен на 21 июля 2026, показывает, что даже это окно короче срока жизни идентификатора модели. Любой сниппет и любой model нужно перепроверить по живым докам непосредственно перед деплоем, а не только в день чтения статьи.

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

Claude API что это простыми словами? HTTP-интерфейс Anthropic: запрос идёт на POST с обязательными полями model, max_tokens и messages`, ответ возвращает модель.

Почему ключ валиден, а запрос всё равно падает с 400? Потому что 400 — это BadRequestError, и он чаще про тело запроса, чем про ключ: снятая с поддержки модель или запрещённый параметр вроде temperature на Opus 4.8. Ключ отвечает за 401. Смотрите error.type и класс исключения, а не только код.

Нужно ли самому выставлять anthropic-version? При работе через официальный SDK нет: по документации он проставляет заголовок сам, текущее стабильное значение 2023-06-01. При ручных HTTP-запросах его нужно указывать явно.

Отличается ли claude api anthropic от совместимого маршрута? Форма вызова похожа, потому что совместимый маршрут использует тот же протокол. Но claude api anthropic и сторонняя точка входа — разные адреса и разные операторы: контракт полей всё равно нужно брать из первичной документации Anthropic, а не из документации агрегатора.

Зачем сохранять _request_id? Это публичное свойство ответа из заголовка request-id. При обращении в поддержку оно точно указывает на упавший вызов, поэтому логировать его стоит с первого запроса.

Решение

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

Claude API и первый запрос по актуальной документации

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

Источники

  • Claude Platform Docs, Messages API, доступ 2026-07-18: `
  • Claude Platform Docs, Errors, доступ 2026-07-18: `
  • Claude Platform Docs, Python SDK, доступ 2026-07-18: `
  • Claude Platform Docs, Versioning, доступ 2026-07-18: `
  • Claude Platform Docs, Model deprecations, доступ 2026-07-18: `
  • Anthropic Python SDK releases, GitHub, доступ 2026-07-18: `

provod.ai — единая AI-платформа для текста, кода и медиа

Не нужно оплачивать и поддерживать отдельный сервис для каждого формата: веб-интерфейс, API, мультимедийный редактор и командный баланс работают в одном контуре.

В одном каталоге — актуальные модели для текста и медиа: GPT от OpenAI, Claude от Anthropic, Gemini от Google, Grok от xAI, DeepSeek, Qwen, GLM, Kimi и MiniMax; для изображений — Nano Banana 2 Pro и GPT Image; для видео — последние версии Seedance, Kling, Veo и Google Omni. Также доступны модели для reasoning, поиска, документов, эмбеддингов, музыки и аудио.

И текстовые запросы, и медиагенерации тарифицируются без собственной наценки provod.ai: стоимость соответствует официальным ценам поставщиков 1:1.

Соберите свой мультимодальный сценарий: форма регистрации · цены на модели · защита данных по 152-ФЗ · API и интеграции