Organization transactions
Transactions are your users' orders and transfers in one list, newest first. Use them to match fills to your own customer records, or to show a user their history.
Your organization's transactions
Call GET /v1/gateway/organizations/{organization_id}/transactions with your organization token and no TM-On-Behalf-Of header. It already covers every user, so it rejects the header.
Each row carries the user_id it belongs to. The row's type is order or transfer, and the field with that name holds the full object in the same shape its own endpoint returns.
The row's status is one of pending, completed, failed or canceled, the same four for orders and transfers. The order's own status, such as complete, is inside order.
Filter by user_id (up to 100, comma-separated), type, status, and a from and to time window. Pass user_id to narrow the feed to some of your users. limit defaults to 50 and goes up to 100. To get the next page, pass the cursor from pagination.next_cursor.
- TypeScript
- Python
- curl
const feed = await get(
`/v1/gateway/organizations/${organizationId}/transactions?type=order&status=completed&from=2026-09-01T00:00:00Z`,
);
feed = get(
f"/v1/gateway/organizations/{organization_id}/transactions?type=order&status=completed&from=2026-09-01T00:00:00Z",
)
curl -s -G https://api.truemarkets.co/v1/gateway/organizations/$ORGANIZATION_ID/transactions \
-H "Authorization: Bearer $ORG_TOKEN" \
-d type=order \
-d status=completed \
-d from=2026-09-01T00:00:00Z
{
"data": [
{
"id": "0f9d8c7b-6a5e-4d3c-b2a1-908f7e6d5c4b",
"user_id": "9c1e7a52-4d3b-4f8e-a6b7-1c2d3e4f5a6b",
"type": "order",
"status": "completed",
"asset_symbol": "SOL",
"qty": "0.0102",
"explorer_url": "https://solscan.io/tx/5Ub7…Xk2q",
"completed_at": "2026-09-28T17:06:52Z",
"order": { "…": "the same object as GET /orders/{id}" }
}
],
"pagination": { "next_cursor": "eyJjcmVhdGVkX2F0Ijoi…", "limit": 50 }
}
One user's transactions
For one user, call GET /v1/gateway/transactions with the TM-On-Behalf-Of header. The rows have the same shape, without user_id. This call filters by type only, and pages the same way.
- TypeScript
- Python
- curl
const history = await get("/v1/gateway/transactions", forUser);
history = get("/v1/gateway/transactions", for_user)
curl -s https://api.truemarkets.co/v1/gateway/transactions \
-H "Authorization: Bearer $ORG_TOKEN" \
-H "TM-On-Behalf-Of: $USER_ID"
Next: Go live checklist