Notell API Docs
Русский

Features

Reporting API

Three read-only methods of POST /gameActions.do report on your project. They authenticate like every other operator method: partner, api_key and an allowlisted IP (Authentication). They never change anything and have their own rate-limit quota.

The ledger behind the reports is the list of wallet operations the platform sent you (bet, win, refund). Only operations your wallet confirmed move money; the others are reported as pending. Amounts are decimal strings in the wallet currency; times are UTC ISO 8601.

report_rounds#

Round history, newest first.

json
{"method": "report_rounds", "partner": "YOUR_PARTNER_ID", "api_key": "YOUR_API_KEY",
 "player_id": "player-123", "from": "2026-10-01", "to": "2026-10-16", "limit": 100}
FieldMeaning
player_id, symbol, currency, round_idOptional filters (symbol = game id)
statesettled, pending, cancelled or rejected
from, toPeriod of the round start; ISO date or date-time, from inclusive, to exclusive
limit, cursorPage size 1–500 (default 100); pass next_cursor of the previous page as cursor
json
{
  "status": "ok",
  "rounds": [{
    "round_id": "b2a7…", "player_id": "player-123", "symbol": "gates-of-olympus", "currency": "UAH", "mode": "spin",
    "state": "settled", "free_spin": false,
    "bet": {"amount": "1.50", "status": "confirmed"},
    "win": {"amount": "12.75", "status": "confirmed"},
    "refund": {"amount": null, "status": null},
    "cancel_reason": null, "created_at": "2026-10-15T12:00:00.000Z", "settled_at": "2026-10-15T12:00:03.000Z"
  }],
  "next_cursor": "eyJ0Ijoi…"
}

state is one of settled, debit_pending, in_progress, credit_pending, rejected (your wallet refused the bet), cancelled (cancel and refund) and reconciliation_required. bet.status, win.status and refund.status are planned, sent, unknown, confirmed or rejected (null when there is no such operation). For a free-spin round bet.amount is 0.00 and free_spin is true.

report_ggr#

Gross gaming revenue over confirmed wallet operations: ggr = bets − refunds − wins.

json
{"method": "report_ggr", "partner": "YOUR_PARTNER_ID", "api_key": "YOUR_API_KEY",
 "from": "2026-10-01", "to": "2026-11-01", "group_by": ["day", "symbol", "currency"]}
FieldMeaning
from, toPeriod of the round start (UTC); default: the last 31 days; at most 366 days (INVALID_PERIOD)
group_byAny of day, symbol, currency (default all three); fewer keys give coarser totals
symbol, currencyOptional filters
json
{
  "status": "ok", "period": {"from": "2026-10-01T00:00:00.000Z", "to": "2026-11-01T00:00:00.000Z"}, "group_by": ["day", "symbol", "currency"],
  "rows": [{"day": "2026-10-15", "symbol": "gates-of-olympus", "currency": "UAH",
    "rounds": 120, "cancelled_rounds": 1, "free_spin_rounds": 4,
    "bets": "180.00", "wins": "171.30", "refunds": "1.50", "ggr": "7.20", "pending_operations": 0}]
}

Amounts are per row currency; never add amounts of different currencies. pending_operations counts rounds that still have an unconfirmed operation: their money is not in the totals yet.

report_reconciliation#

Totals per player and currency, for matching your own ledger.

json
{"method": "report_reconciliation", "partner": "YOUR_PARTNER_ID", "api_key": "YOUR_API_KEY",
 "from": "2026-10-15", "to": "2026-10-16", "limit": 200}

Filters player_id, currency, from, to (by the time of the wallet operation); pagination limit 1–1000 (default 200) and cursor.

json
{
  "status": "ok",
  "players": [{"player_id": "player-123", "currency": "UAH",
    "bets": "7.00", "wins": "3.50", "refunds": "5.00", "net_wallet_change": "1.50",
    "bet_count": 2, "win_count": 1, "refund_count": 1,
    "pending": {"operations": 0, "refunds": "0.00", "wins": "0.00"}}],
  "next_cursor": null
}

net_wallet_change = wins + refunds − bets over confirmed operations: the change the platform's operations caused in your wallet for the period. If it differs from your own ledger for the same player, currency and period, look at the pending block and at report_rounds for the round-level detail.

Errors#

INVALID_PERIOD, INVALID_CURSOR, INVALID_GROUP_BY, INVALID_CURRENCY, INVALID_STATE, INVALID_LIMIT, INVALID_FROM, INVALID_TO, INVALID_PLAYER_ID, INVALID_SYMBOL, INVALID_ROUND_ID, INVALID_REQUEST (unknown field), plus the general ones; see the error reference.

Documentation for operators and integrators.TEST_ONLY platform: non-withdrawable units, no real payments.