Productsup

List an export template's revision history

Returns the export template's publish history, newest first. Each entry is metadata only - the published content is available from GET /V2/export-templates/{id}/revisions/{revisionId}. Entries carry who published them (`publishedBy`) and what they changed (`changeSummary`), both recorded at publish time, so the history renders without loading any snapshot. `revisionNumber` is null for revisions created through the legacy `POST /V1/export-templates/{id}/commit` path, which recorded that a publish happened without numbering or storing the snapshot. **Authorization.** Stricter than reading the template itself: admin, internal user and internal viewer are unrestricted, but an external user must own the template. Sharing an account with the owner is not sufficient.

GET
/V2/export-templates/{id}/revisions
AuthorizationBearer <token>

Productsup Keycloak JWT bearer token.

In: header

Path Parameters

id*integer

Export template ID

Query Parameters

firstResult?integer

Zero-based offset of the first result.

Default0
Range0 <= value
maxResults?integer

Page size. Defaults to 50, capped at 1000.

Default50
Range1 <= value <= 1000

Response Body

application/json

application/json

application/json

curl -X GET "https://export-template-api.productsup.com/V2/export-templates/0/revisions"
{
  "data": [
    {
      "revisionId": "01980f10-5b04-7845-b0d5-66861c6cabb0",
      "revisionNumber": 3,
      "active": true,
      "live": true,
      "createdAt": "2026-09-01T10:22:31+00:00",
      "userId": "59be863f-f551-4c2b-8ca2-5a227343e070",
      "source": "API",
      "publishedBy": {
        "userId": "59be863f-f551-4c2b-8ca2-5a227343e070",
        "displayName": "Jane Doe"
      },
      "changeSummary": {
        "templateDetails": {
          "added": 1,
          "removed": 0,
          "changed": 2
        },
        "attributes": {
          "added": 0,
          "removed": 0,
          "changed": 1
        },
        "analyzerTests": {
          "added": 0,
          "removed": 0,
          "changed": 0
        },
        "metadata": {
          "added": 0,
          "removed": 0,
          "changed": 0
        }
      }
    }
  ],
  "pagination": {
    "firstResult": 0,
    "maxResults": 50,
    "count": 5,
    "total": 5
  }
}
{
  "errors": {
    "message": "Resource access denied."
  }
}
{
  "errors": {
    "message": "Resource access denied."
  }
}