Skip to content

Send player activity by API (deposits, NGR, wagering)

How an iGaming brand sends each player's deposits, NGR and wagering to RastroAff by API instead of exporting CRM reports, with request and response examples.

Updated on 6 Nov 2026

Revshare and qualified CPA commissions depend on each player's value: deposits, NGR, wagering. Instead of exporting a CRM report every month, the brand can send these values straight through the API, daily or at month end.

The request

A POST to /api/v1/players/activity, with an API key from the brand's (advertiser) account with write permission. Keys are created in the API menu of the dashboard.

curl -X POST https://rastroaff.com/api/v1/players/activity \
  -H "Authorization: Bearer rst_..." \
  -H "Content-Type: application/json" \
  -d @activity.json

The body

Each row is one player in one period. playerId and date are required; everything else is optional.

{
  "period": "MONTH",
  "rows": [
    { "playerId": "84731", "clickId": "01JC8Z5K9V3T6W2Q4R7Y1M0N8B", "date": "2026-10",
      "currency": "EUR", "deposits": 150, "depositCount": 3, "ngr": 62.5, "wager": 900 },
    { "playerId": "84732", "date": "2026-10", "deposits": 20, "ggr": 12 }
  ]
}
  • playerId: the player's ID in the brand's CRM.
  • date: YYYY-MM-DD or YYYY-MM. With period MONTH (the default), it becomes the 1st of the month.
  • clickId: RastroAff's click ID, which links the player to the affiliate. It can be inside another value, such as a btag.
  • deposits, depositCount, ngr, ggr, bonuses, withdrawals, chargebacks, wager: numbers, with a decimal point.
  • ftdDate, ftdAmount, registeredAt, country, currency (EUR by default).

The response

It says how many rows were linked to an affiliate, how many players are new and which rows have no affiliate, with the reason.

{ "data": { "importId": "…", "rows": 2, "matched": 1, "newPlayers": 2, "unmatched": 1,
  "errors": [], "unmatchedSample": [{ "index": 1, "externalId": "84732", "clickId": null, "reason": "no_click_id" }] } }

Rules

  • Up to 5,000 rows per request.
  • Sending the same player, period and currency again replaces the values: you can send the current month every day.
  • Repeated rows in the same request are added up.
  • Once linked to an affiliate, the player stays linked: later rows can come without clickId.
  • Invalid rows come back in errors, with their index; the others are saved.

Next

The values feed the monthly commission run, with tiered revshare, NGR deductions and qualified CPA. If you prefer files, you can still import the CRM report: see player value and revshare.