Pagination & Filtering
Pagination Parameters
List endpoints are page-based.
| Parameter | Type | Description |
|---|---|---|
page | integer | Page number, 1-indexed (default 1) |
limit | integer | Results per page (default 100, max 500) |
Response Format
{
"data": [...],
"page_context": {
"count": 25,
"page": 1,
"per_page": 100,
"total": 250,
"has_more": true
}
}
has_more is true when page × per_page < total.
Field Selection
Pass ?fields=id,date,inflow to return only those fields. Unknown names are ignored; an empty or
absent fields returns every public field.
Filtering
Equality filters are plain query parameters named after the field: ?account=<id>,
?status=PARSED. See each endpoint for its list.
Date ranges
Any date or timestamp field can be bounded with {field}_from and {field}_to. Both are optional
and both are inclusive. The value format follows the field's type:
| Field type | Format | Example |
|---|---|---|
Date (date) | YYYY-MM-DD | date_from=2026-08-01&date_to=2026-08-31 |
Timestamp (created_at, updated_at) | ISO 8601 instant with Z or an offset | updated_at_from=2026-09-01T00:00:00Z |
A date-only value on a timestamp field is rejected with a 400 — the server never guesses a
timezone. A from later than its to is also a 400. Prefer Z; an offset's + must be
percent-encoded (%2B) because a bare + in a query string decodes to a space.
Sorting
GET /api/v1/transactions?sort_by=updated_at&sort_order=ASC
sort_by accepts the columns each endpoint lists (for transactions: date, created_at,
updated_at); sort_order is ASC or DESC (default). id is always appended as a tiebreaker
so pages never overlap or skip.