API Versioning
How TotalAccess versions its API and manages breaking changes
Overview
TotalAccess uses a dual-layer versioning strategy to ensure backward compatibility while allowing the API to evolve:
- Major versions are embedded in the URL path (
/api/v1/,/api/v2/) - Minor versions are negotiated via the
X-API-Versiondate header
The current API version is 2026-07-01. If you omit the X-API-Version
header, the latest version is used.
Major Versions (URL Path)
Major versions represent breaking changes:
- Removed fields from responses
- Changed field types
- New required request fields
- Removed endpoints or actions
- Changed authentication flow
When a major version is released, the previous version remains available for a minimum of 12 months before being sunset.
URL Convention
https://totalaccess.co.za/api/v1/public/data ← Current (v1)
https://totalaccess.co.za/api/v2/public/data ← Future (v2)Minor Versions (Header)
Minor versions represent additive changes:
- New optional request fields
- New response fields
- New endpoints or actions
- New webhook events
Minor versions are date-based and negotiated via the X-API-Version header.
Usage
POST /api/v1/public/data HTTP/1.1
X-API-Key: ta_sk_xxxxxxxxxxxx
X-API-Version: 2026-07-01
Content-Type: application/json
{
"action": "list-work-items",
"limit": 50
}Response Headers
All API responses include the version that handled the request:
HTTP/1.1 200 OK
X-API-Version: 2026-07-01
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 99
X-RateLimit-Reset: 2026-07-22T12:01:00ZResponse Body
All API responses include meta.api_version in the response body:
{
"success": true,
"data": [...],
"meta": {
"api_version": "2026-07-01",
"request_id": "req_abc123"
}
}Deprecation Policy
When an endpoint or action is deprecated:
- The
Deprecation: trueheader is included in responses - The
Sunsetheader indicates when the endpoint will be removed - The deprecation is documented in the Changelog
- A migration guide is published
Example Deprecation Response
HTTP/1.1 200 OK
Deprecation: true
Sunset: Sat, 01 Jan 2027 00:00:00 GMT
X-API-Version: 2026-07-01Deprecation Timeline
| Phase | Duration | Behavior |
|---|---|---|
| Active | 0–6 months | Endpoint works normally, deprecation headers added |
| Warning | 6–12 months | Endpoint works, logs warnings, deprecation headers |
| Sunset | 12 months | Endpoint returns 410 Gone with migration guide URL |
Migration Guide Template
When a major version bump occurs, a migration guide is published at
/docs/migrations/v1-to-v2 with:
- Removed fields — List of fields no longer returned
- Changed fields — Fields with new types or formats
- New required fields — Fields that must now be provided
- New endpoints — Endpoints added in the new version
- Code examples — Before/after snippets for common operations
Changelog
All version changes are documented in the Changelog.