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

# API versioning

> Key changes in API version 2023-12-01 and how to migrate existing workflows.

The current Prequel Export API version is `2023-12-01`. Pin your integration to it by sending the version header on every request:

```bash title="Version header" icon="terminal" theme={null}
X-Prequel-Api-Version: 2023-12-01
```

Below are the key changes from the base API version to `2023-12-01` and tips for migrating existing workflows.

## Pagination

List endpoints now return paginated responses instead of the full result set. The default page size is 10 items, with a maximum of 100.

Paginated responses include `has_next` and `next_url`. To read a full list, follow `next_url` until `has_next` returns `false`.

## Vendor-shaped configuration

Source and destination configuration moved from a flat object to a nested, vendor-specific object. For example, a Postgres source now nests its connection fields under a `postgres` key rather than at the root of the request body.

## Request format changes

* **Recipients** no longer accept a `schema` field and instead use `id_in_provider_system` for tenant identification.
* **Magic links** now require an existing `recipient_id` rather than creating a recipient inline.

## Endpoint simplification

Routes with an `/export/` prefix are deprecated. Use the non-prefixed endpoints (for example, `/destinations` and `/sources`) instead of `/export/destinations` and `/export/sources`.

## Migration checklist

<Steps>
  <Step title="Add the version header">
    Send `X-Prequel-Api-Version: 2023-12-01` on every request.
  </Step>

  <Step title="Handle pagination">
    Update any code that reads list endpoints to follow `next_url` until `has_next` is `false`.
  </Step>

  <Step title="Nest vendor configuration">
    Move source and destination connection fields into their vendor-specific object.
  </Step>

  <Step title="Update recipients and magic links">
    Replace `schema` with `id_in_provider_system` on recipients, and pass an existing `recipient_id` when creating magic links.
  </Step>

  <Step title="Remove /export/ prefixes">
    Point requests at the non-prefixed endpoints.
  </Step>
</Steps>
