Endpoint reference

Every endpoint, its parameters and its response fields, generated directly from the API schema so it always matches the current version.

Base URL: https://api.endute.com/v1. Every path below is relative to it, and every request carries your API key in the Authorization header. Paths are exact and have no trailing slash.

Accounts

GET/v1/accounts

List the bank accounts the key's user has connected.

Response Account[]

FieldTypeNullableDescription
idstring (uuid)no-
institutionstringno-
namestringno-
masked_identifierstringyesLast 4 of the IBAN, else last 4 of the BBAN, else null.
currencystringno-
statusstringnoAccount status as reported by the bank (e.g. enabled).
sandboxbooleanno-
last_synced_atstring (date-time)noWhen transaction DATA was last received for this account. Honest caveat: this is the last successful data delivery, not the last poll attempt -- a quiet account with no new transactions keeps an older stamp.
oldest_booking_datestring (date)noBooking date of the earliest transaction served for this account: the stored feed spans this date to now and only ever grows (history is never trimmed or expired). Use it with the transactions from/to filters to pull the window you want. Null until the first transaction lands.
GET/v1/accounts/{id}

Retrieve a single connected bank account by its id.

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)yes-

Response Account

FieldTypeNullableDescription
idstring (uuid)no-
institutionstringno-
namestringno-
masked_identifierstringyesLast 4 of the IBAN, else last 4 of the BBAN, else null.
currencystringno-
statusstringnoAccount status as reported by the bank (e.g. enabled).
sandboxbooleanno-
last_synced_atstring (date-time)noWhen transaction DATA was last received for this account. Honest caveat: this is the last successful data delivery, not the last poll attempt -- a quiet account with no new transactions keeps an older stamp.
oldest_booking_datestring (date)noBooking date of the earliest transaction served for this account: the stored feed spans this date to now and only ever grows (history is never trimmed or expired). Use it with the transactions from/to filters to pull the window you want. Null until the first transaction lands.
GET/v1/accounts/{id}/balances

Get the current balances for one bank account, each stamped with when it was last fetched.

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)yes-

Response Balance

FieldTypeNullableDescription
account_idstring (uuid)no-
balancestring (decimal)noDecimal string, 4 decimal places as stored.
currencystringno-
fetched_atstring (date-time)no-

Transactions

GET/v1/accounts/{account_id}/transactions

List an account's transactions, newest first, with cursor pagination.

Parameters

NameInTypeRequiredDescription
account_idpathstring (uuid)yes-
cursorquerystringnoOpaque pagination cursor from the previous response's "next" URL. Newest first; treat transaction ids as the idempotency key when walking the feed.
fromquerystring (date)noOnly transactions with booking_date on or after this date. Strictly YYYY-MM-DD.
toquerystring (date)noOnly transactions with booking_date on or before this date. Strictly YYYY-MM-DD.

Response PaginatedTransactionList (results: Transaction[])

FieldTypeNullableDescription
idstring (uuid)no-
booking_datestring (date)no-
value_datestring (date)no-
amountstring (decimal)noSigned, as the bank reported: negative = outflow.
currencystringno-
descriptionstringno-
counterpartystringyes-
enrichmentTransactionEnrichmentno-
sandboxbooleanno-

Connections

GET/v1/connections

List the user's bank connections and their status.

Response Connection[]

FieldTypeNullableDescription
idstring (uuid)no-
institutionstringno-
statusstringno-
expires_atstring (date-time)noWhen the underlying bank consent expires; null for connections without consent expiry (e.g. sandbox).
sandboxbooleanno-
GET/v1/connections/{id}

Retrieve a single bank connection by its id.

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)yes-

Response Connection

FieldTypeNullableDescription
idstring (uuid)no-
institutionstringno-
statusstringno-
expires_atstring (date-time)noWhen the underlying bank consent expires; null for connections without consent expiry (e.g. sandbox).
sandboxbooleanno-

Investments

GET/v1/investment-accounts

List the user's connected investment accounts.

Response InvestmentAccount[]

FieldTypeNullableDescription
idintegerno-
namestringno-
numberstringyesMasked/partial account number as the provider supplied it (provider_metadata); null when unavailable.
currencystringyes-
connection_idintegerno-
sandboxbooleanno-
last_holdings_sync_atstring (date-time)noWhen holdings were last successfully synced for this account; null until the first sync.
GET/v1/investment-accounts/{account_id}/activities

List an investment account's activity (trades and cash events), newest first.

Parameters

NameInTypeRequiredDescription
account_idpathintegeryes-
fromquerystring (date)noOnly activities with trade_date on or after this date. Strictly YYYY-MM-DD. Cash-only rows (null trade_date) are excluded when this filter is set.
toquerystring (date)noOnly activities with trade_date on or before this date. Strictly YYYY-MM-DD. Cash-only rows (null trade_date) are excluded when this filter is set.

Response InvestmentActivities (results: InvestmentActivity[])

FieldTypeNullableDescription
idintegerno-
typestringnoProvider activity type (e.g. BUY, SELL, DIVIDEND).
symbolstringnoProvider ticker; "" for cash-only rows.
unitsstring (decimal)noQuantity, Decimal string; null for cash-only rows.
pricestring (decimal)noPer-unit price, Decimal string; null for cash-only rows.
amountstring (decimal)noTotal cash amount, Decimal string; signed as the provider reported.
currencystringno-
trade_datestring (date)noTrade/settlement date; null for cash-only rows.
sandboxbooleanno-
GET/v1/investment-accounts/{account_id}/positions

Get the latest holdings for one investment account, with the snapshot date.

Parameters

NameInTypeRequiredDescription
account_idpathintegeryes-

Response InvestmentPositions

FieldTypeNullableDescription
as_ofstring (date-time)noProvider data timestamp the snapshot reflects; null when no snapshot exists yet.
positionsInvestmentPosition[]no-
GET/v1/investment-connections

List the user's investment connections and their status.

Response InvestmentConnection[]

FieldTypeNullableDescription
idintegerno-
brokerstringnoThe user-facing brokerage name (e.g. "Interactive Brokers"). Never an aggregation provider identity.
statusstringno-
sandboxbooleanno-
last_synced_atstring (date-time)noWhen the most recent successful sync completed; null until the first sync.