Руководства

Как обрабатывать ошибки API Kratk

401/403/429/4xx/5xx: ретраи с backoff, логирование без секрета, ротация ключа при 401.

Скрипт падает на проде

Массовый импорт ссылок останавливается на 429; в логах светится Bearer; при 401 скрипт крутится бесконечно.

Классификация ошибок

Обрабатывайте коды явно: auth → ключ; 429 → backoff; validation → skip row; 5xx → limited retry. Точные коды и тела — из ответов API и справки.

Пошаговая инструкция

  1. Логируйте status, request id (если есть), slug/url — не Authorization.
  2. 401/403: остановка, алерт, проверка ключа.
  3. 429: exponential backoff, уважайте лимит ключа из UI.
  4. 422/400: валидация входа (url, domain).
  5. 5xx: 3 retry с jitter, потом dead letter queue.

Практический пример

Import 500 URLs: 480 ok, 15 validation error logged to csv, 5×429 with 2s backoff, 0 key leak.

Типичные ошибки

  • Retry 401 — бессмысленно до смены ключа.
  • Infinite retry on 429 — бан по лимитам.
  • Печать full curl с ключом в Sentry.
  • Игнор partial success в batch loop.

FAQ

Есть ли idempotency key?

Проверьте актуальную документацию кабинета; если нет — dedupe по slug на своей стороне.

Куда писать при непонятном 4xx?

Support + приложите request body без ключа.

Вывод

Надёжная интеграция = typed errors + backoff + секреты вне логов. Справка — /docs/api.

Нужна короткая ссылка?

В Kratk можно создать ссылку и смотреть переходы в аналитике. Статья полезна и без регистрации.

Все руководства