# Versioning

The Layer REST API is **path-versioned**. Every endpoint lives under a version prefix:

```plaintext
https://api.app.layer.ai/api/v1/…
```

`v1` is the only version today. When a breaking change is required, it will be introduced under a new prefix (`/v2`) so existing integrations on `/v1` keep working.

## What counts as breaking

Treat these as **non-breaking** and build tolerantly so they don’t break your integration:

* New endpoints, new optional request fields, and **new fields in responses**.
* New enum values (for example, a new run status or error code).

Treat these as **breaking** (they’d ship under a new version):

* Removing or renaming an endpoint, field, or enum value.
* Changing a field’s type or a required request field.

Note

Parse responses leniently — ignore unknown fields rather than rejecting them — and handle unknown enum values gracefully. There is no formal deprecation-window policy published yet.
