# Versioning (/docs/developers/versioning)

Which Bloss API versions exist, how changes are announced, and what happens to the Campaign API (v0).

Bloss has two API versions. The version is the start of every path.

| Version | Path | Status |
| --- | --- | --- |
| [Platform API](/docs/developers/platform-api) | `/api/v1` | Current. New features go here. |
| [Campaign API](/docs/developers/authentication) | `/api/v0` | Deprecated. Keeps working, with no new features. |

## How changes ship [#how-changes-ship]

- **Additive changes** (new endpoints, new fields, new optional parameters) can ship at any time. Write clients that ignore fields they don't know.
- **Breaking changes** need a new version. Anything that would break v1 is announced ahead of time in the [changelog](/docs/get-started/changelog).

## The Campaign API (v0) is deprecated [#the-campaign-api-v0-is-deprecated]

The Campaign API keeps working as it does today: your keys, endpoints and responses don't change. It gets no new features, and its retirement will be announced in the [changelog](/docs/get-started/changelog) well ahead of time.

To move an integration to v1, see [Compared with the Campaign API](/docs/developers/platform-api#compared-with-the-campaign-api-v0). The Brand API reads the same campaign numbers, plus creators, videos, payouts and more.

## Machine-readable specs [#machine-readable-specs]

Both versions publish an OpenAPI 3.1 document. Use it to generate a typed client, or import it into Postman or Insomnia. The references in these docs are generated from the same files.

| Version | Spec | Reference |
| --- | --- | --- |
| v1 | `https://www.bloss.app/api/v1/openapi.json` | [Platform API reference](/docs/developers/platform-api-reference) |
| v0 | [`/api/v0/openapi.json`](/api/v0/openapi.json) | [Campaign API reference](/docs/developers/api-reference) |
