YYYY-MM format, such
as 2026-10, and apply to API requests, responses, webhook payloads, and SDK types.
Choosing a version
Polar maintains three API versions at a time:
Don’t start a new integration on Deprecated. Use Next only if you need an upcoming
feature and can adapt to changes during the development cycle.
Version lifecycle
Polar releases a new API version during the first week of January, April, July, and October. At each release:- Deprecated is removed and no longer accepts requests.
- Current becomes Deprecated.
- Next becomes Current and its API contract is frozen.
- A new Next version is created for ongoing development.
Pinning API requests
Set the version with thePolar-Version request header. The base URL and endpoint
paths remain the same:
404 Not Found.
Pinning webhooks
Webhook endpoints are versioned independently from API requests so their payloads remain stable across release cycles. Setapi_version when you create an endpoint:
api_version, the endpoint uses Current. Only supported API versions
are accepted.
The selected version determines which fields are included in future raw event
payloads. You can update an endpoint’s api_version, but the change applies only
to events created afterward. Existing events retain their original version, so a
redelivery has the same payload contract as the first delivery.
Every delivery includes the selected version in the webhook-api-version header.
Raw JSON payloads also include it in the api_version field.
Use the same version for API requests and webhooks unless you intentionally support
different contracts. Updating the version used by your API client does not migrate
existing webhook endpoints; upgrade them separately.
Pinning SDKs
The Python SDK and TypeScript SDK include typed clients and models for each supported API version. Importing a versioned client automatically sets the matchingPolar-Version header:
- Python
- JavaScript
Upgrading versions
Upgrade before your pinned version is removed:- Review the new version’s API reference and release notes.
- Change the
Polar-Versionheader or versioned SDK import in your sandbox environment. - Run your integration tests and update code for changed endpoints, fields, or webhook payloads.
- Upgrade webhook endpoints that should use the new contract.
- Deploy the API client change and confirm the
Polar-Versionresponse header.

