> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scan.com/llms.txt
> Use this file to discover all available pages before exploring further.

# API versioning

> What changes we will make in v2, and how we will warn you

Integrate on **`/api/v2` only**. `/api/v1` is legacy and is not described here.

## Compatible (no notice required)

* Add a field, optional parameter, or HTTP header
* Add an enum value (ignore unknown `visits[].status` strings; do not fail)
* Add an endpoint
* Add a webhook event type (ignore unknown `X-Scan-Event` values)

## Incompatible (notice + migration guide)

* Remove or rename a field
* Change a field's meaning or type
* Remove an endpoint
* Change auth
* Make an optional property required

Incompatible changes get **six months** of overlap after announcement, plus
`Deprecation` / `Sunset` headers when we retire a field.

Native fields added for interoperability (`first_name`, `date_of_birth_iso`,
`cpt_system`, `accession_id`, `delivery=url`) are additive. Old fields stay
until a dated deprecation.
