Руководства
Как обрабатывать ошибки API Kratk
401/403/429/4xx/5xx: ретраи с backoff, логирование без секрета, ротация ключа при 401.
Скрипт падает на проде
Массовый импорт ссылок останавливается на 429; в логах светится Bearer; при 401 скрипт крутится бесконечно.
Классификация ошибок
Обрабатывайте коды явно: auth → ключ; 429 → backoff; validation → skip row; 5xx → limited retry. Точные коды и тела — из ответов API и справки.
Пошаговая инструкция
- Логируйте status, request id (если есть), slug/url — не Authorization.
- 401/403: остановка, алерт, проверка ключа.
- 429: exponential backoff, уважайте лимит ключа из UI.
- 422/400: валидация входа (url, domain).
- 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 можно создать ссылку и смотреть переходы в аналитике. Статья полезна и без регистрации.