Versioning
All endpoints are currently at their initial version. No version header or parameter is needed today.
Strategy
Convert.FAST uses per-endpoint versioning — when a breaking change ships to a specific endpoint, only that endpoint gets a new version. The rest of the API is unaffected.
Three equivalent ways to request a specific version:
| Method | Example |
|---|---|
| Route suffix | POST /convert/v2 |
| Query string | POST /convert?version=2 |
| Header | X-Fast-Endpoint-Version: 2 |
If multiple are provided, the route suffix takes priority, then query string, then header.
What counts as a breaking change
These changes increment an endpoint's version:
- Removing or renaming a response field
- Changing the type or nesting structure of a response object
- Removing a required request parameter or changing its meaning
What does NOT count
These ship without a version bump and are never considered breaking:
- Adding new fields to response objects
- Adding new converters or formats
- Adding new optional request parameters
- Adding entirely new endpoints
- Retiring a converter or format pair (available converters are discoverable via
GET /convert/conversions)
Default behavior
If no version is specified, you get the latest version of each endpoint. When a v2 ships for an endpoint, unversioned requests will continue to receive v1 behavior for a deprecation period before the default advances.
Current status
No breaking changes have shipped. All endpoints are at their initial version — no version parameter is needed.