API доступен на тарифе «Команда». Через него можно создавать проверки, ставить их на паузу и менять статус компонентов статус-страницы, например из CI или скрипта деплоя.
Адрес API — https://steadrun.ru/api/v1. Ответы приходят в JSON, время в них указано в UTC в формате ISO 8601.
Ключ доступа
Ключ создаётся в профиле, в блоке «API-ключи». Полностью он показывается один раз, при создании, у нас хранится только его хэш. Ключей может быть несколько, например отдельный для каждой CI-системы. Любой ключ можно отозвать.
Ключ передаётся в заголовке Authorization:
curl https://steadrun.ru/api/v1/status-pages \
-H "Authorization: Bearer ВАШ_КЛЮЧ" \
-H "Accept: application/json"
Лимит — 60 запросов в минуту на аккаунт.
Ошибки
| Код | Когда |
|---|---|
| 401 | Ключ не передан, неверен или отозван |
| 403 | Тариф без API, чужой объект или достигнут лимит проверок тарифа |
| 404 | Объект не найден |
| 422 | Ошибка в данных запроса, подробности в поле errors |
| 429 | Превышен лимит запросов. Повторите через время из заголовка Retry-After |
Проверки
GET /checks возвращает все проверки, GET /checks/{id} — одну:
{
"data": {
"id": 5, "name": "Бэкап БД", "type": "cron", "status": "up",
"cron_expression": "0 3 * * *", "interval_seconds": null,
"timezone": "Europe/Moscow", "grace_period_seconds": 600,
"ping_url": "https://steadrun.ru/ping/…",
"http": null, "ssl": null,
"last_ping_at": "2026-09-29T00:00:12+00:00",
"next_expected_at": "2026-09-30T00:10:00+00:00",
"created_at": "2026-09-20T10:00:00+00:00"
}
}
Поле status принимает значения new (сигнала ещё не было), up, down и paused. Поля ping_url и
grace_period_seconds есть только у типов cron и queue.
Создать проверку
POST /checks создаёт проверку и возвращает её с кодом 201. Какие поля нужны:
- для всех типов:
name,type(cron,queue,http,ssl),timezone(например,Europe/Moscow); cron:cron_expression,grace_period_seconds;queue:interval_value,interval_unit(seconds,minutes,hours,days),grace_period_seconds;http:url,expected_status_code,keyword(необязательно),failure_threshold(1–10),interval_valueиinterval_unit(не чаще раза в минуту);ssl:domain,alert_days_before_expiry(1–90),failure_threshold,interval_valueиinterval_unit(не чаще раза в час).
Что значат эти поля, подробно описано на странице о типах проверок.
curl -X POST https://steadrun.ru/api/v1/checks \
-H "Authorization: Bearer ВАШ_КЛЮЧ" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name":"Бэкап БД","type":"cron","cron_expression":"0 3 * * *","timezone":"Europe/Moscow","grace_period_seconds":600}'
Пауза
POST /checks/{id}/pause ставит проверку на паузу, POST /checks/{id}/resume возобновляет. В ответе
проверка с новым статусом.
На паузе алертов и напоминаний нет. Если пришёл пинг, пауза снимается сама. Возобновить проверку можно,
только если в лимите тарифа есть место, иначе ответ будет 403. После возобновления статус
становится new, и Steadrun ждёт сигнал заново с этого момента. Подробнее о паузе написано на странице
«Как это работает».
Паузу удобно ставить из скрипта деплоя перед php artisan down и снимать после up:
curl -X POST https://steadrun.ru/api/v1/checks/5/pause \
-H "Authorization: Bearer ВАШ_КЛЮЧ" \
-H "Accept: application/json"
Статус-страницы и компоненты
GET /status-pages возвращает Ваши статус-страницы вместе с компонентами. Отсюда берутся id компонентов:
{
"data": [{
"id": 1, "title": "Мой сервис", "slug": "my-service", "is_public": true,
"url": "https://steadrun.ru/status/my-service",
"components": [{ "id": 3, "name": "API", "status": "operational", "check_id": 5 }]
}]
}
PATCH /components/{id} меняет статус компонента. Допустимые значения: operational, degraded,
partial_outage, major_outage, maintenance.
curl -X PATCH https://steadrun.ru/api/v1/components/3 \
-H "Authorization: Bearer ВАШ_КЛЮЧ" \
-H "Accept: application/json" \
-d status=major_outage
Меняется только статус компонента на публичной странице. Инцидент при этом не создаётся, и подписчики
уведомлений не получают. Инцидент с описанием публикуется в кабинете. Если компонент привязан к проверке,
его статус по-прежнему меняет и мониторинг. При падении проверки будет major_outage, при восстановлении
operational.
Что дальше
- Статус-страницы: компоненты, инциденты и подписчики.
- Как это работает: статусы проверок и пауза.