List Token Transactions
Returns one page of a token's on-chain transactions, newest first, optionally narrowed to one transaction type. Every asynchronous token endpoint answers with the id of the transaction it started; poll that one with Get Token Transaction By ID. Use this list for the transactions a call starts without returning them (the AddDocumentToToken transactions of List Token and Update Token) and for a token's history of operations.
Required permission: token:transactions:view
Request
GET /v2/admin/tokens/{token_id}/transactions?page=1&per_page=20
Parameters
| Name | Type | In | Description |
|---|---|---|---|
token_id | string | path | Required. Token id. |
page | integer | query | Required. Page number, starting at 1. |
per_page | integer | query | Required. Page size, 1 to 100. |
type | integer | query | Optional. Keep only this transaction type (see type Enum). |
Headers
| Name | Description |
|---|---|
Authorization | Required. Bearer <access_token> |
Example
curl --request GET \
--url '{{baseUrl}}/v2/admin/tokens/67d8774e903bfcbe7eb5d93e/transactions?page=1&per_page=20&type=16' \
--header 'Authorization: Bearer <access_token>'
Response
{
"data": [
{
"id": "67d8774f903bfcbe7eb5d941",
"node_id": "67d6c447f47ff3adafda700d",
"user_id": "",
"token_id": "67d8774e903bfcbe7eb5d93e",
"hash": "0x998a217061da05cf1bf1998470613a488b10908f0964e76a123c4063f91d77c4",
"type": 16,
"status": 3,
"error": null,
"is_api": true,
"created_at": "2025-03-17T19:26:07.042Z"
}
],
"total": 1,
"page": 1,
"per_page": 20
}
Response Fields
| Field | Type | Description |
|---|---|---|
data[].id | string | Transaction id. |
data[].node_id | string | Node of the token. |
data[].user_id | string | Not filled for token transactions: always "". |
data[].token_id | string | Token id. |
data[].hash | string | null | On-chain transaction hash, once the transaction is sent. |
data[].type | integer | Transaction type, see type Enum. |
data[].status | integer | Lifecycle status, see status Enum. |
data[].error | string | null | Failure reason when status is 4 (Error). |
data[].is_api | boolean | The operation came through the partner API from an API client, not from a supervisor in the admin panel. |
data[].created_at | string | Creation time (RFC 3339). |
total | integer | Number of matching transactions. |
page | integer | Page number sent in the request. |
per_page | integer | Page size sent in the request. |
type Enum
| Value | Name | Started by |
|---|---|---|
1 | CreateTokenization | Create Token, Retokenize Token |
2 | TokenListing | List Token |
3 | TokenRent | Rent Token |
4 | UpdateTokenSupply | Not started by the partner API |
5 | UpdateToken | Update Token, Update Token Metric |
6 | DelistToken | Delist Token |
7 | PassiveToken | Passive Token |
8 | PublicTransferToken | Public Transfer Token |
9 | ChangeTokenLaunchpadAddress | Not started by the partner API |
10 | BurnToken | Burn Token |
11 | OpenToSecondaryMarket | Open Token to Secondary Market |
12 | OpenToOtc | Open Token to OTC |
13 | AcceptOtcOffer | Accepting an OTC offer |
14 | CancelOtcOffer | Cancelling an OTC offer |
15 | UpdateRulesOnSecondaryMarket | Secondary-market rule updates |
16 | AddDocumentToToken | List Token, Update Token (one per document anchored on chain) |
17 | DeployTokenImpl | ERC-3643 deployment step |
18 | DeployMCImpl | ERC-3643 deployment step |
19 | DeployTREXAuthority | ERC-3643 deployment step |
20 | TREXAddAndUseVersion | ERC-3643 deployment step |
21 | DeployMCProxy | ERC-3643 deployment step |
22 | DeployTokenProxy | ERC-3643 deployment step |
23 | DeployERC4380Impl | ERC-4380 deployment step |
24 | DeployERC4380Proxy | ERC-4380 deployment step |
New types may be added. Treat an unknown value as "other operation" rather than failing.
status Enum
| Value | Name | Meaning |
|---|---|---|
1 | Started | Queued, not picked up yet. |
2 | InProgress | Being prepared and signed. |
3 | Done | Confirmed on chain. hash is set. |
4 | Error | Failed. error carries the reason. |
5 | PendingReceipt | Sent (hash set), waiting for the receipt. Ends in 3 or 4. |
1, 2 and 5 are not final. Only 3 is success and only 4 is failure.
Polling Pattern
- Call the operation (for example List Token) and keep the
transaction_idit answers with. - Poll Get Token Transaction By ID every few seconds until
statusis3(Done) or4(Error). - On
3, read the token again: its status and flags change when the transaction settles. On4, readerror. - For transactions a call does not return (
AddDocumentToToken, type16), list them here withtype=16.
Errors
| Status | Code | Description |
|---|---|---|
| 400 | 10015 | Validation failed (page or per_page missing or out of range) — see details |
| 400 | 10016 | token_id is not a valid id |
| 400 | 10001 | Token not found (token domain 5) |
| 403 | 10005 | The caller's node does not cover the token's node (node domain 2) |
See Errors for the error format and common codes.