Skip to main content
The transactions endpoint supports page-based pagination for large result sets. Other endpoints return all results in a single response.

Paginated endpoints

EndpointDefault behavior
GET /v1/users/transactionsReturns all transactions if page is omitted. Use page and page_size for paginated results.
GET /v1/linksReturns all links with count, next, and previous fields.

Request parameters

ParameterTypeDescription
pageintegerPage number (1-based). Omit to fetch all results at once.
page_sizeintegerNumber of results per page. Min 10, max 500. Default 500.

Example request

curl -u $USER_ID:$ACCESS_TOKEN \
  "https://api.mytruv.com/v1/users/transactions?transacted_at_from=2025-01-01&page=1&page_size=50"

Response format

Paginated responses include navigation fields alongside the data:
{
  "count": 1250,
  "next": "https://api.mytruv.com/v1/users/transactions?page=2&page_size=50",
  "previous": null,
  "transactions": [...],
  "accounts": [...],
  "daily_totals": [...]
}
FieldTypeDescription
countintegerTotal number of results across all pages
nextstring or nullURL for the next page, null if on the last page
previousstring or nullURL for the previous page, null if on the first page

Iterating through pages

To retrieve all results, follow the next URL until it returns null.
import requests

url = "https://api.mytruv.com/v1/users/transactions"
params = {"transacted_at_from": "2025-01-01", "page": 1, "page_size": 100}
all_transactions = []

while url:
    response = requests.get(url, params=params, auth=(USER_ID, ACCESS_TOKEN))
    data = response.json()
    all_transactions.extend(data["transactions"])
    url = data.get("next")
    params = {}  # next URL includes all parameters