Toată documentația
Toate ghidurile

Aplicații

API public (fără autentificare)

Cele patru endpoint-uri GET pe care le citește chiar site-ul și care nu cer cont: setări, statistici, starea serviciilor și catalogul de jocuri.

Site-ul public își ia datele de la aceste endpoint-uri, deci le poți citi și tu. Toate sunt GET, răspund JSON și nu cer token. Adresa de bază este https://api.dominosland.com.

Structura câmpurilor poate evolua odată cu site-ul. Folosește doar câmpurile de care ai nevoie și tratează orice câmp lipsă ca „necunoscut”, nu ca zero.

bash
curl https://api.dominosland.com/api/site/stats

GET /api/site/stats

Statistici publice pentru site-uri și launcher. Răspunsul este ținut în cache 30 de secunde pe server, iar numerele de membri Discord se reîmprospătează la 5 minute.

  • generatedAt: momentul calculării.
  • servers: total, online, players, slots, byGame (pe tip de joc: servers, online, players) și list (doar serverele online cu adresă IP publică, cel mult 100, cu id, name, gameType, address, players, maxPlayers, map).
  • games.supported: numărul de jocuri din catalog (fără „other”).
  • plans: active (numărul de planuri) și currency.
  • creators.live și partners: numere.
  • discord: members și online, citite din invitația publică, sau null dacă nu e setată sau nu răspunde.
  • jarvis: online, localConnected și providers (id, keys, available).

GET /api/site/settings

Tema, planurile, partenerii și linkurile comunității, citite de site, launcher și aplicația mobilă.

  • theme și media_player (quality_options, subtitles, watch_to_earn cu enabled, credits_per_block, block_minutes).
  • live_creators: listă cu id, name, platform.
  • billing: currency, providers, plans, coinRedeem și limitLabels (planurile cu prețurile lor curente).
  • partners și community (brand_name, tagline, discord_invite_url, bot_invite_url, socials).
  • generatedAt.

GET /api/partners/public

Lista partenerilor aprobați și vizibili, cea afișată pe pagina de parteneri. Fără date personale ale solicitanților.

  • partners: un obiect pe partener, cu id, name, game, gameLabel, address, website, discordInvite, description, playerCount, logoUrl și accentColor (null unde nu se știe).
  • games: jocurile din catalog (id, label) pe care le poate alege un solicitant.
  • generatedAt.

GET /api/hub/status

Starea serviciilor, cea folosită de /status și /ecosystem (vezi ghidul „Starea serviciilor”).

  • status: „online”, „degraded” sau „down”.
  • checkedAt și latencyMs (cât a durat verificarea).
  • components: listă cu id, name, group, state („online”, „degraded”, „down” sau „unknown”), detail, checkedAt și, uneori, latencyMs.
  • Alte câmpuri tehnice, precum vps.uptimeSec, folosit de pagina /status.

GET /api/games/catalog

Catalogul de jocuri pe care GamePanel știe să le instaleze.

  • service, brand, count (numărul de jocuri) și generatedAt.
  • games: un obiect pe joc, între altele cu gameType, label, installMethod, ports (game, query, rcon) și linkuri către pagina jocului.

Limitări

  • API-ul are limitare de cereri. Valorile implicite din cod sunt 60 de cereri la 10 secunde și 300 la 60 de secunde (per utilizator autentificat, altfel per IP); echipa le poate schimba. Peste limită primești 429 (Too Many Requests).
  • Din browser, cererile cross-origin sunt acceptate doar de pe domeniul dominosland.com și subdomeniile lui (CORS). Din scripturi pe server sau din curl nu există această restricție.
  • Restul endpoint-urilor cer autentificare și nu sunt documentate aici.