APIHub
Back to Explore

YNAB

The YNAB API offers RESTful JSON endpoints for accessing and managing personal budgeting data, including budgets, accounts, categories, transactions, scheduled transactions, payees, and related metadata.

Finance
OAuth
HTTPS
CORS: Yes
Description enriched
Visit official documentation

Latency

557ms p95

Uptime

100.0% 30d

Playground

Verified

live

Endpoints

REST · JSON
GET

/budgets/{budget_id}/months

List budget months

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • last_knowledge_of_server (query) — The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included.
GET

/budgets

List budgets

  • include_accounts (query) — Whether to include the list of budget accounts
GET

/budgets/{budget_id}

Single budget

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • last_knowledge_of_server (query) — The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included.
GET

/budgets/{budget_id}/accounts

Account list

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • last_knowledge_of_server (query) — The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included.
POST

/budgets/{budget_id}/accounts

Create a new account

  • budget_id (path, required) — The id of the budget ("last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget)
GET

/budgets/{budget_id}/accounts/{account_id}

Single account

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • account_id (path, required) — The id of the account
GET

/budgets/{budget_id}/accounts/{account_id}/transactions

List account transactions

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • account_id (path, required) — The id of the account
  • since_date (query) — If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30).
  • type (query) — If specified, only transactions of the specified type will be included. "uncategorized" and "unapproved" are currently supported.
  • last_knowledge_of_server (query) — The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included.
GET

/budgets/{budget_id}/categories

List categories

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • last_knowledge_of_server (query) — The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included.
GET

/budgets/{budget_id}/categories/{category_id}

Single category

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • category_id (path, required) — The id of the category
GET

/budgets/{budget_id}/categories/{category_id}/transactions

List category transactions

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • category_id (path, required) — The id of the category
  • since_date (query) — If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30).
  • type (query) — If specified, only transactions of the specified type will be included. "uncategorized" and "unapproved" are currently supported.
  • last_knowledge_of_server (query) — The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included.
GET

/budgets/{budget_id}/months/{month}

Single budget month

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • month (path, required) — The budget month in ISO format (e.g. 2016-12-01) ("current" can also be used to specify the current calendar month (UTC))
GET

/budgets/{budget_id}/months/{month}/categories/{category_id}

Single category for a specific budget month

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • month (path, required) — The budget month in ISO format (e.g. 2016-12-01) ("current" can also be used to specify the current calendar month (UTC))
  • category_id (path, required) — The id of the category
PATCH

/budgets/{budget_id}/months/{month}/categories/{category_id}

Update a category for a specific month

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • month (path, required) — The budget month in ISO format (e.g. 2016-12-01) ("current" can also be used to specify the current calendar month (UTC))
  • category_id (path, required) — The id of the category
GET

/budgets/{budget_id}/payee_locations

List payee locations

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
GET

/budgets/{budget_id}/payee_locations/{payee_location_id}

Single payee location

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • payee_location_id (path, required) — id of payee location
GET

/budgets/{budget_id}/payees

List payees

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • last_knowledge_of_server (query) — The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included.
GET

/budgets/{budget_id}/payees/{payee_id}

Single payee

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • payee_id (path, required) — The id of the payee
GET

/budgets/{budget_id}/payees/{payee_id}/payee_locations

List locations for a payee

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • payee_id (path, required) — id of payee
GET

/budgets/{budget_id}/payees/{payee_id}/transactions

List payee transactions

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • payee_id (path, required) — The id of the payee
  • since_date (query) — If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30).
  • type (query) — If specified, only transactions of the specified type will be included. "uncategorized" and "unapproved" are currently supported.
  • last_knowledge_of_server (query) — The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included.
GET

/budgets/{budget_id}/scheduled_transactions

List scheduled transactions

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • last_knowledge_of_server (query) — The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included.
GET

/budgets/{budget_id}/scheduled_transactions/{scheduled_transaction_id}

Single scheduled transaction

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • scheduled_transaction_id (path, required) — The id of the scheduled transaction
GET

/budgets/{budget_id}/settings

Budget Settings

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
GET

/budgets/{budget_id}/transactions

List transactions

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • since_date (query) — If specified, only transactions on or after this date will be included. The date should be ISO formatted (e.g. 2016-12-30).
  • type (query) — If specified, only transactions of the specified type will be included. "uncategorized" and "unapproved" are currently supported.
  • last_knowledge_of_server (query) — The starting server knowledge. If provided, only entities that have changed since `last_knowledge_of_server` will be included.
PATCH

/budgets/{budget_id}/transactions

Update multiple transactions

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
POST

/budgets/{budget_id}/transactions

Create a single transaction or multiple transactions

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
POST

/budgets/{budget_id}/transactions/bulk

Bulk create transactions

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
POST

/budgets/{budget_id}/transactions/import

Import transactions

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
DELETE

/budgets/{budget_id}/transactions/{transaction_id}

Deletes an existing transaction

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • transaction_id (path, required) — The id of the transaction
GET

/budgets/{budget_id}/transactions/{transaction_id}

Single transaction

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • transaction_id (path, required) — The id of the transaction
PUT

/budgets/{budget_id}/transactions/{transaction_id}

Updates an existing transaction

  • budget_id (path, required) — The id of the budget. "last-used" can be used to specify the last used budget and "default" can be used if default budget selection is enabled (see: https://api.youneedabudget.com/#oauth-default-budget).
  • transaction_id (path, required) — The id of the transaction
GET

/user

User info

31 endpoints auto-detected

Authentication

This API requires authentication: OAuth.

curl -X GET \
  "https://api.youneedabudget.com//budgets/{budget_id}/months"

api.youneedabudget.com · HTTPS only