Каталог ошибок

Каждая ошибка — это документ problem details по RFC 9457, у которого type указывает на запись на этой странице, а code совпадает с названием записи. instance содержит id запроса; укажите его в обращении в поддержку.

400 invalid_request
Запрос составлен неверно: неизвестный query-параметр, нечитаемое тело, параметр, который эндпоинт не принимает, или некорректный Idempotency-Key. Исправьте запрос; не повторяйте его в том же виде.
400 invalid_cursor
cursor некорректен, старше 24 часов или был выдан для других фильтров; since_cursor ленты совпадений истекает, только когда он старше 30-дневного срока хранения совпадений. Начните листинг заново с первой страницы (для ленты — без курсора).
401 unauthenticated
Эндпоинту нужен ключ, а он не был передан. Устанавливается WWW-Authenticate: Bearer realm="api.tuneping.com".
401 invalid_api_key
Ключ имеет неверный формат или неизвестен. Проверьте, не обрезан ли он и есть ли префикс tp_live_ / tp_test_.
401 key_revoked
Ключ был перевыпущен или отозван; revoked_at сообщает когда. Используйте текущий ключ.
401 token_invalid
Токены доступа (партнёрские приложения): токен некорректен или его подпись неизвестна.
401 token_expired
Токены доступа: срок действия токена истёк сверх допустимого расхождения часов. Обновите его один раз.
401 token_audience
Токены доступа: аудитория или издатель токена — не этот API.
403 forbidden_tier
Эндпоинту или значению параметра нужен более высокий тариф, например from истории старше глубины вашего тарифа или больше id в пакете, чем позволяет тариф. required_tier называет тариф, upgrade_url ведёт на цены.
403 forbidden_scope
Ключ существует, но выпущен без области доступа, которая нужна для этой операции (wishlists или webhooks; списку желаний с доставкой webhook нужна также webhooks, это проверяется до тарифа); required_scope называет её, а WWW-Authenticate содержит error="insufficient_scope". Используйте ключ с этой областью доступа; ключи получают все области доступа, если только при выпуске им не был задан более узкий список, например только чтение, а GET /v1/me показывает области доступа ключа.
403 entitlement_revoked
Токен доступа проходит проверку, но его лицензия отозвана. Срок доступа закончился; обновление токена не поможет.
403 livemode_mismatch
Ключ tp_test_ использован для операции, доступной только в боевом режиме, например для эндпоинта вебхука вне тестовых хостов (webhook.site).
404 not_found
Такой станции, трека, исполнителя или ресурса нет, или для станции ещё не наблюдалось ни одного живого названия.
404 station_opted_out
Станция есть в каталоге, но попросила не индексировать её. Tuneping не сообщает почему. Считайте её недоступной навсегда.
406 not_acceptable
В заголовке Accept нет ни одного из поддерживаемых типов данных. Тело всё равно приходит как application/problem+json.
409 conflict
Дублирующийся ресурс, например второй эндпоинт вебхука с тем же URL.
409 idempotency_in_progress
Запрос с тем же Idempotency-Key ещё выполняется. Повторите через Retry-After секунд, чтобы получить его ответ.
410 endpoint_sunset
Эндпоинт выведен из эксплуатации после объявленной даты Sunset; заголовок Link указывает на запись в журнале изменений.
413 payload_too_large
Тела запросов ограничены 64 KiB; PUT /v1/wishlists принимает до 1 MiB.
422 validation_failed
Один или несколько параметров имеют недопустимые значения. errors[] перечисляет для каждого field, code и понятное человеку сообщение message.
422 idempotency_key_reused
Idempotency-Key уже использовался за последние 24 часа для другого запроса (метод, путь, query или тело). Для нового запроса отправляйте новый ключ.
429 rate_limited
Посекундная корзина токенов пуста. Подождите Retry-After секунд; заголовок RateLimit называет исчерпанную политику.
429 too_many_connections
У ключа уже открыто столько потоков событий, сколько позволяет его тариф (Developer — 1, Pro — 5, Business — 20, Tapelark — 1 на устройство). Сначала закройте один.
429 quota_exceeded
Суточная или месячная квота исчерпана. Retry-After и quota_resets_at сообщают, когда она сбросится; upgrade_url ведёт на цены.
500 internal_error
Что-то сломалось на нашей стороне. Повторите с увеличивающейся задержкой и, если ошибка не проходит, пришлите нам id запроса.
503 unavailable
База данных недоступна или сервис на обслуживании, либо запрос с Idempotency-Key всё ещё выполнялся через 20 секунд и был отменён без каких-либо изменений. Повторите через Retry-After секунд; это же значение передаётся в retry_after_seconds (1 для отменённого запроса; повторите его с тем же ключом).

Назад к справочнику API