# Evergreen Comply Public API versioning policy

Last updated: August 21, 2026.

## Stable versions

Stable public endpoints include a major version in the URL, currently `/api/public/v1`. Backward-compatible additions may ship within the same major version. A change that removes or renames fields, changes their meaning, or otherwise breaks a conforming client receives a new major version.

Every API response includes `API-Version`. The canonical machine-readable contract is [OpenAPI 3.1](https://www.evergreencomply.com/openapi.json).

## Deprecation

Before a stable route is removed, its responses advertise:

- `Deprecation`: the structured deprecation date.
- `Sunset`: the date after which the route can stop responding.
- `Link` with `rel="deprecation"`: migration guidance.
- `Link` with `rel="successor-version"`: the replacement endpoint.

Evergreen Comply targets at least six months between a published deprecation date and sunset. Security, privacy, legal, or abuse-prevention emergencies may require a faster change.

## Current migration

The unversioned `/api/public/courses`, `/api/public/courses/{courseId}`, and `/api/public/status` compatibility routes:

- Are deprecated on February 1, 2027.
- Sunset on August 1, 2027.
- Are replaced by the equivalent paths under `/api/public/v1`.

New integrations should use the versioned routes now.

## Support

For migration questions, email support@evergreencomply.com or use the [Evergreen Comply contact form](https://www.evergreencomply.com/contact).
