Каталог ошибок
Каждая ошибка — это документ 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 запроса.
- База данных недоступна или сервис на обслуживании, либо запрос с
Idempotency-Keyвсё ещё выполнялся через 20 секунд и был отменён без каких-либо изменений. Повторите черезRetry-Afterсекунд; это же значение передаётся вretry_after_seconds(1 для отменённого запроса; повторите его с тем же ключом).