Appearance
Introduction
Oddyne Sportsbook is a hosted sportsbook you embed into your own website or app. Your players get live and prematch odds and a full in-frame betting experience — rendered from a single iframe whose URL we generate for you.
This documentation is for operator and partner developers integrating the Oddyne Sportsbook into their product. It is a B2B, server-to-server integration — there is no public self-serve signup. You receive your site API key and configure your wallet URL with us during onboarding.
The server-to-server model
The integration has exactly two moving parts, and both live on your backend:
- You call Launch. Your backend sends
POST /api/launchwith your site API key and the player's context. We respond with a ready-to-embed iframeurl. - You embed the URL we return. Drop that
url— exactly as given — into an<iframe>. That's the entire frontend integration.
Money then flows through seamless-wallet callbacks that you implement. When a player bets, wins, or has a bet cancelled, we call your wallet URL to debit, credit, or reverse against your ledger.
Player (browser) Your backend Oddyne
│ │ │
│ open sportsbook │ │
│──────────────────────▶│ │
│ │ POST /api/launch │
│ │ Authorization: Bearer <YOUR_SITE_API_KEY>
│ │─────────────────────────▶│
│ │ 200 { url, token, ... } │
│ │◀─────────────────────────│
│ <iframe src=url> │ │
│◀──────────────────────│ │
│ │ │
│ player places a bet inside the frame │
│ │ POST <WALLET_URL>/bet │
│ │◀─────────────────────────│
│ │ { status: "ok", ... } │
│ │─────────────────────────▶│What you build
| You do | We do |
|---|---|
Call POST /api/launch from your backend | Return a ready-to-embed iframe url |
Embed the returned url in an <iframe> | Render the sportsbook for that player session |
Implement bet / win / rollback at your wallet URL | Call those callbacks as bets settle |
That's the whole surface. You never construct the embed URL, and you never manage odds, markets, translations, or configuration — those are internal to the iframe. Your job is the Launch call, the <iframe>, and the three wallet callbacks.
Try it live
The public demo at https://demo.oddyne.com is a working instance of the embedded sportsbook. Use it as a concrete reference while you read these docs.
Key rules
- We build the embed URL, not you. The
urlreturned by Launch already contains everything the iframe needs. Embed it verbatim — do not modify or reconstruct it. - The site API key is server-side only. It authenticates your backend to Launch. Never ship it to the browser.
- Wallet callbacks are idempotent. Every callback carries a unique
transaction_ref; a repeatedtransaction_refmust return the same result and must not double-apply. - A launch is per player session. Mint a fresh launch each time a player opens the sportsbook; the token it carries is short-lived.
Base URLs at a glance
| Purpose | URL |
|---|---|
| Launch API (you call us) | https://api.oddyne.com/api/launch |
| Live demo embed | https://demo.oddyne.com |
| Your embed host | https://<EMBED_HOST> (baked into the url we return) |
| Your wallet base | https://<WALLET_URL> (we call you) |
Ready to integrate? Head to the Quick Start.