1. OpenAPI (Demo)
  2. Billing
  3. Update subscription settings
ReadmeGitHub
  • Platform API overview
  • Quickstart
  • POSTCreate a member session
  • POSTRefresh a member session
  • DELETERevoke a member session
  • GETList organizations
  • POSTCreate an organization
  • GETGet an organization
  • PATCHUpdate an organization
  • GETList organization members
  • POSTInvite an organization member
  • DELETERemove an organization member
  • PATCHUpdate a member role
  • GETList projects
  • POSTCreate a project
  • GETGet a project
  • DELETEArchive a project
  • PATCHUpdate a project
  • GETList project environments
  • POSTCreate a project environment
  • GETList project documents
  • POSTCreate a project document
  • GETGet a document
  • DELETEArchive a document
  • PATCHUpdate a document
  • POSTPublish a document
  • GETList contacts
  • POSTCreate a contact
  • GETGet a contact
  • DELETEDelete a contact
  • PATCHUpdate a contact
  • GETList product events
  • GETGet analytics overview
  • GETList workflows
  • POSTCreate a workflow
  • GETList workflow runs
  • GETList webhook subscriptions
  • POSTCreate a webhook subscription
  • GETGet a webhook subscription
  • DELETEDelete a webhook subscription
  • PATCHUpdate a webhook subscription
  • GETList webhook deliveries
  • POSTReplay a webhook delivery
  • GETList files
  • POSTCreate a multipart file upload
  • GETGet file metadata
  • DELETEDelete a file
  • GETGet current subscription
  • PATCHUpdate subscription settings
  • GETList invoices
  • GETGet metered usage
  • GETList API keys
  • POSTCreate an API key
  • POSTRevoke an API key
  • GETList audit logs
  • GETList exports
  • POSTCreate an export
  • GETGet API health
PATCH/organizations/{organizationId}/billing/subscription

Update subscription settings

Updates seats, budget alerts, cost centre, and renewal preference.

Send request

Use the documented inputs to call this endpoint directly.

API serverbase URL
Bearer tokenBearerAuthoptional
Stored only in this browser for the BearerAuth security scheme and reused on every API page in this group.

Parameters

Values are applied to the request and the example on the right.

organizationIdpath · stringrequired

Opaque organization identifier.

Idempotency-Keyheader · string · uuidoptional

Unique key for retry-safe writes, retained for 24 hours.

Request body

application/jsonrequired
seatsintegeroptional
budget_alertsarray<integer>optional
cost_centerstringoptional
renewal_preferenceenumoptional

Values: "automatic" · "manual"

Responses

200application/json

Subscription updated.

{
  "id": "sub_01J8FJ7M3Q9P2V4K6N5",
  "plan": "enterprise",
  "status": "active",
  "seats": 42,
  "billing_interval": "monthly",
  "current_period_start": "2026-09-01T00:00:00Z",
  "current_period_end": "2026-10-01T00:00:00Z",
  "renewal_preference": "automatic",
  "cost_center": "PL-ENG-042",
  "budget_alerts": [
    80,
    95,
    100
  ],
  "payment_status": "paid"
}
idstringoptional
planstringoptional
statusstringoptional
seatsintegeroptional
billing_intervalstringoptional
current_period_startstring · date-timeoptional
current_period_endstring · date-timeoptional
renewal_preferencestringoptional
cost_centerstringoptional
budget_alertsarray<integer>optional
payment_statusstringoptional
422

Seat count is lower than active members.

Get current subscription< PreviousList invoicesNext >

Powered by heyo

curl --request PATCH \  'https://api.demo.heyo.example/v3/organizations/org_01J8F1Q6N6VTX4E8W9R2D0A7B3/billing/subscription' \  --header 'Idempotency-Key: 5ba89923-8c6d-44a3-9ab7-2fbbdb865f9a' \  --header 'Content-Type: application/json' \  --data '{  "seats": 50,  "budget_alerts": [    80,    95,    100  ],  "cost_center": "PL-ENG-042",  "renewal_preference": "manual"}'
{  "id": "sub_01J8FJ7M3Q9P2V4K6N5",  "plan": "enterprise",  "status": "active",  "seats": 42,  "billing_interval": "monthly",  "current_period_start": "2026-09-01T00:00:00Z",  "current_period_end": "2026-10-01T00:00:00Z",  "renewal_preference": "automatic",  "cost_center": "PL-ENG-042",  "budget_alerts": [    80,    95,    100  ],  "payment_status": "paid"}