Model availability
/cabinet/api/public/model-statusA snapshot of model availability: the success rate per model and a per-day history. No key.
Responses
Response
{
"updated_at": "2026-09-10T08:12:03.481920+00:00",
"overall": "operational",
"groups": [
{
"key": "text",
"label": "Текстовые модели",
"models": [
{
"model": "gpt-5.6-sol",
"status": "ok",
"success_rate": 100.0,
"checked_at": "2026-09-10T08:11:44.204000",
"history": [{ "day": "2026-09-09", "rate": 98.0, "status": "ok" }]
}
]
}
]
}Details
No key needed: this endpoint answers without authentication.
The same snapshot the public status page draws. A background cycle computes it and the request only serves what is ready — from the in-process cache or from the stored snapshot; a recompute inside the request happens only when the snapshot is badly stale, i.e. the cycle has stopped. So the endpoint survives anonymous traffic and costs no model calls.
Fields: updated_at — when the snapshot was computed; overall — the gateway-wide summary (operational / degraded / down); groups — the groups (text, images, video), each with key, label (a ready-made caption) and models. Per model: model; status; success_rate — the share of successful requests as a percentage from 0 to 100, null when there was no data (the denominator counts only successes and model-side failures: a request refused on its own merits does not drag the model down); checked_at — the time of the last request (without an offset for text models, with one for media); history — one entry per day, each with day, rate (the same percentage) and status.
The window behind success_rate differs: a day for text, the whole history for media, because media requests are sparse and a 24-hour window would grey out a model that worked yesterday. Values of status: ok, degraded, down, unavailable (not a single request got through), no_data (no data for a text model) and awaiting (no confirmed traffic for a media model yet). Text models are pinged by the gateway itself; media models are not — they are too expensive, so their availability is counted from real client requests. Worth reading before reporting an error: no_data and awaiting mean "no data", not "broken".