Последние раунды случайных выездов инспекторов
GET /v1/spot-checks
https://verify.tanba-ooh.kz/v1/spot-checks
Технический текст справочника написан на английском.
Новейшие 30 раундов, сначала самые свежие. Раунд это выборка конструкций, которые инспектор посетит в один рабочий день. Платформа тянет секрет раунда за день до него и публикует здесь только его хэш (commitment), который в тот же день попадает в публичный реестр. Через 7 дней секрет и выборка становятся публичными (GET /v1/spot-checks/{day}), и любой может пересчитать выборку сам. Выдается на хостах verify и app, кэшируется на 60 секунд.
Аутентификация
Не требуется. Вызов открытый.
Ответы
200 The rounds.
application/json
| Имя | Тип | Обязательный | Описание | Пример |
|---|---|---|---|---|
items | array of SpotRoundItem | да | Rounds, newest day first. | |
items[].day | string (date) | да | The Asia/Almaty working day of the round. | "2026-10-15" |
items[].commitment | string | да | Hex SHA-256 of the secret of the round. | "6f1ed002ab5595859014ebf0951522d9a1f6a7a9e8b6dbd2d4f1d43fb3ac4a43" |
items[].revealed | boolean | да | True once the secret and the sample are public. | false |
items[].reveal_after | string (date) | да | The first day on which the secret and the sample are public: seven days after the round. | "2026-10-22" |
items[].url | string | да | Where the full round is. | "/v1/spot-checks/2026-10-15" |
Пример
{
"items": [
{
"day": "2026-10-15",
"commitment": "6f1ed002ab5595859014ebf0951522d9a1f6a7a9e8b6dbd2d4f1d43fb3ac4a43",
"revealed": false,
"reveal_after": "2026-10-22",
"url": "/v1/spot-checks/2026-10-15"
}
]
}
Ошибки
Ошибки приходят документом problem (application/problem+json) со стабильным полем code.
| Статус | Значение |
|---|---|
| 429 | Превышен предел частоты; см. Retry-After. |
Примеры кода
curl
curl 'https://verify.tanba-ooh.kz/v1/spot-checks'
Python
import requests
response = requests.get(
"https://verify.tanba-ooh.kz/v1/spot-checks",
)
print(response.status_code, response.text)
Go
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://verify.tanba-ooh.kz/v1/spot-checks", nil)
if err != nil {
panic(err)
}
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
data, _ := io.ReadAll(resp.Body)
fmt.Println(resp.Status, string(data))
}