TerminalAutomationCopy bettingOddsPricingAPI docs
    Join Discord
    Log inCreate account
    1. Home
    2. Betting API
    Betting API

    A betting API that places bets into your own bookmaker sessions

    Send racing and sports bets from your own code into bookmaker accounts you already hold. B337 runs each account as a session on your computer, checks the current price and places the bet on your instructions.

    Create free accountSee pricingJoin Discord

    What the betting API does

    Odds data APIs return prices but do not place bets, and an exchange's own API places bets on that exchange only. The B337 betting API does a different job: it places racing and sports bets in Australian bookmaker accounts you already hold, from a script or server you run.

    Every bet goes to a session you have running: one of your own accounts, logged in by the B337 software on your computer. The session checks the bookmaker's current price, places the bet if the price meets your target and reports the result back. B337 is software, not a bookmaker: it does not take bets or hold betting funds, and your money stays in your own accounts.

    Your accounts, your computer

    Sessions run in the B337 software on your own computer, logged in to accounts you hold with credentials you supply.

    REST with an API key

    JSON requests over HTTPS, authenticated by your API key in the X-API-Key header.

    Asynchronous place-bet

    The place-bet call answers straight away with a correlation id. The result follows by polling, or by a signed callback to your URL.

    Racing and sports

    Thoroughbred, harness and greyhound racing, and sports at bookmakers whose sessions support them. The docs list what each one takes.

    Betting involves risk. Bookmakers can restrict or close accounts and void bets, automation can fail, prices move, and a positive expected value (+EV) bet can still lose. Promotions carry each bookmaker's own terms. There is no guarantee of profit. An API request is an instruction to your own session, not a promise that the bookmaker will take the bet or hold the price. See responsible gambling for limits and support.

    Process

    How a bet goes through the API

    1. 01

      Run your accounts as API sessions

      Connect the bookmaker accounts you already hold in your B337 dashboard and run each one as an API session. Each API session can have a daily schedule, so it only takes bets in the hours you set.

    2. 02

      Authenticate every request

      Send your API key in the X-API-Key header, then list your running sessions to get the session ids your bets will go to.

    3. 03

      Send the bet

      Post the event, selection, stake and target odds to the asynchronous place-bet endpoint. It returns a correlation id immediately, and your session does the rest.

    4. 04

      Collect the result

      Poll the bet-status endpoint with the correlation id, or pass a callback URL and receive the result as a signed POST. Placed bets are recorded in your B337 dashboard.

    A sample request

    A racing win bet, sent to the asynchronous place-bet endpoint. Every value is a placeholder.

    POST /v3/place_bet
    X-API-Key: YOUR_API_KEY
    Content-Type: application/json
    
    {
      "session_id": "YOUR_SESSION_ID",
      "category": "racing",
      "track": "Flemington",
      "race_num": 4,
      "race_type": "(R)",
      "country": "au",
      "date": "2026-10-03",
      "runner": "Runner Name",
      "market": "win",
      "stake": 10.00,
      "target_odds": 4.20
    }

    The reply comes back straight away, with the bet still pending (abridged):

    {
      "status": "pending",
      "correlation_id": "9b3c...",
      "session_id": "YOUR_SESSION_ID",
      "submitted_at": "2026-10-03T03:11:00.000Z"
    }

    Then poll with the correlation id until the status is completed:

    POST /api/bet_status
    X-API-Key: YOUR_API_KEY
    Content-Type: application/json
    
    { "correlation_ids": ["9b3c..."] }

    When it completes, result.success says whether the bet was placed and result.bet_result carries the bookmaker's receipt: bet id, odds and stake. A timeout status means no result came back in time, so check that account's bet history before you send the bet again.

    Rather not poll? Add a callback_url to the request and the result is POSTed to your server when it is ready. Each callback carries a Bet-Signature header, an HMAC-SHA256 of the body keyed with your API key, so your server can check it came from B337 before acting on it.

    Target odds are a floor, not a fixed price

    The target_odds you send is the lowest price you will accept, not the price you will get. When your session goes to place the bet, it checks the bookmaker's current price. Below your target, the bet is refused and the result says so. At or above it, the bet goes on at the bookmaker's current price.

    An optional max_odds adds a ceiling. A price far above what you expected can be a sign the wrong runner or line was matched, so the session refuses it rather than betting it. Prices move between your request and the bet, so a floor set right at the current price will sometimes miss.

    Share one bet across your bookmakers

    Name a distribution strategy in the request and one bet is spread across your running sessions at different bookmakers, by the rule you pick.

    • Fixed wager: the same stake at every bookmaker, whatever its price.
    • Ensure total wager: fixed-size chunks until your total is placed, moving stake to another bookmaker when one declines.
    • Choose best odds: checks every price first, then bets only at the number of top-priced bookmakers you set.
    • Minimum odds: bets only where the price meets your minimum and skips the rest.
    • High odds first: starts at the best price and passes any unplaced amount to the next best price, and so on.
    • Fixed profit: sizes each stake from that bookmaker's price, so each bet would win the same amount.

    These rules decide where your stake goes. They do not change the chance of your selection winning: if it loses, every stake on it is lost.

    What else the API covers

    Placing bets is the core. The other endpoints cover running your accounts from the same code.

    • Price checks: ask your sessions for a bookmaker's current price before you bet.
    • Balances: read an account's balance through its session.
    • Sessions: list your sessions, and start, restart or stop them.
    • Promos: read the promotions already in your own accounts.
    • Transactions: pull an account's recent transaction history.

    The full API reference

    Every endpoint, request field and error code, with curl and Python examples, is in the API docs. They open with any B337 account, including a free one.

    Create free accountSigned in already? Open the API docs

    Limits worth knowing before you build

    • Your computer has to be on. Sessions run in the B337 software on your own computer, so the API can reach a session only while that computer is on and the software is running.
    • Your own accounts only. It bets in accounts you hold and have connected, and nowhere you do not have a session running.
    • Bookmakers set the terms. A bookmaker can decline a bet, limit stakes, restrict or close an account and void bets, and many bookmakers' terms restrict automated betting.
    • Coverage differs by bookmaker. The docs list the bet types, sports and markets each one takes.
    • No in-play. Australian bookmakers cannot take online in-play sports bets, so every bet goes on before the event starts.
    • Schedules are enforced. A session with a daily schedule refuses bets sent outside its hours.
    • You choose the bets. The API places what your code sends and does not pick selections. For help finding prices, the Terminal's sports screener ranks out-of-line prices by edge.

    What you need

    • Accounts you already hold with Australian bookmakers, connected to your B337 dashboard.
    • A computer running the B337 software: Windows 10 or 11 (64-bit), macOS 11 or later on Apple Silicon, or Ubuntu 24.04+ or Debian 13+, with 4GB of RAM and 500MB of free disk.
    • API access and your API key. Keep the key in server-side code or an environment variable, never in a web page, app bundle or public repository: anyone who has it can send bets to your sessions.
    • Code that can send an HTTPS request with a JSON body, in any language.

    Pricing and access

    API access is set up through Discord: join the server, get verified and open a ticket for the plan you want. API pricing is confirmed in your ticket rather than published here. You can read the full API docs first with a free account.

    Get API access

    • Send racing and sports bets from your code into your own sessions
    • Share one bet across your bookmakers with six distribution strategies
    • Get each result by polling or a signed callback
    • Check prices, balances, promos and transactions through the same API
    See pricing

    Questions about the betting API

    Is B337 a bookmaker?
    No. B337 is software that places bets in accounts you hold, on your instructions. It does not take bets or hold betting funds, and your money stays in your own bookmaker accounts.
    Does my computer need to stay on?
    Yes. Your sessions run in the B337 software on your own computer, so it has to be on, with the software running, whenever you want the API to place bets.
    Can I read the docs before I pay?
    Yes. The API docs open with any B337 account, including a free one.
    How do I know whether a bet was placed?
    Each place-bet call returns a correlation id. Poll the bet-status endpoint with it, or have the result sent to your callback URL. When the bet completes, the result says whether it was placed and carries the bookmaker's receipt.
    What if the price drops before the bet goes on?
    Your target odds are a floor. If the bookmaker's current price is below it when the session goes to bet, the bet is refused and the result tells you so.
    Will bookmakers restrict my account?
    They can. A bookmaker can decline bets, limit stakes, restrict or close an account and void bets under its own terms, and many restrict automated betting. B337 does not stop that from happening.
    Is automated betting allowed?
    B337 does not give legal advice. Under our Terms, it is up to you to check that automated betting is lawful where you are and allowed by each bookmaker you use. Many bookmakers restrict or prohibit automated betting and third-party access to accounts.
    Can the API bet in-play?
    No. Australian bookmakers cannot take online in-play sports bets, so bets go on before the event starts.
    How much does API access cost?
    API access is set up through Discord, and pricing is confirmed in your ticket. The published plans are on the pricing page.

    Related pages

    • Automated betting softwareWhat sessions do in your own bookmaker accounts, and the controls you set.
    • Horse racing betting botRacing automation for thoroughbreds, harness and greyhounds.
    • Odds comparisonThe Terminal: bookmaker odds beside Betfair back and lay prices.
    • Supported bookmakersThe Australian bookmakers B337 works with.
    • SecurityAccount security at B337.

    Start with a free account

    A free account opens the API docs and a limited view of the Terminal with live odds. API access for placing bets is set up through Discord.

    Create free accountSee pricingJoin Discord

    By the B337 team. Last updated 1 October 2026.

    Products

    • Automated betting
    • Horse racing betting bot
    • Same Game Multi automation
    • Bonus bet automation
    • Copy betting
    • Odds comparison
    • +EV betting
    • Betting API
    • Bookmakers
    • Pricing

    Guides

    • How betting bots work
    • Money back racing promos
    • Bonus bet converter

    Company

    • About
    • Security
    • Responsible gambling
    • Contact
    • Betmatic alternative
    • Terms
    • Privacy

    What's gambling really costing you?

    18+ only. For free and confidential support call 1800 858 858 or visit gamblinghelponline.org.au. Self-exclusion: BetStop (betstop.gov.au).

    B337 is software, not a bookmaker or wagering service provider. Bets are placed in accounts you hold with Australian bookmakers. Bookmaker names are trade marks of their owners; B337 is not affiliated with or endorsed by them. Bookmaker terms may restrict automated betting. B337 (Bet337) is operated by WJ Corporation Pty Ltd, ABN 22 687 040 277.

    Bet337 © 2026Join our Discord