FOR POWER USERS

Your ledger has an API, and the app is just another client of it.

Around sixty endpoints across sixteen groups, all under/api/v1. There are no private back doors: the Pinch app is generated from the same schema you get, so anything it can do, a script can do.

The full tour is still being written. It lands before launch, with worked examples for each of these. What's below is true today.

Tokens you issue, scope and revoke

Personal access tokens begin pinch_pat_. The secret is shown exactly once and only a hash is kept, so a token you lose is a token you replace rather than recover. Revoking one deletes it outright.

Scopes are a rank plus a grant. read andwrite are a rank — write implies read. Penny sits outside that rank as its own grant, because chat costs real money to run: no automation token gets it implicitly, not even one that can write.

What you can reach

  • Ledgeraccounts, transactions, splits, transfers, reviews
  • Filingcategories, tags, rules, correction log
  • Money inconnections, imports, import profiles
  • Analysisnet worth, spending, debt, recurring, investments
  • Pennyconversations and chat, behind its own grant

The OpenAPI document is served at/api/v1/schema, rendered three ways. The Swagger view executes: authorise with your own token and run real requests against your own ledger from the page. Operation ids are the handler names on purpose, so a generated client reads client.list_accounts(…) rather than something machine-shaped.

The same two answers, everywhere

Every failure returns one envelope, on every endpoint — status_code, a human-readable detail that is stable enough to display but never to parse, and an optionalextra carrying machine-readable specifics like per-field validation errors.

Every list takes ?cursor=&limit= and answers with items plus a next_cursor, ordered stably by creation. Pass the cursor back for the next page; null means you have reached the end.

And a command line, at launch

Pinch will ship with a pinch CLI over that same API. It is not published yet — this is what it will look like.

PINCH CLI · PLANNED FOR LAUNCH
$ pinch networth
$184,209.41 ▲ +2,140 (30d)
$ pinch tx list --unreviewed --json | jq length
23
$ pinch import statement.csv --profile chase --auto-file
committed 411 rows · 1 duplicate skipped
$ pinch penny "biggest category last month?"
Groceries — $842.19 across 31 transactions.
$

Want a token of your own?

Pinch opens a batch at a time. Leave your address and we'll send an invite when it's your turn.

Takes a few seconds — we'll ask you to confirm your address, then email your invite when it's your turn.