TAŇBA-OOH Әзірлеушілерге

Evidence pack of a structure and a period

GET /api/v1/stats/evidence.zip

https://app.tanba-ooh.kz/api/v1/stats/evidence.zip

Анықтамалықтың техникалық мәтіні ағылшын тілінде жазылған.

Scope read:stats. Own organisation; the authority sees all. The batches that added plays to the structure in the days asked for, with their keys and daily seals, without bill lines. At most 31 days. Same pack format, rules and audit as the evidence pack of a bill line.

Аутентификация

Authorization тақырыбындағы API кілті немесе консоль сеансы.

Рұқсат: read:stats

Параметрлер

АтауыОрныТүріМіндеттіСипаттамаМысал
structureсұрауstringиәCode of the structure.S-001
fromсұрауstring (date)иәFirst day, Almaty calendar.2026-10-01
toсұрауstring (date)иәLast day, Almaty calendar, at most 30 days after from.2026-10-31
formatсұрауstringжоқSet to zip to download the pack instead of reading its summary. zipzip

Жауаптар

200 The summary, or the pack as a zip file.

application/json

EvidenceSummary

АтауыТүріМіндеттіСипаттамаМысал
kindstringиәWhat the pack is about. accrual, statement, window, dispute
keystringиәStable name of the subject; a new version of a pack keeps it."accrual:4711"
stored_versioninteger | nullиәVersion of the stored pack with exactly this content, or null when the next download will create it.1
stored_pack_idstring | null (uuid)иәIdentifier of that stored pack, or null."7d1f0e5a-2b9c-4c63-8a4d-5e0f6b3c9a12"
batchesintegerиәTelemetry batches in the pack.2
playsinteger (int64)иәPlays those batches added in the hours the pack covers.9
sealsintegerиәDaily seals in the pack.1
batches_sealedintegerиәBatches whose receive day is sealed.2
linesarray of objectиәThe bill lines the pack explains; empty for a structure period.
lines[].accrual_idinteger (int64)иәIdentifier of the bill line.4711
lines[].source_refstringиәStructure and hours of the line."S-001 2026-10-05T10..2026-10-20T11"
lines[].structurestringиәStructure code."S-001"
lines[].playsinteger (int64)иәPlays billed on the line.3739
lines[].unitsstringиәBilling units with three decimals."3739.000"
lines[].amount_kztstringиәLine amount in tenge, without VAT."1869.50"
lines[].trueupbooleanиәTrue for a line that bills late plays of an earlier month; it is not recomputed from its own hours.false
lines[].partialstringиәWhy the batches behind the line cannot all be recounted; empty when they can.""
partialarray of stringиәWhat cannot be fully recounted, in words; empty for a complete pack.[]
manifest_sha256stringиәSHA-256 of the manifest in hex."9f2c1b7a4e6d8053a1c2b3d4e5f60718293a4b5c6d7e8f90a1b2c3d4e5f60718"
downloadstringиәAddress that downloads the pack."/api/v1/billing/accruals/4711/evidence?format=zip"
count_rulestringиәVersion of the counting rule the pack was made with."tanba.count/1"

Мысал

{
  "kind": "accrual",
  "key": "accrual:4711",
  "stored_version": 1,
  "stored_pack_id": "7d1f0e5a-2b9c-4c63-8a4d-5e0f6b3c9a12",
  "batches": 2,
  "plays": 9,
  "seals": 1,
  "batches_sealed": 2,
  "lines": [
    {
      "accrual_id": 4711,
      "source_ref": "S-001 2026-10-05T10..2026-10-20T11",
      "structure": "S-001",
      "plays": 3739,
      "units": "3739.000",
      "amount_kzt": "1869.50",
      "trueup": false,
      "partial": ""
    }
  ],
  "partial": [],
  "manifest_sha256": "9f2c1b7a4e6d8053a1c2b3d4e5f60718293a4b5c6d7e8f90a1b2c3d4e5f60718",
  "download": "/api/v1/billing/accruals/4711/evidence?format=zip",
  "count_rule": "tanba.count/1"
}

application/zip

Қателер

Қателер problem құжаты (application/problem+json) түрінде, тұрақты code өрісімен келеді.

МәртебесіМағынасы
401No valid session or API key (unauthenticated, session_expired, invalid_api_key).
403The role or the key's scope does not allow this (forbidden, key_scope_denied, key_route_denied).
404Nothing there, or not visible to the caller.
422Field errors (validation_failed).
503The signing service is not available.
defaultAn error as a problem document.

Код мысалдары

curl

curl 'https://app.tanba-ooh.kz/api/v1/stats/evidence.zip?structure=S-001&from=2026-10-01&to=2026-10-31' \
  -H 'Authorization: Bearer YOUR_API_KEY'
Python
import requests

response = requests.get(
    "https://app.tanba-ooh.kz/api/v1/stats/evidence.zip?structure=S-001&from=2026-10-01&to=2026-10-31",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
    },
)
print(response.status_code, response.text)
Go
package main

import (
	"fmt"
	"io"
	"net/http"
)

func main() {
	req, err := http.NewRequest("GET", "https://app.tanba-ooh.kz/api/v1/stats/evidence.zip?structure=S-001&from=2026-10-01&to=2026-10-31", nil)
	if err != nil {
		panic(err)
	}
	req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
	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))
}