Get a reconciliation report
Built daily after 00:30 UTC for the previous UTC day, per currency. A malformed date is 400; a day whose report is not built yet is 404. The 200 body is streamed page by page (chunked): a failure after the answer started closes the connection before the body's end, so the transfer fails and a JSON body does not parse completely, while a CSV body may stop at a row boundary. A client treats any read error, or a body that does not parse completely, as a failed request and retries it; it never keeps a partial report.
Request
A client sends this request signed with its credential. The example is signed with the test API key test-key-test-key and the test secret docs-example-signing, at the timestamp 1767225600 with the nonce docs-example-nonce-0001; see Authentication and signing.
Headers
- Name
X-Api-Key- Type
- string, required
- Description
The credential id. Sent together with X-Timestamp, X-Nonce and X-Signature.
- Name
X-Signature- Type
- string, required
- Description
Base64 HMAC-SHA256 of the method, the path with its query, X-Timestamp, X-Nonce and the lowercase hex SHA-256 of the raw body, joined by newlines. Compared in constant time; 30 seconds of tolerance; each nonce is used once.
- Name
X-Timestamp- Type
- string, required
- Description
Unix seconds; within 30 seconds of the receiver's clock. Matches
^[0-9]{1,12}$.
- Name
X-Nonce- Type
- string, required
- Description
Single use per credential, kept until the timestamp plus 30 seconds. At least 16 characters. At most 128 characters.
Path parameters
- Name
date- Type
- string (date), required
- Description
The UTC day, YYYY-MM-DD.
Request
curl "https://aggregator.asteriks.casino/v1/reconciliation-reports/2026-10-13" \
-H "X-Api-Key: test-key-test-key" \
-H "X-Timestamp: 1767225600" \
-H "X-Nonce: docs-example-nonce-0001" \
-H "X-Signature: 7OnPvburnS37x9V0yihEhvQsAxcBcvwbrPDHbN5Arhk="
Response
The answer is 200 with application/json or text/csv.
- Name
day- Type
- string (date), required
- Description
- Name
version- Type
- integer, required
- Description
1 when the day is first built; one more on each rebuild that changes the report (a late day's rebuild). At least 1.
- Name
currencies- Type
- object[], required
- Description
- Name
currencies[].currency- Type
- string, required
- Description
One of
TRY,EUR,USD,USDT,TON,BTC,AED,AFN,ALL,AMD,AOA,ARS,AUD,AWG,AZN,BAM,BBD,BDT,BGN,BHD,BIF,BMD,BND,BOB,BOV,BRL,BSD,BTN,BWP,BYN,BZD,CAD,CDF,CHE,CHF,CHW,CLF,CLP,CNY,COP,COU,CRC,CUP,CVE,CZK,DJF,DKK,DOP,DZD,EGP,ERN,ETB,FJD,FKP,GBP,GEL,GHS,GIP,GMD,GNF,GTQ,GYD,HKD,HNL,HTG,HUF,IDR,ILS,INR,IQD,IRR,ISK,JMD,JOD,JPY,KES,KGS,KHR,KMF,KPW,KRW,KWD,KYD,KZT,LAK,LBP,LKR,LRD,LSL,LYD,MAD,MDL,MGA,MKD,MMK,MNT,MOP,MRU,MUR,MVR,MWK,MXN,MXV,MYR,MZN,NAD,NGN,NIO,NOK,NPR,NZD,OMR,PAB,PEN,PGK,PHP,PKR,PLN,PYG,QAR,RON,RSD,RUB,RWF,SAR,SBD,SCR,SDG,SEK,SGD,SHP,SLE,SOS,SRD,SSP,STN,SVC,SYP,SZL,THB,TJS,TMT,TND,TOP,TTD,TWD,TZS,UAH,UGX,USN,UYI,UYU,UYW,UZS,VED,VES,VND,VUV,WST,XAF,XCD,XCG,XOF,XPF,YER,ZAR,ZMW,ZWG.
- Name
currencies[].bets- Type
- object, required
- Description
- Name
currencies[].bets.count- Type
- integer, required
- Description
At least 0.
- Name
currencies[].bets.total- Type
- integer, required
- Description
Minor units of the currency. At least 0. At most 9007199254740991.
- Name
currencies[].wins- Type
- object, required
- Description
- Name
currencies[].wins.count- Type
- integer, required
- Description
At least 0.
- Name
currencies[].wins.total- Type
- integer, required
- Description
Minor units of the currency. At least 0. At most 9007199254740991.
- Name
currencies[].rollbacks- Type
- object, required
- Description
- Name
currencies[].rollbacks.count- Type
- integer, required
- Description
At least 0.
- Name
currencies[].rollbacks.total- Type
- integer, required
- Description
Minor units of the currency. At least 0. At most 9007199254740991.
- Name
currencies[].compensations- Type
- object, required
- Description
- Name
currencies[].compensations.count- Type
- integer, required
- Description
At least 0.
- Name
currencies[].compensations.total- Type
- integer, required
- Description
Minor units of the currency. At least 0. At most 9007199254740991.
- Name
currencies[].attempts- Type
- integer, required
- Description
At least 0.
- Name
currencies[].refusals- Type
- integer, required
- Description
At least 0.
- Name
currencies[].needs_attention- Type
- integer, required
- Description
At least 0.
- Name
transactions- Type
- object[], required
- Description
- Name
transactions[].transaction_id- Type
- string (uuid) | null, required
- Description
The wallet transaction_id the entry sent; null for an entry that called no wallet (tombstone, parked entry, compensation that sent nothing).
- Name
transactions[].provider_transaction_id- Type
- string | null, required
- Description
Null for the aggregator's own compensations: a compensation reuses the bet's key, so the journal keeps the bet's provider id and the list shows null for it.
- Name
transactions[].operation- Type
- string, required
- Description
One of
bet,win,rollback,round_finished,compensation,tombstone,retry.
- Name
transactions[].amount- Type
- integer, required
- Description
Minor units of the currency. At least 0. At most 9007199254740991.
- Name
transactions[].currency- Type
- string, required
- Description
One of
TRY,EUR,USD,USDT,TON,BTC,AED,AFN,ALL,AMD,AOA,ARS,AUD,AWG,AZN,BAM,BBD,BDT,BGN,BHD,BIF,BMD,BND,BOB,BOV,BRL,BSD,BTN,BWP,BYN,BZD,CAD,CDF,CHE,CHF,CHW,CLF,CLP,CNY,COP,COU,CRC,CUP,CVE,CZK,DJF,DKK,DOP,DZD,EGP,ERN,ETB,FJD,FKP,GBP,GEL,GHS,GIP,GMD,GNF,GTQ,GYD,HKD,HNL,HTG,HUF,IDR,ILS,INR,IQD,IRR,ISK,JMD,JOD,JPY,KES,KGS,KHR,KMF,KPW,KRW,KWD,KYD,KZT,LAK,LBP,LKR,LRD,LSL,LYD,MAD,MDL,MGA,MKD,MMK,MNT,MOP,MRU,MUR,MVR,MWK,MXN,MXV,MYR,MZN,NAD,NGN,NIO,NOK,NPR,NZD,OMR,PAB,PEN,PGK,PHP,PKR,PLN,PYG,QAR,RON,RSD,RUB,RWF,SAR,SBD,SCR,SDG,SEK,SGD,SHP,SLE,SOS,SRD,SSP,STN,SVC,SYP,SZL,THB,TJS,TMT,TND,TOP,TTD,TWD,TZS,UAH,UGX,USN,UYI,UYU,UYW,UZS,VED,VES,VND,VUV,WST,XAF,XCD,XCG,XOF,XPF,YER,ZAR,ZMW,ZWG.
- Name
transactions[].outcome- Type
- string, required
- Description
The entry's journaled state. One of
pending,completed,refused,compensating,compensated,retrying,needs_attention.
- Name
transactions[].balance_reported- Type
- integer | null, required
- Description
The balance the client reported, below zero after a rollback of a win; null when it did not answer with one. At least -9007199254740991. At most 9007199254740991.
- Name
transactions[].occurred_at- Type
- string (date-time), required
- Description
- Name
transactions[].refers_to_transaction_id- Type
- string (uuid) | null, required
- Description
The wallet transaction_id of the entry a rollback or compensation reverses; null when that entry called no wallet.
Errors
Each error carries one of these codes in the error object of Errors.
- Name
MALFORMED_REQUEST- Type
- 400
- Description
MALFORMED_REQUEST: a body, query or path value fails its schema.
- Name
UNAUTHORIZED- Type
- 401
- Description
UNAUTHORIZED: a missing or wrong key, signature, timestamp or nonce.
- Name
NOT_FOUND- Type
- 404
- Description
NOT_FOUND: an unknown id, another client's id or an unknown path; one body for every 404.
Response
{
"day": "2026-10-13",
"version": 1,
"currencies": [
{
"currency": "EUR",
"bets": {
"count": 0,
"total": 0
},
"wins": {
"count": 0,
"total": 0
},
"rollbacks": {
"count": 0,
"total": 0
},
"compensations": {
"count": 0,
"total": 0
},
"attempts": 0,
"refusals": 0,
"needs_attention": 0
}
],
"transactions": [
{
"transaction_id": "0199c5a0-0000-7000-8000-000000000004",
"provider_transaction_id": "transaction-7731",
"operation": "bet",
"amount": 2500,
"currency": "EUR",
"outcome": "pending",
"balance_reported": 97500,
"occurred_at": "2026-10-13T12:00:00Z",
"refers_to_transaction_id": "0199c5a0-0000-7000-8000-000000000005"
}
]
}