Odds API — Documentation

Real-time sports odds • Cricket, Football, Tennis, Table Tennis • Diamond-compatible

1Base URL & Authentication


      

Har request me apni API key bhejein — query param ya header se:

?key=YOUR_API_KEY
# ya header:
X-API-Key: YOUR_API_KEY

Aapki key ke saath ek expiry date, IP whitelist aur rate limit hota hai. Requests sirf apni whitelisted IP se karein.

2Endpoints

GET/v1/allSportid
Saare available sports (id + naam).
GET/v1/esid?sid=<sportId>
Ek sport ke matches (in-play + upcoming). sid: 4=Cricket, 1=Football, 2=Tennis, 8=Table Tennis.
GET/v1/tree
Poora sports → series → matches tree.
GET/v1/getDetailsData?gmid=<matchId>&sid=<sportId>
Ek match ki details (teams, time, etc.).
GET/v1/getPriveteData?gmid=<matchId>&sid=<sportId>
Live odds — Match Odds + Bookmaker + Fancy. Near real-time (~500-800ms fresh).
GET/v1/score?gtv=<gtv>&sid=<sportId>
Live score graphic ka iframe URL (jahan available ho).
SSE/v1/stream?gmids=<g1,g2,..>&sid=<sportId>
Real-time push — ek hi connection kholiye, subscribed matches ke odds badalte hi push ho jate hain (baar-baar poll karne ki zaroorat nahi). 1 connection = 1 hit. Behtar for 10-50 matches ek saath.
const es = new EventSource("/v1/stream?gmids=123,456,789&sid=4&key=YOUR_API_KEY");
es.addEventListener("odds", e => {
  const { gmid, data } = JSON.parse(e.data);   // har match ka live update
  updateMatch(gmid, data);
});

3Live Video & Score iframe

Ye endpoints JSON nahi dete — ek ready HTML player dete hain. Inhe seedhe apni site me <iframe> me embed karein. (Base = domain root, /v1 nahi.)

GET/dtv/<gmid>
Live camera video (Diamond) — real matches: Tennis, Table Tennis, Football, Cricket. gmid wahi jo /v1/esid se milta hai. Sirf live match pe video aata hai.
GET/rwtv/<eventId>
Virtual match video + live tracker (rajwada) — virtual cricket ka rendered video aur real matches ka animated tracker.
GET/rwscore/<eventId>
Live score card (rajwada) — compact scoreboard (score, overs, run-rate).

Embed example (video):

<iframe src="/dtv/<gmid>?key=YOUR_API_KEY"
        style="width:100%;height:360px;border:0;border-radius:10px"
        allow="autoplay; fullscreen" allowfullscreen></iframe>

Note: video/tracker ready-to-show hai — client ka user seedhe iframe se dekhta hai, extra caching ki zaroorat nahi. Score card bhi iframe me lagega.

4Rate limits

Do hits ke beech min gap. Limit cross karne pe 429. Aapki key pe custom bhi ho sakti hai.

EndpointDefault min gapSuggested poll
getPriveteData (live odds)800 ms~1 / second
score1000 ms~1 / second
esid / getDetailsData30 sec1 / 30-60s
tree / allSportid60 sec1 / few min

5Response & error codes

{ "success": true, "msg": "Success", "status": 200, "data": ... }
CodeMeaning
401API key missing / invalid
403Key disabled, expired, ya IP whitelisted nahi
429Rate limit — bahut jaldi-jaldi hit
503Upstream temporarily unavailable