- Home
- API Playground
API Playground
Test HZURA's Sports Data API and Casino API. Browse sports, events and odds, or run the casino flow end to end: list games, launch one, fund the player and watch every bet, win and refund move between the game, HZURA and your wallet.
/api/v1/health
Integration Code
Casino API Playground
Sandbox: everything runs in your browser. Real games, pretend money.
Switching the wallet type starts the sandbox over.
Step 1
Pick a game
List the games your account can offer, then pick one to open.
/api/v1/casino/gamesMore options (optional)
1 to 100
Money history (0)
How the APIs Connect
Sports Data API: from health check to production integration in five steps.
Health
Check that the API is up. No API key needed.
Sports
See which sports you can use with GET /sports.
Events
List the events of a sport with GET /{sport}/events.
Event + Odds
Get one event and its odds with GET /{sport}/events/{eventId}.
Integrate
Call the same URLs from your server. Copy the generated code to start.
Casino API: one player from picking a game to taking the money out.
Catalog
List providers with GET /casino/providers, then games with GET /casino/games.
Launch
POST /casino/games/{gameId}/launch returns the game link. The first launch registers the player.
Fund
Transfer wallet: move money in with a wallet CREDIT. Seamless wallet: the money stays with you.
Play
The player bets and wins in the game. Seamless: HZURA asks your wallet for each bet, win and refund.
Withdraw
Transfer wallet: move the balance back with a wallet DEBIT when the player leaves.
Quick API Reference
Public API base and documented endpoints.
All integration requests use this base URL.
Send your API key in Authorization: Bearer or X-Api-Key, from a server whose IP address is on your allow-list.
Sports data is read-only GET with no query parameters. The Casino API adds JSON POST bodies for launch and the wallet.
Sports Data Endpoints
/api/v1/healthChecks that the API is up. No API key needed.
/api/v1/sportsReturns the sports you can use.
/api/v1/{sport}/eventsReturns the events of one sport.
/api/v1/{sport}/events/{eventId}Returns one event and its odds.
{sport} comes from the /sports endpoint response (key field).
{eventId} is the gmid from the event list.
Casino Endpoints
Casino API documentation/api/v1/casino/providersThe providers you can offer. Each item has an id, a name, and a logo URL. The full list, not a page.
/api/v1/casino/gamesThe games you can offer, most popular first. Each game has popularity_rank (0 is most popular). Filters: provider, category, search, currency, language, device. Paged.
/api/v1/casino/games/{gameId}/launchReturns a launch URL for one player. Real launches open a 6-hour game session.
/api/v1/casino/walletTransfer wallet only: BALANCE, CREDIT, DEBIT and ROLLBACK. Safe to retry with the same transaction_id.
{your wallet URL}Seamless wallet only: HZURA calls you, signed, for each balance read, bet, win and refund.
Frequently Asked Questions
Common questions about the Sports Data API and the Casino API.
What is HZURA's API Playground?
An interactive developer tool for HZURA's Sports Data API and Casino API. Inspect real requests and responses, see each error explained, and copy production code in cURL, JavaScript, Python or PHP.
What does the casino sandbox simulate?
The whole flow, in your browser, with real HZURA game names: the games list, launch, the transfer wallet with safe retries and undo, and game rounds. In seamless mode it also plays your wallet, so you can see the signed requests you will receive. No money moves and nothing is sent.
Transfer wallet or seamless wallet?
With a transfer wallet HZURA holds each player's casino balance: you move money in and out with POST /api/v1/casino/wallet. With a seamless wallet the money stays on your platform and HZURA calls your wallet URL for every bet, win and refund. Switch between them in the sandbox to compare.
Why does live casino mode return 403?
Live mode sends your request with your API key from the HZURA website, not from your server. The Casino API only accepts the server IP addresses on your allow-list, and a wrong key or a wrong IP address both give 403 ip_not_allowed. So this answer is expected. For real tests, run the generated code on your own server.
How does authentication work?
Send your API key (Authorization: Bearer or X-Api-Key) from a server whose IP address is on your allow-list. Both are set up by HZURA.
How do I get event IDs to query odds?
Query GET /api/v1/{sport}/events to get events with their gmid values. Pass the gmid to GET /api/v1/{sport}/events/{eventId} for odds.
Does the API support WebSockets or live streaming?
No. Each request returns the latest data at that moment. There is no WebSocket or push stream. Ask again for the events you show, and stop when they are no longer on screen.
Why might I receive a 403 or 429 error?
403 ip_not_allowed means access was refused: the API key is missing or wrong, or the request did not come from a server IP address on your allow-list. The error does not say which. 429 means you sent too many sports requests: wait the number of seconds in the Retry-After header. GET /api/v1/health needs no key and has no limit.
How do I request production API access?
Contact HZURA with your server's static public IP address. You will receive an API key and your IP will be configured for access.
Does the API have a separate result endpoint?
No. The current API does not have a separate result endpoint. Event status and outcome data are included in the event response when available.
Request API Access
Contact HZURA to get your API key and configure your server's IP for access to sports, events, and odds data.