Wallet REST API
Read & Manage Your Financial Data
Read and manage your Wallet data — transactions, accounts, budgets and more — from Excel, Power BI, scripts, and automation tools over a secure REST API.
Getting Started
Get Wallet Premium
The REST API is available for Wallet Premium subscribers. Upgrade your account to unlock API access.
Generate API Token
Go to Settings in the Wallet web app and generate your personal API token. Keep it secure — it grants access to your data.
Make Your First Request
Use the base URL and your token to start querying your financial data — try it live in the interactive API explorer.
Available Data
Full read access to everything — and create, update and delete where it matters.
Core Financial Data
/v1/api/recordsRecords
Transactions with rich filtering — create up to 20 and update up to 10 per request
/v1/api/accountsAccounts
Bank accounts, cards and cash — list them, open new ones, rename and update
/v1/api/categoriesCategories
The category tree — add custom subcategories and rename your own
Planning and Organisation
/v1/api/budgetsBudgets
Budget definitions and tracking — create and adjust them
/v1/api/goalsGoals
Savings goals and progress
/v1/api/standing-ordersStanding Orders
Recurring payments — /items lists the generated occurrences
/v1/api/labelsLabels
Transaction labels — list, create, rename and recolor
/v1/api/record-rulesRecord Rules
Auto-categorization rules
Maintenance & Monitoring
/v1/api/{type}/referencesEntity References
Batch lookup of related entities — a safe pre-check before deletes
/v1/api/{type}Delete Entities
Delete up to 10 records, budgets, accounts, labels, and more per request
/v1/api/api-usage/statsAPI Usage Stats
Monitor your API usage and remaining quota
Key Concepts
Pagination
Control result sets with limit and offset parameters.
limit — up to 200 results per request (default 30)offset — skip N resultsnextOffset — returned when more results exist
Filtering
Use typed prefixes to filter data precisely.
eq., contains., contains-i. — text matchinggt., gte., lt., lte. — range comparisonsRepeat a filter (up to 2×) for AND ranges
Rate Limits & Headers
Token-bucket limiting that allows short bursts, with clear HTTP headers.
300 requests per hour per clientX-RateLimit-Limit, X-RateLimit-Remaining429 + Retry-After when throttled
Batch Writes
Write in small, predictable batches — items are processed independently.
POST /records — up to 20 itemsPATCH — up to 10 itemsDELETE — up to 10 IDs
Good to Know
Currency conversion
REST API leverages historical forex rates automatically for cross-currency operations. Conversion follows a best-effort approach — rates are sourced from public market data and may differ slightly from bank or exchange rates.
Totals & sorting
withTotal=true returns the total match count alongside the page; sortBy orders results by any supported field (+ ascending, - descending).
Sync status
Your first API token triggers an initial data sync (requests return 409 until it completes). After that, the X-Last-Data-Change-At and X-Sync-In-Progress headers tell you how fresh the data is.
Partial success (HTTP 207)
Batch items are processed independently — mixed outcomes return a per-item result summary. Add validation=strict to fail fast instead.
Integration Examples
curl
The simplest way to test the API from your terminal.
curl -X GET "https://rest.budgetbakers.com/wallet/v1/api/records?limit=30" \ -H "Accept: application/json" \ -H "Authorization: Bearer YOUR_TOKEN"
Excel via Power Query
Import transactions directly into Excel for custom analysis and reporting.
- 1.Open Excel → Data → Get Data → From Web
- 2.Enter: https://rest.budgetbakers.com/wallet/v1/api/records
- 3.Add Authorization header with your Bearer token
- 4.Transform and load data into your spreadsheet
Power BI Dashboard
Create real-time financial dashboards with automatic data refresh.
- 1.Use Web connector in Power BI Desktop
- 2.URL: https://rest.budgetbakers.com/wallet/v1/api/records
- 3.Configure Bearer token authentication
- 4.Set up scheduled refresh and build visualizations
Python Analysis
Analyze your financial data programmatically with Python.
import requests
headers = {'Authorization': 'Bearer YOUR_TOKEN'}
params = {
'recordDate': 'gte.2025-01-01',
'limit': 100
}
response = requests.get(
'https://rest.budgetbakers.com/wallet/v1/api/records',
headers=headers,
params=params
)
data = response.json()
for rec in data['records']:
amount = rec['amount']
print(f"{rec['recordDate'][:10]} {rec['counterParty']}: "
f"{amount['value']} {amount['currencyCode']}")Ready to start building?
Explore the full API reference with interactive documentation, request examples, and response schemas.