API Changelog
Breaking changes, new features, and significant updates to epilot APIs. Subscribe via RSS
2026-07-31 Workflows Definition API
- New optional
keep_task_automations_in_syncfield added to flow templates, accepted onPOST/PUT /v2/flows/templates/{flowId}and returned by the template read, list, search, and duplicate endpoints
2026-07-31 Workflows Execution API
- New
POST /v2/flows/executions:portal-search-batchendpoint added for running several portal execution searches in one request; the request body takes a requiredentitiesarray (theentity_idsandentity_schemafields it briefly accepted are no longer part of it)
2026-07-30 Blueprint API
- New
POST /v3/blueprint-manifest/blueprints:pre-installendpoint added for checking what a blueprint installation would do before actually starting it
2026-07-30 Journey Config API
- The journey
settings.savingProgressfields were renamed:savingModeis nowmodeandsupportedVersionis nowsupportedRevision. The old names are no longer accepted onPOST/PUT /v1/journey/configurationand are no longer returned by the v1 journey configuration endpoints (breaking) settings.savingProgressis now also supported on the v2 journey configuration endpoints — accepted byPOST/PUT /v2/journey/configurationand returned byGET /v2/journey/configuration/{id}and the v2 create, update, and patch responses
2026-07-30 Pricing API
- New optional
fieldsrequest property added toPOST /v1/catalogandPOST /v1/public/catalog, limiting the catalog response to the listed fields
2026-07-30 User API
- New optional
totp_enabledfield added to users, showing whether two-factor authentication is set up for a user; it is returned by the user and group read endpoints (GET /v2/users,/v2/users/me,/v2/users/{id},/v2/users/{id}/groups, the invite endpoints, and the/v1/groupsendpoints) and can be set tofalseviaPATCH /v2/users/{id}to turn two-factor authentication off for that user
2026-07-29 Workflows Execution API
- New
POST /v2/flows/executions:portal-searchendpoint added for searching flow executions exposed to the customer portal; the request requires anaudiencefield, which acceptsallalongside the individual audience values
2026-07-28 Entity API
- New
POST /v1/entity:abortImportendpoint added for aborting an entity import that is still running
2026-07-27 App API
- New optional
change_modeanddelete_contactfields added to portal extension hook configuration — settable viaPOST/PATCH /v1/app-configurations/{appId}/versions/{version}/componentsand returned by the app, app-configuration, and public component read endpoints
2026-07-27 Blueprint API
- Blueprints can now carry notes: new
POST /v2/blueprint-manifest/blueprints/{blueprint_id}/notes,PATCH /v2/blueprint-manifest/blueprints/{blueprint_id}/notes/{note_id}, andDELETE /v2/blueprint-manifest/blueprints/{blueprint_id}/notes/{note_id}endpoints added for adding, editing, and removing a note, and anotesfield is now accepted when creating or updating a blueprint (POST/PUT /v2/blueprint-manifest/blueprints) and returned on the blueprint read, list, create, update, and delete responses; each note also carries anupdated_attimestamp - New optional
sync_notesinstall option added toPOST /v2/blueprint-manifest/blueprint:install,POST /v3/blueprint-manifest/blueprint:install,POST /v3/blueprint-manifest/bulk-installs, andPOST /v2/blueprint-manifest/jobs/{job_id}:continue, controlling whether blueprint notes are carried over during installation
2026-07-27 Integration Toolkit API
- Passing
group_idon events is now supported for parallelization within a batch of events inPOST /v3/erp/updates/events POST /v1/integrations/{integrationId}/events/replayresponses now always includereplayedandresults, reporting how many events were replayed and the outcome for each one
2026-07-26 Blueprint API
- New
POST /v3/blueprint-manifest/blueprints/{blueprint_id}/deployments/{job_id}:health-checkandGET /v3/blueprint-manifest/blueprints/{blueprint_id}/deployments/{job_id}/health-reportendpoints added for starting a health check on a blueprint deployment and reading the resulting health report
2026-07-26 Email Settings API
- New endpoints added for managing custom SMTP connections:
GET/POST /v2/smtp/connectionsfor listing and creating connections,GET/PUT/DELETE /v2/smtp/connections/{connectionId}for reading, updating, and removing a single connection, andPOST /v2/smtp/connections/{connectionId}/testfor verifying that a connection works - New endpoints added for managing the sender addresses used with those connections:
GET/POST /v2/smtp/sendersfor listing and adding senders, andDELETE /v2/smtp/senders/{email}for removing one
2026-07-25 Integration Toolkit API
- New
POST /v2/integrations/{integrationId}/monitoring/external-eventsandGET /v2/integrations/{integrationId}/monitoring/traces/{correlationId}endpoints added for reporting externally-observed events into integration monitoring and for reading the full trace belonging to one correlation ID - New optional
correlation_idfield added to ERP update events (POST /v1/erp/updates/eventsandPOST /v2/erp/updates/events) and returned for each event onPOST /v1/integrations/{integrationId}/events, letting an event be tied to a monitoring trace
2026-07-24 Integration Previous Provider API
- New
GET /v2/integration/{type}/providersendpoint added, listing the available previous providers for a given integration type
2026-07-22 Message API
- New optional
inbox_idfield added toPOST /v1/message/threads:searchIds, limiting the returned thread IDs to threads in that inbox
2026-07-22 Metering API
- New
POST /v2/metering/readings/pruneendpoint added for removing meter readings
2026-07-21 Notification API
- New optional
allowed_channelsfield (email,in_app) added when creating notifications and returned on notification reads; it caps which delivery channels a notification may use, with actual delivery being the intersection of this list and each recipient's own channel preferences (an empty array suppresses all delivery)
2026-07-16 Entity API
- Entity data can now be returned with PII removed: an optional
anonymizequery parameter was added to the entity read endpoints (GET /v1/entity/{slug}/{id}and its v2/v3 variants, plus theactivity,changesets,relations,/v1/entity/activity/{id}, and/v1/entity:autocompleteoperations), and an optionalanonymizerequest-body flag was added toPOST /v1/entity:search,:list, and:export; whentrue, identifiers such as names, emails, phone numbers, and IBANs are replaced with deterministic pseudonyms (anonymization is forced regardless of the flag when the access token was created withanonymize: true) - New optional
data_classificationfield (piiorpublic) added to every entity schema attribute type — returned by the schema endpoints and settable viaPOST /v1/entity/schemas/attributes— wherepiialways anonymizes the attribute value in anonymized responses andpublicnever does, overriding the built-in defaults
2026-07-16 File API
- New
GET /v1/files/{id}/textendpoint added, returning the plain-text representation of a file entity (FileText); itsstatusisready(text available),not_readywhile the text is still being prepared, orunsupportedwhen text is unavailable for the file or organization
2026-07-15 Access Token API
- New optional
anonymizeflag added when creating access tokens (POST /v1/access-tokens, including the app-token and assume-token variants); whentrue, all entity data returned to the token is PII-anonymized and the bearer cannot turn it off — the flag is also returned on token list, create, and delete responses
2026-07-15 Blueprint API
- New
POST /v3/blueprint-manifest/blueprints/{blueprint_id}:publishendpoint added for starting an asynchronous V3 blueprint publication
2026-07-15 Customer Portal API
- New
POST /v2/portal/contract/{id}/resolve-templatesendpoint added — a POST variant of get-contract that accepts Handlebars templates and returns their resolved output per related meter (templates_output)
2026-07-15 Journey Config API
POST /v1/journey/document:generatenow accepts an optionalcontext_entity_id, resolving entity and relational template variables against that entity when generating the document
2026-07-14 Message API
- New
POST /v2/message/threads:workloadendpoint added, returning the number of open threads assigned directly to each of up to 100 requested users (matching their central-inbox open view) for use in assignment load-balancing