suredata-client (0.1.1)
Installation
pip install --index-url suredata-clientAbout this package
Python client and CLI for extracting data from the Sure Finance API
suredata-client
Python package and CLI for extracting data from the Sure Finance API.
Install
uv sync --all-extras
Configuration
| Variable | Description |
|---|---|
SURE_BASE_URL |
API base URL (default: https://app.sure.am) |
SURE_API_KEY |
API key sent as X-Api-Key |
CLI flags --base-url and --api-key override environment variables.
CLI
# List supported resources
suredata-client resources
# List one page of accounts
export SURE_API_KEY=your-key
suredata-client list accounts --page 1 --per-page 25
# Fetch all pages as JSON
suredata-client list transactions --all -o json
# Stream JSONL to a file (container-friendly)
suredata-client list categories --all -o jsonl -f /data/categories.jsonl
# Get a single record
suredata-client get accounts <uuid>
# Balance sheet
suredata-client balance-sheet
Docker-style usage
docker run --rm \
-e SURE_API_KEY \
-e SURE_BASE_URL=https://app.sure.am \
suredata-client:latest \
list transactions --all -o jsonl -f /out/transactions.jsonl
Python API
from suredata_client import SureClient, load_settings
from suredata_client.endpoints import Endpoints
settings = load_settings() # reads SURE_* env vars
with SureClient(settings) as client:
api = Endpoints(client)
for account in api.iter_all("accounts"):
print(account["name"])
Development
uv sync --all-extras
ruff format .
ruff check .
uvx ty check
pytest
MVP resources
accounts, transactions, categories, merchants, tags, balances, holdings, trades, transfers, budgets, valuations, syncs, imports, family_exports, plus balance-sheet.
Requirements
Requires Python: >=3.12
Details
Assets (2)
Versions (6)
View all