Together Budget API Manual

Welcome to the Together Budget API. This guide will help you connect your apps or automation tools (like n8n) with your family budget. No advanced coding skills needed β€” we keep it simple!


πŸ” Authentication

All API requests need a token. You get it by logging in first.

Login Endpoint:

pgsqlCopyEditPOST /api/login
Content-Type: application/json

{
  "email": "you@example.com",
  "password": "your_password"
}

This will return:

jsonCopyEdit{
  "token": "YOUR_TOKEN_HERE"
}

Use this token in other requests by adding a header like:

makefileCopyEditAuthorization: Bearer YOUR_TOKEN_HERE

πŸ‘€ Profile Management

Get Your Profile:

sqlCopyEditGET /api/profile
Authorization: Bearer YOUR_TOKEN

Update Your Name:

pgsqlCopyEditPUT /api/profile
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

{
  "name": "New Name"
}

Delete Your Account:

sqlCopyEditDELETE /api/profile
Authorization: Bearer YOUR_TOKEN

🏦 Manage Accounts

List Accounts:

sqlCopyEditGET /api/accounts
Authorization: Bearer YOUR_TOKEN

Create an Account:

pgsqlCopyEditPOST /api/accounts
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

{
  "name": "Main Wallet",
  "currency": "USD",
  "initial_balance": 500,
  "categories": [1, 2]
}

Update Account:

pgsqlCopyEditPUT /api/accounts/1
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

{
  "name": "Updated Wallet"
}

Delete Account:

sqlCopyEditDELETE /api/accounts/1
Authorization: Bearer YOUR_TOKEN

πŸ’Έ Transactions

Add a Transaction:

pgsqlCopyEditPOST /api/transactions
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

{
  "amount": 75,
  "type": "expense",
  "category_id": 3,
  "note": "Groceries"
}

Bulk Add Transactions:

pgsqlCopyEditPOST /api/transactions/bulk
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

[
  {
    "amount": 25,
    "type": "expense",
    "category_id": 1,
    "note": "Coffee"
  },
  {
    "amount": 100,
    "type": "income",
    "category_id": 4,
    "note": "Gift"
  }
]

Update a Transaction:

pgsqlCopyEditPUT /api/transactions/1
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

{
  "amount": 90
}

πŸ“‚ Categories

List Categories:

sqlCopyEditGET /api/categories
Authorization: Bearer YOUR_TOKEN

Create Category:

pgsqlCopyEditPOST /api/categories
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

{
  "name": "Entertainment"
}

πŸ“Š Budgets

Create a Budget:

pgsqlCopyEditPOST /api/budgets
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

{
  "category_id": 1,
  "month": "2025-06",
  "limit": 500
}

🎯 Goals

Create a Goal:

pgsqlCopyEditPOST /api/goals
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

{
  "name": "Vacation Fund",
  "target_amount": 3000
}

Contribute to a Goal:

bashCopyEditPOST /api/goals/1/contribute
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

{
  "amount": 200
}

πŸ‘¨β€πŸ‘©β€πŸ‘§β€πŸ‘¦ Family Features

Join a Family:

pgsqlCopyEditPOST /api/family/join
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

{
  "family_name": "SmithFamily"
}

Approve a Family Member (Admin Only):

bashCopyEditPOST /api/family/members/2/approve
Authorization: Bearer YOUR_TOKEN

Set Member Permissions:

pgsqlCopyEditPOST /api/family/members/2/permissions
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json

{
  "permissions": ["view", "edit"]
}

πŸ“ˆ Dashboard Data

Get Dashboard Info:

sqlCopyEditGET /api/dashboard
Authorization: Bearer YOUR_TOKEN

⚑ n8n Integration Ideas

You can use n8n.io to automate your budget actions β€” no coding needed!

πŸ’‘ Example: Daily Telegram Report

  1. Use HTTP Request node to fetch /api/transactions
  2. Filter for today’s date
  3. Sum the amounts
  4. Send to Telegram or Email

πŸ’‘ Example: Alert for Highest Spending Day

bashCopyEditGET /api/n8n/max-transaction-day

Returns:

jsonCopyEdit{
  "day": 15,
  "total_amount": 300
}

Use this to notify yourself of risky spending behavior.


πŸ§ͺ Tips & Best Practices

  • Always use Bearer YOUR_TOKEN in headers.
  • Use date format: YYYY-MM-DD
  • Start by creating accounts, then categories, then transactions.
  • Use free tools like Postman, Insomnia, or n8n.

πŸ“£ Non-Developers Welcome!

Even if you don’t code, you can automate your money flow with n8n or connect to your favorite apps using our simple API.

Need help? Contact us or explore your dashboard!