API pipeline: Buy a Pro plan for up to 10 projects

Goal: buy a Pro plan (monthly, yearly or lifetime) that makes up to 10 of your projects Pro, attach and release projects, stop auto-renew.

Steps

1. Offer and state.

GET /v0/my/plan
→ {"active": false, "auto_renew": false, "projects": [], "slots": 10, "seats_total": 18, "seats_left": …,
   "project_usd": "18.00",
   "prices": [{"kind": "monthly", "usd": "81.00"}, {"kind": "yearly", "usd": "818.18"}, {"kind": "lifetime", "usd": "999.00"}]}

Prices above are those of 2026-10-15; read them from this call. lifetime is a limited beta offer (seats_left).

2. Quote with a coupon (optional). GET /v0/my/coupons/quote?coupon=<clip>&target=yearly → list_usd, discount_usd, charged_usd, enough. API pipeline: Redeem a coupon

3. Buy.

POST /v0/my/plan
{"kind": "monthly"}                 (optional "coupon": "<clip>")
→ {"active": true, "kind": "monthly", "until": "2026-11-15T10:00:00Z", "auto_renew": true, "projects": [], …,
   "list_usd": 81.0, "discount_usd": 0.0, "charged_usd": 81.0}

Buying again while a monthly or yearly plan is active adds its period after the current until (also to switch between monthly and yearly). Lifetime has no end.

4. Attach a project. POST /v0/my/plan/projects/<project> → the project, now Pro through the plan.

5. Release a project. DELETE /v0/my/plan/projects/<project> → the project, now Free; its campaigns and oracles stop.

6. Stop auto-renew. DELETE /v0/my/plan → "auto_renew": false; the plan stays until until.

Behind

Rules

API surface

Endpoint Purpose FE AI / oracle
GET /v0/my/plan Offer and state yes yes
POST /v0/my/plan Buy or extend yes yes
DELETE /v0/my/plan Stop auto-renew yes yes
POST /v0/my/plan/projects/{nonce} Use a slot yes yes
DELETE /v0/my/plan/projects/{nonce} Release a slot yes yes

Index: API pipelines — index

Mentioned