Upgrade guide

Learn more about our version support policy and the steps you need to take to upgrade your app to a newer API version.

Support policy

Prepr guarantees technical assistance and security updates for each new version of the REST API for at least 32 months.

Please note that we do not change your API version automatically to avoid breaking your code. Once you are ready to upgrade, please follow the instructions below.

How to upgrade to a newer API version

Your API version controls the API behavior you see (for example, how your schema is generated and what fields you can request). When a major or breaking change is introduced to the API, Prepr releases a new version based on the release date. In this case, we encourage our customers to upgrade their API versions as soon as possible.

To upgrade to a newer API version, you need to generate a new access token for your Prepr environment as follows:

  1. Go to Settings > Access tokens and click Add access token.

  2. On the New access token details page, provide the name of the token.

  3. Next, define permissions for this access token under REST Permissions. Permissions allow you to choose which content item statuses are accessible for an access token.

  4. Click Save to confirm the settings.

Create a new access token

Once you've created a new access token, you'll notice the new API version indicated on the Access tokens overview page. By default, the new access token uses the latest API version on the token generation date.

Released REST API versions

You can check out the previous releases below.

versionrelease dateend-of-life on
2023-11-022023-11-06t.b.a
all before-t.b.a

Version 2023-11-02

This version adds Draft Mode support and performance updates.

What's new

  • A new Content Item parameter last_published_on has been added. This field returns the timestamp of the last time a new version was published.
  • The label for all Content Items has been updated from Publication to ContentItem.

Enabling Draft Mode

The following changes are active if you switch on Draft Mode.

publishing
The publish_on field is only required when you acutely want to publish or schedule the current version of the item. If the workflow_stage is set to Done, and you add a publish_on date/time the item will be published on that specified date/time.

When updating an existing content item, changing the workflow_stage to something else than Done will no longer unpublish the item. To unpublish an existing content item, use the new unpublish endpoint.

PUT: /content_items/{id}/{locale}/unpublish

status/workflow
The status field for a content item is renamed to workflow_stage. The response and request params are simplified:

// Draft Mode Off:
"status": {
    "nl-NL": {
        "id": "cff13c2a-615a-4f85-a50d-cc05104e6d6b",
        "created_on": "2018-12-24T09:09:25+00:00",
        "changed_on": null,
        "label": "Status",
        "body": "In progress"
    }
}

// Draft Mode On:
"workflow_stage": {
    "nl-NL": "In progress"
}

Please take in mind that if you request that status in your ?fields param, you need to update this to workflow_stage too.

webhook events
Everytime a new version is published the content_item.published event is sent to your webhook endpoint. With drafts off this event is only triggered once (on first publish).