Nova Uptime
Гайдыapi-monitoringwebhook-monitoringtechnical

Uptime-мониторинг для API: мониторинг эндпоинтов и вебхуков

Как мониторить API-эндпоинты, вебхуки и backend-сервисы. Обнаружение сбоев API, деградации времени отклика и таймаутов.

SN
Sumit Nova Uptime
23 февраля 2026 г. · 5 min read
Share:

Почему мониторинг API — это другое#

Ваш сайт может быть «жив», а API сломан. Пользователь видит, что главная грузится, но функциональность приложения, на которой он держится, не работает.

Пример: страница оформления грузится (сайт жив ✅), но платёжный API падает (сайт сломан ❌). Клиенты не могут оформить покупку. Выручка останавливается.

Мониторинг API ловит такие невидимые сбои.

Что нужно мониторить

  • Платёжные шлюзы (Stripe, PayPal, Square)
  • Эндпоинты аутентификации (login/logout)
  • Data API (списки товаров, данные пользователей)
  • Webhooks (входящие данные от третьих сторон)
  • Эндпоинты поиска
  • API загрузки медиа

Коды HTTP в API#

API используют HTTP-коды иначе, чем сайты:

Сайт:

  • 200 OK: страница загружается
  • 500 Server Error: сайт сломан

API:

  • 200 OK: запрос успешен
  • 400 Bad Request: клиент прислал неверные данные
  • 401 Unauthorized: аутентификация не прошла
  • 403 Forbidden: нет прав
  • 404 Not Found: эндпоинт не существует
  • 429 Too Many Requests: rate limit
  • 500+ Server Error: бэкенд сломан

Ключевое отличие: API может вернуть 200 OK с ошибкой в JSON-теле.

Пример:

{
  "status": 200,
  "success": false,
  "error": "Payment processing failed"
}

HTTP говорит «OK», а API на деле сломан. Базовый uptime-мониторинг это упускает.

Настройка мониторинга API#

Шаг 1. Определите критичные эндпоинты#

Перечислите каждый критичный для бизнеса эндпоинт:

  • /api/auth/login (без него пользователи не входят)
  • /api/payments/create (без него нет оформления)
  • /api/users/profile (без него крашится приложение)
  • /webhooks/stripe (без него платежи не фиксируются)

Шаг 2. Решите, как валидировать ответ#

Для каждого эндпоинта решите, что значит «жив»:

Базово (HTTP-статус):

  • 200 или 201 = OK

Промежуточно (статус + время отклика):

  • 200 И ответ <1 секунды

Продвинуто (статус + содержимое тела):

  • 200 И тело содержит ожидаемые данные

Шаг 3. Настройте инструмент#

В Nova Uptime:

  1. Добавьте домен: https://api.yourdomain.com
  2. Каждый критичный эндпоинт — отдельным монитором:
    • /api/auth/login
    • /api/payments/create
    • и т. д.
  3. Настройте валидацию тела при наличии
  4. Пороги алертов (2 неуспешные проверки подряд)

Продвинуто: валидация тела ответа

Часть эндпоинтов требует конкретного формата ответа.

Пример: эндпоинт создания платежа

Ожидаемый ответ:

{
  "success": true,
  "payment_id": "pay_12345",
  "amount": 99.99
}

Настройка мониторинга:

  • Проверять, что в ответе есть "success": true
  • Если нет — эндпоинт «сломан», даже если HTTP 200

Email Health Checker от Nova Uptime валидирует тело ответа — тот же принцип применим к API-мониторингу.

Токены аутентификации в API-мониторинге#

Большинство API требуют аутентификации. Чтобы их мониторить:

Вариант 1: тестовый API-ключ

  • Сгенерируйте отдельный тестовый ключ для мониторинга
  • Используйте его во всех запросах мониторинга
  • Только read-доступ (нельзя менять данные)
  • Подключите ключ в инструменте мониторинга

Вариант 2: публичный эндпоинт

  • У некоторых API есть неаутентифицированные эндпоинты (health, status)
  • Мониторьте их
  • Пример: GET /api/health (публично, без авторизации)

Мониторинг вебхуков

Вебхуки сложнее. Они входящие (вы их получаете, а не шлёте).

Мониторьте эндпоинт-приёмник:

Пример: Stripe шлёт POST на https://yourdomain.com/webhooks/stripe

Как мониторить:

  1. Создайте тестовый отправитель вебхуков (триггерите вручную)
  2. Проверьте, что эндпоинт принимает и отвечает 200
  3. Проверьте логи, что вебхук был обработан

Или используйте синтетический мониторинг:

  • Поставьте синтетический POST на эндпоинт вебхука
  • Включите тестовый payload
  • Убедитесь, что принят и обработан

Мониторинг времени отклика

API — это не только up/down, это ещё и скорость.

Медленный API = сломанный API (с точки зрения пользователя).

Пороги времени отклика:

  • Эндпоинт аутентификации: <200 мс
  • Платёжный эндпоинт: <500 мс
  • Эндпоинт поиска: <1000 мс (сложнее)

Если эндпоинт отвечает 5 секунд, даже когда «работает», — пользователи получают таймауты и уходят.

Учёт rate limit#

API часто ограничивают частоту, чтобы избежать злоупотреблений.

Проблема: ваш мониторинг шлёт проверку каждую минуту. На 1 000 мониторов это 1 000 запросов в минуту. Если API ограничивает 100/мин, мониторинг блокируется.

Решение:

  • Отдельный API-ключ для мониторинга (с высоким лимитом)
  • Или реже проверки (раз в 5 минут вместо 1)
  • Или внутренний /health, не подпадающий под rate-limit

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

Ошибка 1. Мониторинг продакшена через разрушительные операции#

Не мониторьте:

POST /api/users/delete    ← удаляет пользователей при каждой проверке
POST /api/billing/charge  ← списывает деньги при каждой проверке

Мониторьте read-only:

GET /api/users/{id}
GET /api/health

Ошибка 2. Аутентификация в URL#

Не делайте:

GET /api/endpoint?auth_token=SECRET

Это утаскивает секреты в логи. Используйте заголовки:

Authorization: Bearer SECRET_TOKEN

Ошибка 3. Не тестировать эндпоинты вебхуков#

Вебхуки критичны, но часто не тестируются. Ваш обработчик может быть полностью сломан, а вы об этом не узнаете.

Решение: регулярно слать тестовые вебхуки и проверять, что обработка идёт.

Мониторинг зависимостей API#

Ваш API может зависеть от внешних сервисов:

  • БД (если она лежит — лежит и API)
  • Очередь сообщений (Redis, RabbitMQ)
  • Кэш (Memcached)
  • Внешние API (Stripe, Twilio)

Мониторьте их отдельно:

  • Health-эндпоинт БД
  • Эндпоинт состояния кэша
  • Страницу статуса стороннего API

Алерты на сбои API#

Когда мониторинг ловит сбой:

Алерт должен содержать:

  • Какой эндпоинт упал
  • Что за сбой (таймаут vs 500)
  • Когда начался
  • Недавние изменения (если есть)

Серьёзность:

  • Critical: платёжный/auth API (пользователи заблокированы)
  • High: search/data API (пользователи раздражены)
  • Medium: analytics/logging (ошибки видны пользователям)

Мониторинг API в Nova Uptime#

Nova Uptime мониторит uptime API наравне с uptime сайтов:

  1. Добавьте API-домен: https://api.yourdomain.com
  2. Настройте мониторинг эндпоинтов
  3. Получайте алерты по email/Slack
  4. Просматривайте историю инцидентов и время отклика
  5. Автоматические скриншоты сбоев (для отладки)

Плюс мониторинг email health — если ваш API шлёт транзакционные письма, Nova Uptime автоматически проверяет SPF/DKIM/DMARC на той же панели.

Итог

  1. Перечислите критичные эндпоинты
  2. Определите, что значит «жив» для каждого (статус, время отклика, тело)
  3. Поставьте мониторинг на каждый
  4. Задайте пороги времени отклика
  5. Мониторьте зависимости (БД, кэш, сторонние)
  6. Регулярно тестируйте вебхуки
  7. Алертите на сбои сразу

Запустите мониторинг своего API сегодня: API-мониторинг Nova Uptime. На одной панели — uptime + email health. 🚀

Monitor Your Website Before It Goes Down

Get uptime monitoring, SSL tracking, domain expiry alerts, and email health checks. Free plan — no credit card required.

Start Monitoring Free