Appearance
Adapter Mapping
FAST uses a per-tenant adapter layer to translate incoming bet payloads into its canonical format. If your bet event fields differ from FAST's expected schema, configure a mapping so FAST can read your data without changes to your backend.
Canonical Fields
| Field | Type | Required | Description |
|---|---|---|---|
userId | string | yes | Your user identifier |
externalBetId | string | yes | Your bet identifier |
stakeAmount | number | yes | Bet stake amount |
odds | number | yes | Decimal odds |
betTypeIdentifier | string | no | Bet type (single, accumulator, etc.) |
eventTimestamp | string | no | ISO 8601 timestamp |
status | string | yes | placed, settled-won, settled-lost, voided |
isCashOut | boolean | no | Whether this is a cash-out settlement |
settlementAmount | number | no | Total return on settlement |
Example Mapping
If your payload looks like this:
json
{
"player_id": "user-001",
"bet_ref": "BET-12345",
"amount": 10.0,
"decimal_odds": 2.5,
"type": "single",
"state": "placed",
"is_early_cashout": false
}Configure this mapping:
bash
curl -X POST https://api.fundedfast.eu/v1/admin/adapters \
-H "Authorization: Bearer YOUR_JWT" \
-H "Content-Type: application/json" \
-d '{
"mappingConfig": {
"userId": "player_id",
"externalBetId": "bet_ref",
"stakeAmount": "amount",
"odds": "decimal_odds",
"betTypeIdentifier": "type",
"status": "state",
"isCashOut": "is_early_cashout"
}
}'Dot Notation for Nested Fields
If your payload nests fields inside objects, use dot notation:
json
{
"player": {
"id": "user-001"
},
"ticket": {
"ref": "BET-12345",
"wager": 10.0
},
"odds": 2.5,
"state": "placed"
}Mapping config:
json
{
"mappingConfig": {
"userId": "player.id",
"externalBetId": "ticket.ref",
"stakeAmount": "ticket.wager",
"odds": "odds",
"status": "state"
}
}Status Value Mapping
FAST expects specific status strings. If your system uses different values, translate them in your backend before sending to FAST:
| FAST Status | Description |
|---|---|
placed | Bet accepted, not yet settled |
settled-won | Bet settled as a win |
settled-lost | Bet settled as a loss |
voided | Bet cancelled (ignored by FAST) |
Testing via Admin Dashboard
The operator backoffice includes a "Test Mapping" feature on the Adapter Mappings page. Paste a sample payload and verify that FAST correctly extracts all canonical fields before going live. A mapping failure at runtime returns 422 Mapping Error.
Managing Mappings
| Method | Endpoint | Purpose |
|---|---|---|
| GET | /v1/admin/adapters | List current mapping |
| POST | /v1/admin/adapters | Create mapping |
| PUT | /v1/admin/adapters/:id | Update mapping |
| DELETE | /v1/admin/adapters/:id | Remove mapping |