Subscriptions & Plans
Skip this page if you don't sell recurring subscriptions through GeckoGuard. These endpoints are only useful when your end users (the customers buying licenses from you) have GeckoGuard-managed subscription plans on top of their licenses.
If your model is "buy a license, use it forever" (or "buy a license that expires after N days"), ignore everything on this page — license expiration is configured per-license via expiresAt / expiresAfterDays and doesn't need subscriptions.
Plans
| Method | Endpoint | Auth | Description |
|---|---|---|---|
GET | /v1/dashboard/plans?productId= | JWT | List subscription plans available for a product |
Plans are configured in the dashboard. Each plan has an id, name, priceCents, interval (month / year), and a set of feature entitlements.
Subscriptions
| Method | Endpoint | Auth | Description |
|---|---|---|---|
GET | /v1/dashboard/subscriptions | JWT | List the calling user's subscriptions across all products |
POST | /v1/dashboard/subscriptions/start | JWT | Start a subscription on a plan |
POST | /v1/dashboard/subscriptions/cancel | JWT | Cancel an active subscription (cancels at period end by default) |
POST | /v1/dashboard/subscriptions/reactivate | JWT | Re-enable a subscription that was cancelled but not yet expired |
The end user calls these themselves (via your dashboard or end-user portal). Server-to-server, the caller's JWT determines which user's subscriptions are affected.
Entitlements
| Method | Endpoint | Auth | Description |
|---|---|---|---|
GET | /v1/dashboard/entitlements | JWT | Returns the calling user's effective entitlements — which features they have access to, and on which plan. |
Use entitlements rather than checking the subscription record directly: a user might have an entitlement granted via promotion, gift, or override, not just a paid subscription.
Billing
Outbound billing notifications (Polar webhooks) are received at /v1/billing/polar-webhook and are managed internally — you don't call these endpoints. Customer-facing checkout / billing portal links are exposed through the dashboard UI.