// real api demo
The CS2 odds API, real and in the open
This page calls https://api.esportsodds.gg the same way your own integration would — real Counter-Strike 2 match scores, stats, and our de-vigged market odds line, rendered straight from the public REST and WebSocket endpoints. No mock data. Our proprietary model line is coming soon, once it clears validation.
cs2 · match winner · market line
Connecting- FLY vs KaleidoLive0 : 02 books1.03FLY · 96.7%30.30Kaleido · 3.3%
- NEXVOID vs CWLive0 : 02 books1.80NEXVOID · 55.6%2.25CW · 44.4%
- DEPO vs LVGLive0 : 02 books1.53DEPO · 65.4%2.89LVG · 34.6%
- G2 vs ASTScheduled0 : 0—G2—AST
- PRV vs TYLOOScheduled0 : 0—PRV—TYLOO
Responsethe response's data array
cs2.matches.json
// the request the server above makes GET https://api.esportsodds.gg/v1/cs2/matches?status=live // apiKey is attached server-side — it never reaches the browser [ { "id": "01a062d4-178e-7848-bffd-f37c54a983b4", "game_id": "019f23d1-fb5b-7d24-935d-e4d68f6f565a", "tournament_id": "01a03008-60f2-759f-9545-d228109ab7ae", "team_a_id": "019f23d1-fb5c-7250-aa50-395431eb9b0a", "team_b_id": "019f2858-e256-7ca8-9cd9-872498a2924d", "format": "bo3", "status": "live", "stage": "Intel Extreme Masters Beijing 2026: Asian Qualifier Playoffs", "scheduled_at": "2026-09-03T06:10:00Z", "started_at": "2026-09-03T05:58:38.251318Z", "ended_at": null, "score_a": 0, "score_b": 0, "winner_team_id": null, "live_state": { "match_id": "01a062d4-178e-7848-bffd-f37c54a983b4", "map_number": 1, "map_name": "cache", "round_score_a": 10, "round_score_b": 5, "rounds_played": 16, "map_score_a": 0, "map_score_b": 0, "observed_at": "2026-09-03T06:45:02.346262Z" }, "created_at": "2026-09-02T15:54:48.933806Z", "updated_at": "2026-09-03T06:38:28.534903Z", "team_a_name": "FlyQuest", "team_a_short": "FLY", "team_b_name": "Kaleido", "team_b_short": null, "tournament_name": "Intel Extreme Masters Beijing 2026: Asian Qualifier", "tournament_tier": "B", "data_available": { "maps": false, "stats": false, "vetoes": false, "rounds": false, "depth": false, "odds": true } }, { "id": "01a062b4-297f-7a7f-aae5-55fc894f43d7", "game_id": "019f23d1-fb5b-7d24-935d-e4d68f6f565a", "tournament_id": "01a05441-550c-7aa9-8972-1f600b65f08c", "team_a_id": "019f2858-e256-769b-93b7-9c66d4b9d114", "team_b_id": "019f2858-e255-73a2-b911-f3ed07f3e920", "format": "bo3", "status": "live", "stage": "FISSURE Playground 3 Asia Closed Qualifier Playoffs", "scheduled_at": "2026-09-03T06:10:00Z", "started_at": "2026-09-03T05:58:38.251318Z", "ended_at": null, "score_a": 0, "score_b": 0, "winner_team_id": null, "live_state": { "match_id": "01a062b4-297f-7a7f-aae5-55fc894f43d7", "map_number": 1, "map_name": "de_nuke", "round_score_a": null, "round_score_b": null, "rounds_played": null, "map_score_a": null, "map_score_b": null, "observed_at": "2026-09-03T06:37:56.600247Z" }, "created_at": "2026-09-02T15:19:53.989746Z", "updated_at": "2026-09-03T06:38:28.534903Z", "team_a_name": "NEXVOID", "team_a_short": null, "team_b_name": "Chinggis Warriors", "team_b_short": "CW", "tournament_name": "FISSURE Playground 3 Asia Closed Qualifier", "tournament_tier": "C", "data_available": { "maps": false, "stats": false, "vetoes": false, "rounds": false, "depth": false, "odds": true } }, { "id": "01a06262-efe2-77e5-bcf1-02ce9d23b8b9", "game_id": "019f23d1-fb5b-7d24-935d-e4d68f6f565a", "tournament_id": "01a03008-60f2-759f-9545-d228109ab7ae", "team_a_id": "019f23d2-5a34-7047-aa82-46dc685bae93", "team_b_id": "019f23d2-5a33-7f01-87cb-120cccc7cf88", "format": "bo3", "status": "live", "stage": "Intel Extreme Masters Beijing 2026: Asian Qualifier Playoffs", "scheduled_at": "2026-09-03T06:00:00Z", "started_at": "2026-09-03T05:58:38.251318Z", "ended_at": null, "score_a": 0, "score_b": 0, "winner_team_id": null, "live_state": { "match_id": "01a06262-efe2-77e5-bcf1-02ce9d23b8b9", "map_number": 1, "map_name": "ancient", "round_score_a": 10, "round_score_b": 7, "rounds_played": 18, "map_score_a": 0, "map_score_b": 0, "observed_at": "2026-09-03T06:45:02.346262Z" }, "created_at": "2026-09-02T13:51:12.630926Z", "updated_at": "2026-09-03T06:38:28.534903Z", "team_a_name": "DEPO", "team_a_short": null, "team_b_name": "Lynn Vision", "team_b_short": "LVG", "tournament_name": "Intel Extreme Masters Beijing 2026: Asian Qualifier", "tournament_tier": "B", "data_available": { "maps": false, "stats": false, "vetoes": false, "rounds": false, "depth": false, "odds": true } }, { "id": "01a051b6-8969-7f84-8c0c-f417fb75d547", "game_id": "019f23d1-fb5b-7d24-935d-e4d68f6f565a", "tournament_id": "01a0427c-c839-7017-ad80-31e74e9e31e7", "team_a_id": "019f23d1-fb5c-7860-9324-a31e3bbd5c67", "team_b_id": "019f23d1-fb5c-7811-be30-254d41322053", "format": "bo3", "status": "scheduled", "stage": "FISSURE Playground 3 Group A", "scheduled_at": "2026-09-08T10:30:00Z", "started_at": null, "ended_at": null, "score_a": 0, "score_b": 0, "winner_team_id": null, "live_state": null, "created_at": "2026-08-30T08:09:18.029835Z", "updated_at": "2026-09-03T06:38:28.534903Z", "team_a_name": "G2", "team_a_short": "G2", "team_b_name": "Astralis", "team_b_short": "AST", "tournament_name": "FISSURE Playground 3", "tournament_tier": "S", "data_available": { "maps": false, "stats": false, "vetoes": false, "rounds": false, "depth": false, "odds": false } }, { "id": "01a051b6-8969-76d8-a9ee-4e1a530c5f94", "game_id": "019f23d1-fb5b-7d24-935d-e4d68f6f565a", "tournament_id": "01a0427c-c839-7017-ad80-31e74e9e31e7", "team_a_id": "019f23d1-fb5b-7ea3-b633-bea71926e9a4", "team_b_id": "019f23d2-5a33-7227-9c3f-d38f590d2c27", "format": "bo3", "status": "scheduled", "stage": "FISSURE Playground 3 Group B", "scheduled_at": "2026-09-08T10:30:00Z", "started_at": null, "ended_at": null, "score_a": 0, "score_b": 0, "winner_team_id": null, "live_state": null, "created_at": "2026-08-30T08:09:18.029835Z", "updated_at": "2026-09-03T06:38:28.534903Z", "team_a_name": "PARIVISION", "team_a_short": "PRV", "team_b_name": "TYLOO", "team_b_short": "TYLOO", "tournament_name": "FISSURE Playground 3", "tournament_tier": "S", "data_available": { "maps": false, "stats": false, "vetoes": false, "rounds": false, "depth": false, "odds": false } } ]
Odds shown are our de-vigged market line (decimal) — derived from multiple bookmakers and exchanges, never republished from any single book. Our proprietary model line is coming soon, once it clears validation.