Versioning
How Vantage API versions work: choosing a version per request, your account's pinned version, versioned webhooks, upgrading, and the changelog.
Versions are dates
Each Vantage API version is named by a date, such as 2026-10-01. A breaking change ships under a new date. Additive changes, such as a new field or a new endpoint, land in every version.
Choosing a version
Each request is served in one version, picked in this order:
The
X-Terra-Versionheader on the request, if you send one.Your account's pinned version, if it has one.
Otherwise, the latest version.
Every response carries an X-Terra-Version header stating the version it was served in.
curl 'https://vantage-sandbox.tryterra.co/api/v1/products/1' \
-u 'YOUR_DEV_ID:YOUR_API_KEY' \
-H 'X-Terra-Version: 2026-10-01'An unknown version returns 400 with code invalid_api_version. The detail lists the supported versions. See Errors.
Webhooks
Webhook deliveries use your account's pinned version, or the latest version if your account has no pin. The request header does not apply to them. Each delivery carries the version it was rendered in as an X-Terra-Version header.
If you process deliveries asynchronously, store the X-Terra-Version header with the body, so the worker knows which shape it is reading. See Webhooks.
Upgrading
Most accounts have no pin and always receive the latest version. If your account is pinned to an older version:
Send
X-Terra-Versionwith the new date on individual requests, and check your code handles the new shape.Update your webhook handler to accept the new shape, using the
X-Terra-Versionheader on each delivery to tell the two apart.Ask Terra to move or remove your account's pin. There is no self-serve setting yet.
Once the pin changes, requests without the header and all webhook deliveries use the new version.
Changelog
2026-10-01
Catalogue variants carry typed fields. See Core concepts.
Variant
variant_nameis renamed toname.Variant
descriptive_attrs_overrideis replaced bydescription.Variant
variant_defining_attrsis replaced byturnaround_daysandcollection_method.Variant
variant_availabilityis replaced byavailability, a string:unknown,in_stockorout_of_stock.Variant
requires_activationis added.Product
model_descriptive_attrsis removed. Its collection method is nowcollection_methodon each variant.Product
availabilityis a string instead of an integer.Webhook payloads are unchanged.
2026-09-27
Baseline. Catalogue variants carry attribute bags and integer availability.
Last updated
Was this helpful?