Get Player Bets
Look up a player's bet history
Look up the bet history for a specific player. Results are scoped to your integration — you can only see bets placed by your players. This is useful for resolving player support requests or reconciliation.
Endpoint
POST /game/betsRequest
POST /game/bets HTTP/1.1
Host: api.marbles.xyz
X-Marbles-Signature: <signature>
Content-Type: application/json
{
"operatorID": "abc123",
"externalPlayerID": "22893236",
"from": "2026-03-19T00:00:00Z",
"to": "2026-03-20T00:00:00Z",
"limit": 25
}Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
operatorID | string | Yes | Your unique operator identifier provided by 155.io |
externalPlayerID | string | Yes | Your player identifier (the clientPlayerId used when launching the game) |
from | string | No | ISO 8601 timestamp — only return bets placed after this time |
to | string | No | ISO 8601 timestamp — only return bets placed before this time |
limit | integer | No | Maximum number of bets to return. Default: 25, maximum: 100 |
Success Response
HTTP/1.1 200 OK
Content-Type: application/json
{
"status": 200,
"data": {
"bets": [
{
"id": "8a275342-bc24-5acd-b1f0-4bb9331ce010",
"status": "won",
"amount": 500,
"payout": 2500,
"currency": "USD",
"betType": "PickWinner",
"gameName": "Fish Tank",
"roundId": "949223e9-2238-59f8-a16b-936ffc7fe3c5",
"createdAt": "2026-03-20T11:59:50Z",
"updatedAt": "2026-03-20T12:00:10Z"
},
{
"id": "4001ebd2-d8e5-5b38-90c1-c3b1ea7fe347",
"status": "lost",
"amount": 300,
"payout": 0,
"currency": "USD",
"betType": "PickWinner",
"gameName": "Fish Tank",
"roundId": "a8c81652-cbd4-4b5d-94cd-5585715e6133",
"createdAt": "2026-03-20T11:55:30Z",
"updatedAt": "2026-03-20T11:56:00Z"
}
]
}
}Response Fields
| Field | Type | Description |
|---|---|---|
id | string | Bet UUID |
status | string | Bet status: pending, won, lost, or voided |
amount | integer | Bet amount in smallest currency unit (e.g. cents) |
payout | integer | Actual payout — equals potentialPayout for won bets, 0 for lost bets |
currency | string | ISO 4217 currency code |
betType | string | Bet type (see Bet Types) |
gameName | string | Display name of the game |
roundId | string | Round UUID — use this with /game/round to get full round details and the race clip |
createdAt | string | ISO 8601 timestamp when the bet was placed |
updatedAt | string | ISO 8601 timestamp when the bet was last updated |
Results are sorted by createdAt in descending order (newest first). Use the roundId from the response to look up full round details including the race recording via the Get Round Details endpoint.
Error Response
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"error": "Validation error",
"details": "Property 'externalPlayerID' is required"
}Error Statuses
| Status | HTTP Code | Description |
|---|---|---|
| Invalid Integration IP | 400 | Request originated from an unrecognized IP address |
| Validation error | 400 | Missing or invalid request parameters |
| Invalid date format | 400 | from or to is not a valid RFC3339 timestamp |