Документація API
API доступне на тарифах з доступом до API. Створіть ключ у Налаштування > API. Документ OpenAPI 3.1: /api/v1/openapi.json.
Автентифікація
API-ключі типу Bearer. Ключ має публічний префікс і секрет, який показується один раз і зберігається лише як хеш. Ключі бувають «лише читання» або «читання й запис», їх можна відкликати, а також видно останнє використання.
Authorization: Bearer <key>Ліміти за тарифами
Ліміти діють на акаунт, а не лише на ключ. Перевищення повертає 429 із заголовками Retry-After та X-RateLimit-*.
| Тариф | Запитів / хв | Запитів / добу | API-ключів | Вебхуків / хв |
|---|---|---|---|---|
| pro | 45 | 9 000 | 2 | 35 |
| business | 75 | 27 000 | 5 | 75 |
| scale | 350 | 200 000 | 20 | 325 |
Ендпоінти
| Метод | Шлях | Доступ ключа | Що робить |
|---|---|---|---|
| GET | /api/v1/account | читання | Plan, limits and API quota of the account behind the key |
| GET | /api/v1/sites | читання | List sites (cursor pagination) |
| GET | /api/v1/sites/status | читання | The status of all sites in one call (cheap; supports ETag) |
| POST | /api/v1/sites | запис | Add a site (it must be verified before monitoring starts) |
| POST | /api/v1/sites/batch | запис | Add up to 20 sites at once; every item succeeds or fails on its own |
| GET | /api/v1/sites/{id} | читання | One site |
| DELETE | /api/v1/sites/{id} | запис | Delete a site and its history |
| POST | /api/v1/sites/{id}/pause | запис | Pause monitoring of a site |
| POST | /api/v1/sites/{id}/resume | запис | Resume monitoring of a paused site |
| POST | /api/v1/sites/{id}/verify | запис | Queue an ownership verification attempt |
| POST | /api/v1/sites/{id}/check | запис | Queue an immediate check |
| POST | /api/v1/sites/{id}/crawl | запис | Queue a full crawl (counts against the monthly crawl quota) |
| GET | /api/v1/sites/{id}/checks | читання | Check history of a site, newest first (cursor pagination) |
| GET | /api/v1/incidents | читання | Incidents, newest first (cursor pagination) |
| POST | /api/v1/incidents/{id}/acknowledge | запис | Acknowledge an open incident (stops escalation rules) |
| GET | /api/v1/feeds | читання | Product feeds |
| GET | /api/v1/servers | читання | Servers |
| GET | /api/v1/maintenance | читання | Planned maintenance windows |
| POST | /api/v1/maintenance | запис | Plan a maintenance window (no alerts during it) |
| DELETE | /api/v1/maintenance/{id} | запис | Cancel a maintenance window |
| GET | /api/v1/webhooks | читання | Webhook subscriptions |
| POST | /api/v1/webhooks | запис | Subscribe an HTTPS endpoint to events. The signing secret is returned once. |
| DELETE | /api/v1/webhooks/{id} | запис | Delete a webhook subscription |
| POST | /api/v1/webhooks/{id}/test | запис | Send a test event to one subscription |
| GET | /api/v1/webhooks/{id}/deliveries | читання | Recent deliveries of a subscription |
| POST | /api/v1/webhooks/deliveries/{id}/retry | запис | Retry a failed or abandoned delivery |
Вебхуки
Події: site.down, site.up, ssl.expiring, domain.expiring, feed.broken, page.broken, crawl.finished, maintenance.started, maintenance.ended, server.down, server.up. Кожна доставка містить id події, мітку часу й HMAC-SHA256-підпис, створений секретом вашої підписки. Повтори через 1 хв, 5 хв, 30 хв, 2 год і 12 год; після 3 днів невдач підписку вимикають. Приймаються лише https-адреси, редиректи не виконуються, а ваша кінцева точка має відповісти за 5 секунд.
Перевірка підпису
Ілюстративний псевдокод — остаточні назви заголовків опублікуємо разом з API.
expected = HMAC_SHA256(secret, timestamp + "." + rawBody)
reject if |now - timestamp| > 5 minutes
accept if constant_time_equals(expected, signature)