Latest daily seals of the received play statistics
GET /v1/stats-seals
https://verify.tanba-ooh.kz/v1/stats-seals
Анықтамалықтың техникалық мәтіні ағылшын тілінде жазылған.
The newest 30 seals, newest first. Every Almaty day, shortly after midnight, the platform seals the statistics batches it received the day before in one Merkle root, signs the root with its status key, and records the seal in the public ledger on the day it was made. Only counts and the root are public. Served on the verify and app hosts, cached for 60 seconds.
Аутентификация
Қажет емес. Шақыру ашық.
Жауаптар
200 The seals.
application/json
| Атауы | Түрі | Міндетті | Сипаттама | Мысал |
|---|---|---|---|---|
items | array of StatsSealItem | иә | Seals, newest day first. | |
items[].day | string (date) | иә | The sealed Asia/Almaty receive day. | "2026-10-13" |
items[].batch_count | integer | иә | Number of accepted statistics batches received on the day. | 4812 |
items[].record_count | integer | иә | Number of play records in those batches. | 96240 |
items[].root | string | иә | Hex Merkle root over the batches; SHA-256 of the empty string when the day has none. | "0f59838f53129a98e19ac704aa86cde6d83fc6cce9c56106370a60cbd6341fa3" |
items[].url | string | иә | Where the full seal is. | "/v1/stats-seals/2026-10-13" |
Мысал
{
"items": [
{
"day": "2026-10-13",
"batch_count": 4812,
"record_count": 96240,
"root": "0f59838f53129a98e19ac704aa86cde6d83fc6cce9c56106370a60cbd6341fa3",
"url": "/v1/stats-seals/2026-10-13"
}
]
}
Қателер
Қателер problem құжаты (application/problem+json) түрінде, тұрақты code өрісімен келеді.
| Мәртебесі | Мағынасы |
|---|---|
| 429 | Rate limit; see Retry-After. |
Код мысалдары
curl
curl 'https://verify.tanba-ooh.kz/v1/stats-seals'
Python
import requests
response = requests.get(
"https://verify.tanba-ooh.kz/v1/stats-seals",
)
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/stats-seals", 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))
}