API Versioning
Overview
The Extend API uses versioning to ensure that your integration remains stable as we evolve our API. If you’re using the Extend SDK, you don’t need to worry about this - the SDK will handle the versioning for you. If you’re using the API directly, the version is specified using the x-extend-api-version header in your requests.
Backwards-compatible Changes
We consider the following changes to be backwards-compatible:
- Adding new API resources.
- Adding new optional request parameters to existing API methods.
- Adding new properties to existing API responses.
- Changing the order of properties in existing API responses.
- Changing the length or format of opaque strings, such as object IDs, error messages, and other human-readable strings.
- This includes adding or removing fixed prefixes on IDs.
- Make sure that your integration can handle Extend-generated object IDs, which can contain up to 255 characters.
- Adding new event types.
- Make sure that your webhook listener gracefully handles unfamiliar event types.
Specifying a Version
To specify an API version, include the x-extend-api-version header in your requests.
The API version is specified in the format YYYY-MM-DD and corresponds to the date of the release that introduced the breaking changes.
Important: If you don’t specify a version:
- When using an API key made before April 21, 2025, you’ll automatically use the legacy version (
2024-12-23) - When using an API key made after April 21, 2025, you will receive an error and be required to specify an API version.
- Some organizations may default to a legacy version for backward compatibility predating the introduction of the
x-extend-api-versionheader. Reach out to the Extend team if you need to change this.
Webhook Endpoints
When you create a webhook endpoint in the Extend dashboard, you will be prompted to select the API version you’d like to use. All webhook notifications sent to that endpoint will include the same API version in the x-extend-api-version header, ensuring consistency in payload formats.
We strongly recommend keeping the versions defined on your webhook endpoint in sync with the version specified in your requests.

