Documentation Index
Fetch the complete documentation index at: https://docs.redbark.co/llms.txt
Use this file to discover all available pages before exploring further.
The REST API is in beta. This endpoint’s response shape may change.
Returns a paginated list of all accounts across the authenticated user’s active connections.
Request
| Header | Required | Description |
|---|
Authorization | Yes | Bearer YOUR_API_KEY |
Trialing customers retain full API access (including brokerage endpoints if their trial plan is Professional).
| Header | Description |
|---|
X-Cache | HIT, MISS, or BYPASS. Set unconditionally by the cache layer; useful for debugging stale data and tuning poll frequency. |
Query parameters
| Parameter | Type | Default | Description |
|---|
limit | integer | 50 | Maximum items to return (1 to 200) |
offset | integer | 0 | Number of items to skip |
Response
Ordered alphabetically by name (ascending). Sort follows Postgres’ default text collation, which is locale-dependent on the database server.
{
"data": [
{
"id": "a1b2c3d4-e5f6-7890-a1b2-c3d4e5f67890",
"connectionId": "b7c4a1e2-8d3f-4e9a-9c5b-1f2a3e4d5c6b",
"provider": "fiskil",
"name": "Everyday Account",
"type": "transaction",
"institutionName": "Westpac",
"accountNumber": "xxxx4567",
"currency": "AUD"
},
{
"id": "b2c3d4e5-f6a7-8901-b2c3-d4e5f6a78901",
"connectionId": "b7c4a1e2-8d3f-4e9a-9c5b-1f2a3e4d5c6b",
"provider": "fiskil",
"name": "Savings Account",
"type": "savings",
"institutionName": "Westpac",
"accountNumber": "xxxx8901",
"currency": "AUD"
}
],
"pagination": {
"total": 2,
"limit": 50,
"offset": 0,
"hasMore": false
}
}
Account object
| Field | Type | Description |
|---|
id | string | UUID of the account |
connectionId | string | UUID of the parent connection |
provider | string | "fiskil" (AU), "akahu" (NZ), or "snaptrade" (brokerage). |
name | string | Account name (e.g. “Everyday Account”) |
type | string | One of "transaction", "savings", "credit-card", "loan", "investment", "term-deposit", or "other". Note the hyphen in credit-card (not underscore). |
institutionName | string | null | Institution name (e.g. “Westpac”) |
accountNumber | string | null | Masked account number, last 4 digits only (e.g. "xxxx4567") |
currency | string | ISO 4217 currency code (e.g. "AUD", "USD") |
Account numbers are always masked. Only the last 4 digits are returned. Accounts on connections being deleted are excluded.
| Field | Type | Description |
|---|
total | integer | Total number of accounts |
limit | integer | Limit applied to this request |
offset | integer | Offset applied to this request |
hasMore | boolean | true if more items exist beyond this page |
Examples
Basic request
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.redbark.co/v1/accounts
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.redbark.co/v1/accounts?limit=10&offset=10"
Python
import requests
resp = requests.get(
"https://api.redbark.co/v1/accounts",
headers={"Authorization": "Bearer YOUR_API_KEY"},
params={"limit": 100},
)
data = resp.json()
for account in data["data"]:
print(f"{account['name']} ({account['currency']}): {account['accountNumber']}")
print(f"Showing {len(data['data'])} of {data['pagination']['total']} accounts")
JavaScript
const resp = await fetch(
"https://api.redbark.co/v1/accounts?limit=100",
{ headers: { Authorization: "Bearer YOUR_API_KEY" } },
);
const { data: accounts, pagination } = await resp.json();
for (const account of accounts) {
console.log(`${account.name} (${account.currency}): ${account.accountNumber}`);
}
console.log(`Showing ${accounts.length} of ${pagination.total} accounts`);