Autentifikacija

Svi zahtevi ka /api/v1/* zahtevaju Bearer token u Authorization header-u. Token dobijaš od nas ručno; validan je dok ne istekne ili dok ga ne revokujemo.

Header format

http
GET /api/v1/competitions HTTP/1.1
Host: stats-api.ds2.app
Authorization: Bearer 14|PdsNjlFjl9MwSEuXhXs1xdgXRFwHQ4mQKgRjNsfH4b750a06
Accept: application/json

Rate limit

Po default-u, rate limit je određen tvojim planom. Kastom ograničenje može biti podešeno po zahtevu.

PlanZahteva/minWebSocket
Free60
Starter600
Pro3000
Enterprise10000 (ili custom)

Svaki odgovor ima headere:

http
X-RateLimit-Limit: 3000
X-RateLimit-Remaining: 2847

Kad prekoračiš limit

Server vraća 429 Too Many Requests:

http
HTTP/1.1 429 Too Many Requests
Retry-After: 42
Content-Type: application/json

{
  "message": "Rate limit exceeded",
  "limit_per_minute": 3000,
  "retry_after_seconds": 42
}

Pauziraj Retry-After sekundi pre sledećeg zahteva.

Greške

KodZnačenjeAkcija
401Nema ili nevalidan tokenProveri Authorization header
402Nalog suspendovan / istekaoJavi se nama
403Takmičenje van tvoje pretplateProširi pretplatu
404Resurs ne postojiProveri ID
422Nevalidan parametarVidi response body
429Rate limitPauziraj i retry

Tokeni i sigurnost

  • Čuvaj token kao lozinku — nikad u git, JS bundle, ili javni kod.
  • Koristi ga isključivo sa server strane (ne expose-uj na frontend).
  • Za browser aplikacije, pravite proxy endpoint na vašem serveru koji dodaje token.
  • Ako sumnjaš da je iscureo — odmah nam javi, revokujemo u roku od nekoliko minuta.
  • Možeš imati više tokena po nalogu (npr. staging / production razdvojeno).