tcn33/up-banking-api-skill
AI agent skill for interacting with the Up Banking API
0 stars0 forksUpdated Jan 21, 2026
npx skills add tcn33/up-banking-api-skillREADME
Up Banking API Skill
An AI agent skill for interacting with the Up Banking API. Query accounts, transactions, categories, and tags.
Installation
Via skills.sh
npx skills add tcn33/up-banking-api-skill
Manual installation
Clone the repo: git clone https://github.com/tcn33/up-banking-api-skill.git ~/.claude/skills/up-api.
Alternative: Download the ZIP and extract to ~/.claude/skills/up-api.
Setup
1. Get your API token
- Visit api.up.com.au
- Scan the QR code with your Up app
- Copy the generated token
2. Set the environment variable
export UP_API_TOKEN="up:yeah:xxxxxxxxxxxxx"
Add this to your shell profile (~/.zshrc or ~/.bashrc) for persistence.
3. Verify setup
python3 scripts/up_api.py ping
You should see a status message with an emoji and UUID.
Usage
All listing commands support --json for raw JSON output.
Accounts
# List all accounts
python3 scripts/up_api.py accounts
# Filter by type (saver, transactional, home_loan)
python3 scripts/up_api.py accounts --type saver
# Filter by ownership (individual, joint)
python3 scripts/up_api.py accounts --ownership joint
# Get specific account details
python3 scripts/up_api.py account <account_id>
Transactions
# Recent transactions (default 30)
python3 scripts/up_api.py transactions
# Limit results
python3 scripts/up_api.py transactions --limit 10
# Filter by date range (RFC-3339 format required)
python3 scripts/up_api.py transactions --since 2024-01-01T00:00:00Z --until 2024-02-01T00:00:00Z
# Filter by status
python3 scripts/up_api.py transactions --status settled
python3 scripts/up_api.py transactions --status held
# Filter by category
python3 scripts/up_api.py transactions --category groceries
# Filter by tag
python3 scripts/up_api.py transactions --tag "Coffee"
# Filter by account
python3 scripts/up_api.py transactions --account <account_id>
# Fetch all pages (for large date ranges)
python3 scripts/up_api.py transactions --all --since 2024-01-01T00:00:00Z
# Get specific transaction details
python3 scripts/up_api.py transaction <transaction_id>
Categories
# List all categories
python3 scripts/up_api.py categories
# List subcategories of a parent
python3 scripts/up_api.py categories --parent good-life
# Set transaction category
python3 scripts/up_api.py categorize <transaction_id> <category_id>
# Clear transaction category
python3 scripts/up_api.py categorize <transaction_id> none
Tags
# List all tags
python3 scripts/up_api.py tags
# Add tags to a transaction
python3 scripts/up_api.py tag <transaction_id> "Coffee" "Work"
# Remove tags from a transaction
python3 scripts/up_api.py untag <transaction_id> "Coffee"
Webhooks
# List webhooks
python3 scripts/up_api.py webhooks
# Create a webhook
python3 scripts/up_api.py webhook-create https://example.com/hook "My webhook"
# Test a webhook
python3 scripts/up_api.py webhook-ping <webhook_id>
# View webhook delivery logs
python3 scripts/up_api.py webhook-logs <webhook_id>
# Delete a webhook
python3 scripts/up_api.py webhook-delete <webhook_id>
JSON Output
Use --json with any listing command to get raw JSON for processing:
# Get all January transactions as JSON
python3 scripts/up_api.py transactions --json --all \
--since 2024-01-01T00:00:00Z \
--until 2024-02-01T00:00:00Z
# Pipe to jq for analysis
python3 scripts/up_api.py transactions --json --category groceries | \
jq '[.[].attributes.amount.value | tonumber] | add'
Date Format
The Up API requires RFC-3339 format for date filters:
2024-01-15T00:00:00Z(UTC)2024-01-15T00:00:00+11:00(with timezone offset)
Simple date strings like 2024-01-15 will not work.
Files
scripts/up_api.py- CLI toolskill.md- Skill definition for AI agentsreferences/api-reference.md- API endpoint reference
Resources
Publisher
Statistics
Stars0
Forks0
Open Issues0
CreatedJan 21, 2026