Skip to main content

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

GET /v1/accounts

Headers

HeaderRequiredDescription
AuthorizationYesBearer YOUR_API_KEY
Trialing customers retain full API access (including brokerage endpoints if their trial plan is Professional).

Response headers

HeaderDescription
X-CacheHIT, MISS, or BYPASS. Set unconditionally by the cache layer; useful for debugging stale data and tuning poll frequency.

Query parameters

ParameterTypeDefaultDescription
limitinteger50Maximum items to return (1 to 200)
offsetinteger0Number 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

FieldTypeDescription
idstringUUID of the account
connectionIdstringUUID of the parent connection
providerstring"fiskil" (AU), "akahu" (NZ), or "snaptrade" (brokerage).
namestringAccount name (e.g. “Everyday Account”)
typestringOne of "transaction", "savings", "credit-card", "loan", "investment", "term-deposit", or "other". Note the hyphen in credit-card (not underscore).
institutionNamestring | nullInstitution name (e.g. “Westpac”)
accountNumberstring | nullMasked account number, last 4 digits only (e.g. "xxxx4567")
currencystringISO 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.

Pagination object

FieldTypeDescription
totalintegerTotal number of accounts
limitintegerLimit applied to this request
offsetintegerOffset applied to this request
hasMorebooleantrue if more items exist beyond this page

Examples

Basic request

curl -H "Authorization: Bearer YOUR_API_KEY" \
  https://api.redbark.co/v1/accounts

With pagination

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`);