Your strategy.Our execution layer.
Send bets from your own models, scripts or trading systems into your bookmaker accounts through B337.
Your strategy · Your accounts · Your infrastructure
- #1
- Bet instruction
- Received
- Sent
- Placed
Your code is ready to send an instruction to B337 Execution.
One call in. A correlation id back. Done through your proxy.
Pick a call. B337 answers in about 100ms with a correlation id, hands the work to the client on your PC, and your client does it at the bookmaker through your own proxy. Query the id, or take the result on your callback.
$ curl -X POST https://api.b337.ai/v3/place_bet \-H "X-API-Key: $B337_API_KEY" -d '{"session_id": "…", "category": "racing","track": "Moonee Valley", "race_num": 9,"runner": "Winx", "target_odds": 2.10, "stake": 50}'202 {"status": "pending", "correlation_id": "…"}→ result {"success": true, "odds": 2.10, "stake": 50.00}→ saved to your B337 records: Open Bets, P&L, EV, CLV
Your script calls POST /v3/place_bet. The server acknowledges at once, your PC places it at Sportsbet through your proxy, and the result is saved to your records.
Add your bookmaker accounts.
Add an account, start its session.
Pick the bookmaker, enter the username and password, and add your proxy. Start the session and the account logs in on your PC, through that proxy, ready for bets.
Add New Account
Bookmaker
Username
Password
Proxy (Optional)
Open Sessions
New account
—
A new bookmaker account starts as an empty Add New Account form.
Your feed in. Bets out.
Your own model, a Discord server or a Telegram channel. Each tip has to become one API call in our format. Your model can send it directly. For a Discord or Telegram feed, you parse the messages into that format, or we help you do it.
From that call on, it's ours: the price check, the placement, the records.
- Your model
- Tip posted
- Converted
- Received
- Placed
Your feeds are quiet. Each tip needs a converter you write, or we build with you, before B337 sees it.
Got a special feed? Sit down with our devs.
Odd message formats, several channels, a model that speaks its own language: book a one-on-one session with the engineers who built the API and we'll wire your feed in with you.
Note: to read a Discord or Telegram feed for you, we may need you to share that account's details with us.
Fire your bets. Any bet, any way.
Your account has the promo. Your bet uses it.
The promos found in Step 1 are yours to spend. Name one on the bet, like the 2nd or 3rd bonus back, and B337 attaches the token. If the account no longer holds it, the bet is refused instead of going on as cash.
1 · Promo on the account
Bonus back if your runner runs 2nd or 3rd
Win bets · up to $50
2 · Your call uses it
POST /v3/place_bet "runner": "Ocean Park", "stake": 50, "bet_type": "2/3", "skip_if_no_promo": true
3 · Placed with the token

Flemington R5 · 4. Ocean Park
✓ $50 @ 3.40 · 2nd/3rd token on
4 · Runs 2nd: bonus back
Ocean Park ran 2nd.
+$50 bonus back
Sportsbet #01 holds a promo token, but nothing has been sent yet.
We record everything for you.
Throw out the spreadsheet.
We store every bet and track your P&L, EV and CLV for you. Starting price, closing price, EV and CLV are filled in on every bet automatically. No exports, no lookups, no formulas.
| Event | Bet | Stake | Odds taken | Closing | EV/CLV % | Result | P&L |
|---|---|---|---|---|---|---|---|
| Flemington R5 | 4. Ocean Park | $100 | 3.40 | 3.20 | +6.3% | Lost | -$100.00 |
| Randwick R7 | 2. Anamoe | $200 | 2.60 | 2.55 | +2.0% | Won | +$320.00 |
| Carlton v Collingwood | Carlton · head to head | $150 | 1.95 | 1.85 | +5.4% | Won | +$142.50 |
EV/CLV % = odds taken ÷ closing − 1
racing vs Betfair SP
sports vs Pinnacle close
This is the spreadsheet you would otherwise keep, with a formula to look up each closing price.
You build the model. We do the execution.
We know how hard the model is. Scraping the data, cleaning it, engineering the features. That XGBoost isn't going to tune itself, and one feature tweak can eat a week before the log loss moves.
You focus on that. We'll handle the logins, proxies, bookmaker APIs, price checks, retries, settlement and the EV and CLV calculations on every bet. Your model emits a bet; B337 runs everything after it.
p = model.predict(race)# p = 0.52 → fair price 1.92edge = p - 1 / market.price# market 2.10 → edge 0.044 → +EVif edge > 0.04:b337.place_bet(runner, 2.10, 250)
That is all of it. Six lines.
- Logins & sessions—
- Proxies—
- Bookmaker APIs—
- Price checks—
- Retries—
- Bet tracking—
- Results & settlement—
Your side is a notebook and B337's side is the execution stack. Nothing has run yet.
Each bet costs credits.
Every bet B337 places through the API draws credits, as a share of its stake. Refused bets cost nothing.
How credits work- A$$0 – $300K
- 1%
- of stake · 30-day API turnover
- A$$300K – $1M
- 0.66%
- of stake · 30-day API turnover
- A$$1M+
- 0.45%
- of stake · 30-day API turnover
No strategy? Can't code? Run ours.
Full Automation runs B337's own strategies in your bookmaker accounts, on the same execution layer as the API. You set the parameters; nothing to write.
Classic Racing
Racing promos and bonus bets placed at the bookmaker, with optional auto-lay on Betfair. Betfair is the reference price.
SGM Saver
Same game multis built to the bookmaker's SGM promotion, with settings per sport and the offer's terms applied in one click.
Multi Saver
A multi across different games, one leg per game, built to the Multi Saver the account is holding.
Auto Mug
Ordinary, randomised racing and sports cash bets inside the budget, odds window and timing you set, so your accounts look normal.
Auto Turnover
Small cash bets at very short odds, with a random delay between them, until the total turnover you set is staked.
And more
Every strategy, its settings and what it costs, on the Full Automation page.
See them all
Bring the strategy.We'll handle execution.
Connect your own betting system to B337 and execute across your bookmaker accounts.
B337 is software you run and control, not a bookmaker. Bookmakers can restrict or close accounts that use automation, and automation can fail.