The BettorEdge API
Read live markets and place trades on a peer-to-peer sports exchange. Prices are probabilities, and any position can be sold before the event ends.
// No SDK yet — this is the whole client.
const BASE = "https://pulse.bettoredge.com/v1/your-slug";
const key = { "x-api-key": process.env.PULSE_API_KEY };
// 1. Find something to trade.
const res = await fetch(BASE + "/markets/available?league_id=NFL&limit=5", { headers: key });
const { contests } = await res.json();
// 2. Take a line's hash. Read it — never build one.
const line = contests[0].markets[0].sides[0].lines[0];
// 3. Trade it. The token says whose account is used.
const placed = await fetch(BASE + "/orders/place", {
method: "POST",
headers: { ...key, "content-type": "application/json", authorization: "Bearer " + playerToken },
body: JSON.stringify({
order_context_hash: line.order_context_hash,
price: line.price,
amount: 10,
}),
});
// A 200 is not a placed order — check the body.
const result = await placed.json();{
"order_context_hash": "team:138847:1:home:team:42:0",
"levels": [
{ "price": 0.55, "available": 420.00 },
{ "price": 0.56, "available": 180.00 },
{ "price": 0.58, "available": 95.50 }
]
}Production-grade on day one.
Pulse exposes the same core that powers BettorEdge — wrapped in a clean, partner-safe API with the primitives every trading integration actually needs.
Real depth, polled or streamed
Every tradeable line with the amount available and the hash you trade it with. Fetch it over REST, or subscribe on the WebSocket stream and get the same shape pushed when it changes — plus fills, cancels and settlements on the accounts you trade for.
The same matching engine
Place, sell, cancel and bulk-cancel run through the exchange BettorEdge itself trades on. There is no separate partner book and no fork.
Two ways in
Trade your own account with a personal token from the BettorEdge app, or build for other players with a partner key plus each player’s OAuth consent. A key alone can read the board and never place a trade.
Scoped, hashed keys
read or execute scopes, rotated, suspended or expired on demand. Keys are stored as SHA-256 hashes — we cannot show you yours again, and neither can anyone else.
Limits you can read
Per-second and per-minute budgets, with X-RateLimit-Limit, -Remaining, -Reset and -Tier on every response. Back off from the headers rather than from a guess.
Built for tooling
An OpenAPI 3.1 spec and an llms.txt, both unauthenticated. Generate a client, fill in editor completion, or hand the URL to an agent and let it write the call.