# FieldRobin REST API versioning and deprecation policy

## Versioning

The supported REST API is versioned in the URL. Use `/api/v1` for current integrations. The unversioned `/api/health` endpoint is a deployment health check and is not a general API base URL.

FieldRobin makes additive, backward-compatible changes within a major version. New breaking behavior ships under a new version such as `/api/v2` after a migration notice.

## Deprecation

When a route or field is deprecated, FieldRobin documents the replacement here and in the public OpenAPI document. Deprecated responses include the standard `Deprecation: true` header and a `Sunset` HTTP-date when a removal date is scheduled. A `Link` header may point to the replacement or this policy.

Clients should log these headers, migrate before the sunset date, and avoid assuming undocumented fields or routes. A sunset date is a target for removal, not permission to ignore the replacement.

## Errors and limits

JSON API errors include `code`, `message`, `resolution`, and `status`. Rate-limit responses include `RateLimit-Limit`, `RateLimit-Remaining`, `RateLimit-Reset`, and `RateLimit-Policy`; `429` responses also include `Retry-After`.

- [OpenAPI document](https://fieldrobin.com/openapi.json)
- [Developer resources](https://fieldrobin.com/developers)
- [Contact FieldRobin](https://fieldrobin.com/contact)
