Skip to main content
POST
/
v1
/
api
/
billing
/
checkout
Start a checkout session
curl --request POST \
  --url https://api.hq.zone/v1/api/billing/checkout \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "plan_slug": "<string>"
}
'
{
  "url": "<string>"
}

Returns a Stripe redirect URL

This doesn’t change the subscription directly — it creates a Stripe Checkout session and returns { "url": "https://checkout.stripe.com/..." }. Redirect the customer to that URL to complete payment. The new plan is provisioned asynchronously after Stripe confirms payment, so it appears shortly afterward, not in this response. Admin only; returns 503 if billing isn’t configured.

Authorizations

Authorization
string
header
required

Personal Access Token. Send as Authorization: Bearer hq_pat_....

Body

application/json
plan_slug
string
required

Response

Stripe Checkout URL

url
string
required