Статус систем для бухгалтеров — в вашем приложении
Бесплатно, без ключей и регистрации. Те же данные, что на странице статуса: живые проверки ИС ЭСФ, СНТ, НУЦ РК, КНП, eGov, 1С:Fresh, банков, ОФД и госсервисов, инциденты, обновления и история за 90 дней.
Условия
- Бесплатно и открыто. Можно использовать в коммерческих продуктах: 1С, CRM, боты, сайты, внутренние панели.
- Указывайте источник рядом с данными: «Данные: «BuhGPT Статус».
- Лимит — 120 запросов в минуту с одного IP. Данные обновляются раз в 1–5 минут, чаще раза в 30 секунд опрашивать не нужно.
- Это независимые автоматические проверки, а не официальный источник госорганов и банков. Гарантий доступности API нет.
Язык ответа
Все тексты (названия, статусы, советы, инциденты) отдаются на двух языках. Язык выбирается так: параметр lang=kk или lang=ru → если его нет, заголовок клиента Accept-Language → если нет и его, казахский. Язык ответа указан в поле lang и заголовке Content-Language.
curl -s "https://buhgpt.kz/status/api/pulse/v1/summary?lang=kk" curl -s "https://buhgpt.kz/status/api/pulse/v1/summary?lang=ru"
В каждом ответе — BuhGPT Статус
К любому ответу (включая ошибки) добавляется блок provider и заголовок X-Data-Provider. Показывая данные пользователю, выводите рядом текст provider.attribution. В тексте advice уже есть название BuhGPT Статус — не обрезайте его.
Быстрый старт
Работает ли ЭСФ прямо сейчас
curl -s "https://buhgpt.kz/status/api/pulse/v1/context?service=esf&lang=ru"
{
"service_id": "esf",
"service_name": "ИС ЭСФ",
"status": "OPERATIONAL",
"status_label": "Работает",
"is_problem_on_provider_side": false,
"measured_at": 1789400892,
"fresh": true,
"incident": null,
"announcements": [],
"advice": "По данным BuhGPT Статус, «ИС ЭСФ» сейчас работает. Причина ошибки, скорее всего, на стороне пользователя…",
"attribution": "Данные: BuhGPT Статус — buhgpt.kz/status",
"source_url": "https://buhgpt.kz/status/ru/esf/",
"provider": {
"name": "BuhGPT Статус",
"by": "BuhGPT",
"url": "https://buhgpt.kz/status/ru/",
"api_docs": "https://buhgpt.kz/status/ru/api.html",
"attribution": "Данные: BuhGPT Статус — buhgpt.kz/status",
"terms": "Бесплатно. Указывайте источник рядом с данными: «BuhGPT Статус» и ссылку на buhgpt.kz/status."
}
}
JavaScript
const r = await fetch("https://buhgpt.kz/status/api/pulse/v1/context?service=esf&lang=ru");
const s = await r.json();
if (s.is_problem_on_provider_side) {
showBanner(`${s.service_name}: ${s.status_label}. ${s.advice}`, s.provider.attribution);
}
1С (встроенный язык)
Соединение = Новый HTTPСоединение("buhgpt.kz", 443, , , , 10, Новый ЗащищенноеСоединениеOpenSSL);
Запрос = Новый HTTPЗапрос("/status/api/pulse/v1/context?service=esf&lang=ru");
Ответ = Соединение.Получить(Запрос);
Чтение = Новый ЧтениеJSON;
Чтение.УстановитьСтроку(Ответ.ПолучитьТелоКакСтроку("UTF-8"));
Статус = ПрочитатьJSON(Чтение);
Если Статус.is_problem_on_provider_side Тогда
Сообщить(Статус.service_name + ": " + Статус.status_label + ". " + Статус.advice + " " + Статус.attribution);
КонецЕсли;
Python
import requests
s = requests.get("https://buhgpt.kz/status/api/pulse/v1/summary", params={"lang": "ru"}, timeout=10).json()
problems = [x for g in s["groups"] for x in g["services"] if x["status"] not in ("OPERATIONAL", "UNKNOWN")]
Методы
GET /api/pulse/v1/context?service={id}Короткий ответ по одной системе: статус, свежесть данных, текущий инцидент, объявленные работы и готовый совет для пользователя. Лучший вариант для 1С, ботов и чатов.
GET /api/pulse/v1/summaryВсе системы по группам: статус, время проверки, сообщения пользователей за час, последний сбой и его длительность, активные обновления, текущие инциденты, запланированные работы.
GET /api/pulse/v1/services/{id}Подробно по системе: доступность за сутки, 7, 30 и 90 дней, простой, инциденты, обновления, время ответа за сутки, сообщения пользователей за 2 часа (по 10 минут).
GET /api/pulse/v1/uptime?days=90История по дням для каждой системы: итоговый статус дня, доступность в процентах, минуты сбоев и работ.
GET /api/pulse/v1/incidents?days=14Инциденты с хронологией: обнаружено → подтверждено → наблюдаем → решено, длительность.
GET /api/pulse/v1/incidents/{id}Один инцидент — те же данные, что в «Справке о фиксации инцидента».
GET /api/pulse/v1/announcements?days=90Обновления, технические работы и объявления операторов: официальные новости и автоматически обнаруженные новые версии.
GET /api/pulse/v1/checksЧто проверяется по каждой системе и как часто.
Базовый адрес: https://buhgpt.kz/status. Все ответы — JSON в UTF-8, время — Unix-секунды (UTC), CORS открыт для любых сайтов.
Статусы
OPERATIONAL — работаетDEGRADED — задержки или нестабильностьPARTIAL_OUTAGE — часть функций недоступнаMAJOR_OUTAGE — сбойMAINTENANCE — объявленные технические работыUNKNOWN — нет свежих данных (не считайте это сбоем)