Billing
Get the plan on this account
Read from our own database rather than from Stripe: every subscription change arrives as a webhook and is mirrored on write, so this answers from one row and keeps answering when the payment provider is slow.
subscription is absent for an account that has never bought a plan. That is the
ordinary case and a 200 with an empty envelope, not a 404.
renews_at is the end of the paid period: when the next allowance lands, or - when
cancel_at_period_end is true - when the plan stops. Treat an unrecognised status the
same way you treat no subscription at all.
AuthorizationBearer <token>
API key: Authorization: Bearer gsk_.... Used by the Godot plugin, the MCP server and the engine.
In: header
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/v1/subscription"{ "subscription": { "product_id": "string", "status": "active", "renews_at": "2019-08-24T14:15:22Z", "cancel_at_period_end": true }}