Skip to content

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 ​

FieldTypeRequiredDescription
userIdstringyesYour user identifier
externalBetIdstringyesYour bet identifier
stakeAmountnumberyesBet stake amount
oddsnumberyesDecimal odds
betTypeIdentifierstringnoBet type (single, accumulator, etc.)
eventTimestampstringnoISO 8601 timestamp
statusstringyesplaced, settled-won, settled-lost, voided
isCashOutbooleannoWhether this is a cash-out settlement
settlementAmountnumbernoTotal 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 StatusDescription
placedBet accepted, not yet settled
settled-wonBet settled as a win
settled-lostBet settled as a loss
voidedBet 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 ​

MethodEndpointPurpose
GET/v1/admin/adaptersList current mapping
POST/v1/admin/adaptersCreate mapping
PUT/v1/admin/adapters/:idUpdate mapping
DELETE/v1/admin/adapters/:idRemove mapping

BLACKLINE CONSULTING d.o.o.