Every request carries an API key as a bearer token:
Authorization: Bearer <api key>
You need the owner role on the company, and the company must be on a paid plan.
Zapier or
POS terminal, and click Create key.The key list then shows each key's label, its first eight characters (the prefix, for telling keys apart), when it was created, when it was last used, and whether it is active.
If your plan doesn't include API access, or the account has more active cards than its plan allows, the page shows an upgrade prompt instead of the form. Keys you already have keep working while you're over the card limit.
A key is tied to the company that was active when you created it. It can read and change that company's stores, templates, cards and customers, and nothing else. If you run several brands as separate companies, create one key per company and one connection per key.
A key has company-level access. It isn't bound to a store, and stamping with a key isn't limited by the per-store stamping rule that applies to staff.
Both actions are on the API keys page.
Anything using the key starts getting 401 on its next request.
A rejected key gets:
HTTP/1.1 401 Unauthorized
{"detail": "Unauthorized"}
This happens when:
The response is the same in every case. A client should treat any 401 as
"reconnect your Ponch account", not as an outage, and should not retry it.
Some endpoints you'll see in the playground are for the Ponch
dashboard only, and an API key gets 401 from them too. The
endpoint reference lists every endpoint an API key can call.
commit 5e140ef5493db7e98830f4b7ef4d620de5419518 Author: Peter Sanchez <peter@netlandish.com> Date: 2026-10-20T06:45:49-06:00 add proper title and descriptions to each page