3.6 Price and Stake
caution
This endpoint is optional. We should be able to get latest prices & liquidity in the offers field of your /events response. However, if you update your odds way faster than that, then implement this endpoint which will be called at a certain specified rate we agree with you.
3.6.1 Get quotes for a selection
Method and URL:
GET /price_and_stake?selection_id=<selection_id>
Request Parameters:
selection_id [ string ] (required):
The selection ID identifying the event, market and runner to price(s) and min & max stake(s).
Return Data: an object containing the quotes for the requested selection.
quotes [ array ]:
The quote objects, each giving a price and the liquidity available at it. The quotes must be in descending order with respect to price. May be empty.
message [ string ] (optional):
Why you are returning no prices. Send this field only when quotes is empty — see Returning no prices. It is not a general-purpose comment field: a message sent alongside a non-empty quotes list causes the whole response to be discarded.
Example output data:
{
"quotes": [
{"price": 2.345, "min_stake": ["EUR", 1.01], "max_stake": ["EUR", 500.02]},
{"price": 2.213, "min_stake": ["EUR", 1.02], "max_stake": ["EUR", 411.43]},
{"price": 2.102, "min_stake": ["EUR", 1.29], "max_stake": ["EUR", 28.44]}
]
}
3.6.2 Returning no prices
An empty quotes array is a valid response — it means you are not pricing this selection right now. It is
not an error, and should still be returned with a 200. Always populate message when you do this. An empty array on its own tells us only that the prices are gone!
{
"quotes": [],
"message": "Market suspended, awaiting reprice"
}
The text is free-form and read by humans, so anything specific is useful.
caution
message and quotes are mutually exclusive. The presence of a message is what tells us the response
carries no prices, so we stop reading there. If you send one alongside a populated quotes list, every
quote in that response is thrown away — the selection goes unpriced exactly as if you had returned
nothing, and no error is raised to tell you so.
Leave message out entirely on a successful response. Do not use it for warnings, notes or diagnostics
about prices you are offering.
Note that the response is a plain object, not the paginated envelope used by the list endpoints.