Skip to main content

Entity Versioning & Audit API

Overview

A cross-cutting capability, not tied to a single resource: retrieve the version history of any versioned entity, fetch one specific historical version, or list soft-deleted records for a given entity type. This applies across most resources documented elsewhere in this reference — email templates, campaigns, forms, pages documents, journeys, webhooks, and more.

Authentication

All endpoints require API key authentication:

X-API-Key: your-api-key-here

Supported entity types

The entityType parameter accepts one of:

ai_assistant, ai_thread, ai_vector_index, business_unit, tenant_membership, business_unit_grant, email_settings, email_template, email_template_snippet, form, form_theme, form_submission, marketing_audience, marketing_list, marketing_campaign, marketing_email, marketing_email_sending_job, marketing_subscriber, pages_document_model, pages_slice_model, pages_document, pages_project_metadata, pages_url_redirect, pages_site_settings, user_journey, user_journey_state, webhook.

Get entity version history

GET /api/entity/versions

Query parameters

ParameterTypeRequiredDescription
entityTypestringYesOne of the supported entity types above.
entitySortKeystringYesThe entity's sort key (typically its id or code).

Example response

[
{
"version": 1,
"timestamp": "2026-01-01T00:00:00.000Z",
"data": { "name": "Newsletter Signup", "active": true }
},
{
"version": 2,
"timestamp": "2026-01-15T09:30:00.000Z",
"data": { "name": "Newsletter Signup (v2)", "active": true }
}
]

Get a specific version

GET /api/entity/versions/{version}

version is a path parameter (the version number). entityType and entitySortKey are required query parameters, as above.

Example response

{
"version": 1,
"timestamp": "2026-01-01T00:00:00.000Z",
"data": { "name": "Newsletter Signup", "active": true }
}

Get deleted records

GET /api/entity/deleted-records

Lists soft-deleted records for recovery or audit purposes.

Query parameters

ParameterTypeRequiredDescription
entityTypestringYesOne of the supported entity types above.

Example response

[
{
"pk": "acme-co#form#DELETED",
"sk": "form_Xk9mNp2Q",
"entity": { "code": "form_Xk9mNp2Q", "name": "Old Signup Form" },
"timestamp": "2026-02-01T12:00:00.000Z"
}
]

pk follows the format tenantCode#entityType#UPDATED or tenantCode#entityType#DELETED; sk follows entitySortKey#VERSION-{versionNumber} for updates, or plainly entitySortKey for deletes.

  • Pages & Documents API — several supported entity types above (pages_document, pages_document_model, pages_slice_model, pages_project_metadata, pages_url_redirect, pages_site_settings) belong to this resource.
  • Business Units API — covers the business_unit, tenant_membership, and business_unit_grant entity types.
  • Webhooks API and Journeys API — cover the webhook and user_journey / user_journey_state entity types respectively.