How to Sell API Access: Plans, Usage Billing and Keys
To sell API access, you put the API behind a paid subscription, issue each customer an API key when they pay, and charge for calls above an included allowance. On Pocketsflow you create the plan with a usage meter, grant and revoke keys from signed webhooks, and report calls from your backend; Pocketsflow bills the overage at the end of each period as the merchant of record.
Choose a pricing model for your API
An API can be sold in three common ways. Pocketsflow supports all three on one subscription.
- Flat plans: a monthly or yearly price with a fixed request limit that your API enforces. Simple to sell and to explain.
- Usage-based: a base price with included calls, then a price per 1,000 calls above it. Fair when customers use very different amounts.
- Prepaid credits: the buyer pays for a balance up front, and your backend deducts each call. Useful when you never want to bill after the fact.
How to sell API access with Pocketsflow, step by step
- Create the subscription. In Pocketsflow, create a subscription with the base price and the billing frequency: weekly, monthly or yearly. Add a free trial in days if developers need time to test, and set a callback URL so new subscribers return to your app with their subscription and customer IDs.
- Add a usage meter. On the Pro plan, open Usage and seats in the subscription editor, turn on Charge for usage and add a meter such as
api_calls. Set the included calls, the package size (1,000 means a price per 1,000 calls) and per unit, graduated or volume pricing. One subscription can carry up to five meters. - Put the checkout in front of your API. Link your pricing page to a hosted Pocketsflow checkout, or embed the checkout in the page. As the merchant of record, Pocketsflow handles sales tax and VAT on each payment.
- Issue keys from webhooks. Add a Pocketsflow webhook for
customer.subscription.created,invoice.payment_failedandcustomer.subscription.deleted. Verify theX-Pocketsflow-Signature-V2header, an HMAC-SHA256 of the timestamp and raw body, then create the customer's API key in your own system on created and revoke it on deleted. - Report usage from your backend. Count calls per customer and send them with
POST /subscriptions/{id}/usage, the meter and a quantity, using your Pocketsflow API key. Send an idempotency key so a retry never counts twice. - Watch the period close. Subscribe to
usage.period_closed. It carries the totals and the charge status, so your API can limit an account whose overage failed. - Test, then go live. Run the whole flow with a
pk_test_key, which only touches test data and never charges a real card. Then switch to apk_live_key.
What usage billing costs a customer on Pocketsflow
Pocketsflow computes every meter in integer cents and rounds each line half up to the cent once. The chart prices a per-unit meter at $1 per 1,000 calls with 10,000 calls included each period, and shows the Pocketsflow fee on that usage payment. The overage is one payment per period with the standard fee, 4.7% + $0.30 as of November 2026.
| Point | Usage charge | Pocketsflow fee |
|---|---|---|
| 50k calls | $40 | $2.18 |
| 100k calls | $90 | $4.53 |
| 250k calls | $240 | $11.58 |
| 500k calls | $490 | $23.33 |
| 1M calls | $990 | $46.83 |
Source: Pocketsflow usage billing (docs.pocketsflow.com) and pricing (pocketsflow.com/pricing), 4.7% + $0.30 per payment, November 2026. Per-unit meter at $1 per 1,000 calls, 10,000 included. Usage only, before the base subscription price.
A customer who makes 250,000 calls in a period pays $240.00 for usage on top of the base price. The Pocketsflow fee on that payment is $11.58, so you keep $228.42. At 1 million calls the usage charge is $990.00. If the heavy users should pay less per call, switch the meter to graduated or volume tiers.
License keys for SDKs and desktop clients
Pocketsflow can also issue each subscriber a license key. Its activation limit follows the subscriber's seat count, and it stops validating when the subscription is canceled or expires. That suits an API sold through a CLI, a desktop app or a plugin: the client calls POST /licenses/activate once and POST /licenses/validate on launch. For a plain HTTP API, keys issued by your own system from the webhooks are usually simpler.
Keep usage reporting light on Pocketsflow
Pocketsflow accepts up to 300 usage reports a minute per subscriber. Do not report every request. Count calls in your API, then send one report per customer every few minutes: one report with a quantity of 500 costs the same as 500 reports of 1. Reports must land in a billing period that is still open, so flush the counts before a period ends. If an overage charge fails, Pocketsflow retries it 1, 3, 5 and 7 days later.
When Pocketsflow is not the best fit for an API
Usage meters on Pocketsflow need the Pro plan, $119 a month as of November 2026. If your API only needs a flat monthly price with a hard limit, a plain Pocketsflow subscription does the job on any plan, and prepaid credits avoid billing after the fact. If you already run usage billing on Stripe Billing and file sales tax yourself, staying there may be simpler than moving. Pocketsflow fits when you want to sell worldwide without registering for sales tax and VAT in each country.
Where to go next
Read usage-based billing for SaaS for graduated and volume tiers in depth, or API product ideas if you are still picking what to build. Start at Pocketsflow for SaaS, check the fee on the pricing page, or let an AI app set the plan up through the Pocketsflow MCP server.