Supra Core API — Public Client Documentation
Chapter 20 — FA Burn Events Endpoint
1. Purpose
GET /api/v1/fa/burn-events returns normalized final FA burn events. The route is read-only and always returns the
fa flow; no LEGACY burn route is currently public.
2. Request Parameters
| Parameter | Required? | Default or bound | Description |
|---|---|---|---|
network |
No | mainnet |
Validated network name |
token |
No | None | Exact token metadata |
symbol |
No | None | Exact token symbol |
sender |
No | None | Exact sender address |
tx_hash |
No | None | Exact transaction hash |
from_block |
No | None | Inclusive minimum block |
to_block |
No | None | Inclusive maximum block |
limit |
No | Default 50, maximum 500 |
Maximum rows; larger values are clamped |
offset |
No | Default 0, maximum 10000 |
Rows skipped; larger values are clamped |
from_block must not exceed to_block. Invalid integer or range input returns HTTP 400.
3. Example
curl -sS \
-H 'Accept: application/json' \
-H 'X-API-Key: <api-key>' \
'<api-base>/api/v1/fa/burn-events?token=<token-address>&limit=<limit>&offset=<offset>'
Illustrative response:
{
"ok": true,
"data": [
{
"id": 1,
"network": "mainnet",
"flow": "fa",
"tx_hash": "<tx-hash>",
"block_height": 123,
"block_time_unix": 1234567890,
"block_time_utc": "2009-02-13T23:31:30Z",
"block_time_available": true,
"function_name": "<function-name>",
"source_event_index": 0,
"event_type": "BURN",
"evidence_type": "<event-type>",
"sender_address": "<sender-address>",
"token_metadata": "<token-address>",
"token_symbol": "<token-symbol>",
"token_decimals": 6,
"amount_raw": "1250000000",
"amount": "1250.000000",
"store_address": "<store-address>",
"source_contract_version": "<contract-version>",
"created_at": "<row-created-at>"
}
],
"meta": {
"api_version": "v1",
"endpoint": "fa/burn-events",
"network": "mainnet",
"flow": "fa",
"limit": 50,
"offset": 0,
"count": 1
}
}
4. Timestamp and Amount Semantics
amount_rawis the exact integer amount as a JSON string.amountis the normalized decimal amount as a JSON string.token_decimalsidentifies the normalization scale when available.block_time_unixandblock_time_utcidentify chain time when the source supplied it.- If chain time is unavailable, both time fields are null and
block_time_availableis false. created_atis row-creation context and must not replace missing chain time.
Never replace unavailable time or amount evidence with zero.
5. Ordering, Pagination, and Privacy
Rows are ordered by block height, source event index, and row id descending. Use limit and offset; there is no
page_token.
The response does not expose internal identity keys, evidence JSON, raw transaction payloads, or lineage records.
6. Errors
| Status | Meaning |
|---|---|
400 |
Invalid network, integer, or block range |
401 |
Authentication failure |
405 |
Method other than GET |
429 |
Rate limit exceeded |
500 |
Sanitized internal error |
An empty data array with HTTP 200 is a valid no-match result.