From 85c89e0dabf5cbd2fd64815c8730f546a64a11b5 Mon Sep 17 00:00:00 2001 From: Stephen Dolan Date: Tue, 29 Sep 2026 09:34:10 -0400 Subject: [PATCH] docs: correct API limitations for payee and category creation The YNAB API supports creating payees, categories, category groups, and accounts; the SDK exposes createPayee, createCategory, createCategoryGroup, and createAccount. The only remaining gap among the listed operations is updating accounts. Point readers at `ynab api POST` so payee creation works with the commands on main. Fixes #47 Co-Authored-By: Claude Opus 5.5 --- CLAUDE.md | 7 ++----- README.md | 8 +++++++- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index e14f8ae..4d3c85b 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -97,12 +97,9 @@ All API calls go through `YnabClient.withErrorHandling()` which catches errors a ## API Limitations -YNAB API does not support: -- Creating categories or category groups -- Creating payees -- Creating or updating accounts (beyond initial creation) +YNAB API does not support updating accounts. That must be done through YNAB's web/mobile apps. -These operations must be done through YNAB's web/mobile apps. +The API does support creating payees, categories, category groups, and accounts (see the `create*` methods in the `ynab` SDK's `PayeesApi`, `CategoriesApi`, and `AccountsApi`). Before documenting an API limitation, confirm it against the SDK in `node_modules/ynab/dist/apis/` rather than prior docs. ## Testing diff --git a/README.md b/README.md index 9db1a1d..a46e7d7 100644 --- a/README.md +++ b/README.md @@ -135,7 +135,13 @@ All commands return JSON. Use `--compact` for minified output. ## API Limitations -The YNAB API does not support creating categories, category groups, or payees. Use the web or mobile app for these. +The YNAB API does not support updating accounts. Use the web or mobile app for this. + +The API supports creating payees, categories, and category groups. Use raw API access for these: + +```bash +ynab api POST /plans/{plan_id}/payees --data '{"payee": {"name": "Coffee Shop"}}' +``` Rate limit: 200 requests/hour per token. If exceeded, wait 5-10 minutes.