API Changelog
Breaking changes, new features, and significant updates to epilot APIs. Subscribe via RSS
2026-09-15 Asset Entity
- New
_purposeattribute added to theassetentity, carrying the list of purpose ids an asset is assigned to
2026-09-14 AI Agents API
- Agents can now be made available on a website:
availabilityaccepts the newwebsitevalue, together with a new optionaldomainnaming the website the agent answers on โ both accepted onPOST /v1/agentsandPUT /v1/agents/{agent_id}and returned wherever agents are read, andwebsiteis also accepted by theavailabilityquery parameter ofGET /v1/agents PUT /v1/agents/{agent_id}can now respond with404when the agent does not exist and409when the update conflicts with the current state
2026-09-14 App API
PATCH /v1/app/{appId}can now respond with400when the request cannot be processed
2026-09-14 Blueprint Manifest API
- Blueprint validation was removed:
POST /v2/blueprint-manifest/blueprints/{blueprint_id}/validatewas removed after deprecation,POST /v2/blueprint-manifest/blueprints/{blueprint_id}:exportno longer accepts thevalidaterequest field, and thevalidatejob type is no longer returned byGET /v2/blueprint-manifest/jobs,GET /v2/blueprint-manifest/jobs/{job_id}, andPOST /v2/blueprint-manifest/jobs/{job_id}:cancel(breaking)
2026-09-14 Workflows Definition API
- Journey tasks can now have their journey prefilled by AI, through a new optional
journey.ai_prefillfield โ available on the regular, ECP, and installer journey configuration of a task, accepted onPOST/PUT /v1/workflows/definitions,POST /v2/flows/templates, andPUT /v2/flows/templates/{flowId}, and returned wherever workflow definitions and flow templates are read - Flow templates gained new optional
stagesfor grouping their tasks into stages,portal_titlesfor the titles shown in the customer portal,stages[].portal_descriptionsfor the descriptions shown there, andedges[].end_typeโ accepted onPOST /v2/flows/templatesandPUT /v2/flows/templates/{flowId}and returned wherever flow templates are read - Journey tasks can now set the label shown on their portal button, through a new optional
journey.portal_button_labelfield โ available on the regular, ECP, and installer journey configuration of a task, accepted onPOST/PUT /v1/workflows/definitions,POST /v2/flows/templates, andPUT /v2/flows/templates/{flowId}, and returned wherever workflow definitions and flow templates are read
2026-09-14 Workflows Execution API
- Journey tasks can now have their journey prefilled by AI, through a new optional
journey.ai_prefillfield โ available on the regular, ECP, and installer journey configuration of a task, accepted onPATCH /v2/flows/executions/{execution_id}/tasks/{task_id}and returned wherever workflow and flow executions are read, together with a new optionaljourney_prefillon the task itself - Flow executions gained new optional
stagesfor grouping their tasks into stages, with each task reporting the stage it belongs to through a new optionalstage_id, and a new optionaledges[].end_typeโ returned wherever flow executions are read - Flow executions and their stages now report the titles and descriptions shown in the customer portal through new optional
portal_titles,stages[].portal_names, andstages[].portal_descriptionsfields โ returned wherever flow executions are read, includingPOST /v2/flows/executions:portal-searchandPOST /v2/flows/executions:portal-search-batch - Journey tasks now carry the label shown on their portal button, through a new optional
journey.portal_button_labelfield โ available on the regular, ECP, and installer journey configuration of a task, accepted onPATCH /v2/flows/executions/{execution_id}/tasks/{task_id}and returned wherever workflow and flow executions are read
2026-09-11 Automation API
- Automation assignment actions can now pick an assignee by skill: new optional
config.match_user_skills,config.required_skill_categories, andconfig.skill_match_modefields โ accepted onPOST /v1/automation/flowsandPUT /v1/automation/flows/{flow_id}and returned wherever flows and executions are read
2026-09-11 Dashboard API
- New
GET /v1/dashboard/dashboards/quotaendpoint added for reading the dashboard quota of an organization POST /v1/dashboard/dashboards,PATCH /v1/dashboard/dashboards/{id}, andPUT /v1/dashboard/dashboards/{id}can now respond with403
2026-09-11 Environments API
- Environments can now hold a list of values: the
typeof an environment accepts the newListvalue with a matchingvalueshape, and the type of the entries is reported through a new optionalitem_typeโ accepted onPOST /v1/environmentsandPUT /v1/environments/{key}and returned wherever environments are read
2026-09-11 Workflows Execution API
POST /v2/flows/executionscan now respond with503when a workflow execution cannot be started at the moment
2026-09-10 Access Token API
- Access tokens can now identify a contact:
POST /v1/access-tokensaccepts a new set of contact identification parameters, the newcontact_identificationvalue is returned astoken_typewherever access tokens are read and accepted by thetoken_typequery parameter ofGET /v1/access-tokens, and such tokens report new optionalcontact_idandallowed_operationsfields - New
GET /v1/access-tokens/contact-identification/.well-known/jwks.jsonandGET /v1/access-tokens/contact-identification/.well-known/openid-configurationendpoints added for verifying contact identification tokens
2026-09-10 App API
- App hooks can now run on a custom interval: the
intervalsof a component's hook configuration accept the newcustomvalue, accepted onPOST/PATCH /v1/app-configurations/{appId}/versions/{version}/componentsand returned wherever apps and app configurations are read
2026-09-10 Event Catalog API
- Catalog events can now be managed through the API: new
POST /v1/eventsfor creating an event,PUT /v1/events/{event_name}for replacing it,DELETE /v1/events/{event_name}for removing it,POST /v1/events/{event_name}:previewfor previewing what it would produce, andPOST /v1/events/{event_name}:publishfor publishing it - Catalog events report new optional
api_trigger,event_origin,lineage,mapping, andentity_operation.purpose_filtersfields, andautomation_trigger_onlyandautomation_trigger_seed_nodeare no longer read-only โ returned byGET /v1/events,GET /v1/events/{event_name}, andPATCH /v1/events/{event_name} PATCH /v1/events/{event_name}accepts new optionalenabled,auto_trigger, andsuccess_criteriafields, and its request body must now be an object (breaking)
2026-09-10 Integration Toolkit API
- Monitoring events are no longer reported as
skipped: theirleveltakes the newinfovalue instead, accepted onPOST /v2/integrations/{integrationId}/monitoring/eventsand returned by the monitoring event, associated event, and trace endpoints (breaking) - Monitoring statistics follow the same move:
POST /v2/integrations/{integrationId}/monitoring/statsandPOST /v2/integrations/{integrationId}/monitoring/time-seriesnow report aninfo_countper bucket and breakdown, whileskipped_countis deprecated and will be removed in a future version
2026-09-09 AI Agents API
- Agent executions can now take a file along:
POST /v1/agents/{agent_id}/executeandPOST /v1/agents/{agent_id}/execute/streamaccept a new optionalinput.attachment
2026-09-09 Configuration Hub API
- Configuration health findings can now be ignored: new
POST /v1/configs/health:ignoreendpoint added, and an ignored finding is reported through new optionalfindings[].ignored,findings[].ignored_at,findings[].ignored_by, andfindings[].ignored_reasonfields onGET /v1/configs/health
2026-09-09 File API
- New
POST /v1/files/validationsendpoint added for validating a file
2026-09-09 Journey Config API
- New endpoints added for publishing a journey configuration and working with its revisions:
POST /v1/journey/configuration/{id}/publishfor publishing it,GET /v1/journey/configuration/{id}/publish-statefor reading whether it is published,GETandPOST /v1/journey/configuration/{id}/revisionsfor listing and creating revisions, andGET /v1/journey/configuration/{id}/revisions/{revision_id}for reading a single revision - A specific revision can now be read through the journey configuration itself:
GET /v1/journey/configuration/{id}accepts a new optionalrevision_idquery parameter and reports which revision was served, andPOST /v1/journey/configuration/{id}/revisionsaccepts an optionalrevision_name
2026-09-08 App API
- Apps can now ship an external values component: a new
ExternalValuesComponentshape is accepted onPOST/PATCH /v1/app-configurations/{appId}/versions/{version}/componentsand returned wherever apps, app configurations, and components are read, so consumers must be prepared for this additional component shape;GET /v1/appaccepts the matchingEXTERNAL_VALUESvalue for itscomponentTypequery parameter, and app events accept and report it as asource
2026-09-08 Environments API
- Environments can now hold a link: the
typeof an environment accepts the newLinkvalue with a matchingvalueshape โ accepted onPOST /v1/environmentsandPUT /v1/environments/{key}and returned wherever environments are read
2026-09-08 Integration Toolkit API
- Entity mappings can now be applied conditionally through a new optional
configuration.entities[].conditionalfield โ accepted when creating or updating a use case or an integration as well as byPOST /v1/erp/updates/direct_simulationand the mapping simulation endpoints, and returned wherever use cases and integrations are read - Import validation now reports what it looked at and what went wrong in more detail: new optional
validation.entity_details,validation.entity_details_truncated, andvalidation.issues[].subjectfields, together with the new issue codesSCHEMA_NOT_FOUND,SCHEMA_NOT_CONDITIONABLE,SCHEMA_DECLARES_NO_CONDITIONS,ATTRIBUTE_NOT_IN_SCHEMA,ATTRIBUTE_NOT_OVERRIDABLE,CONDITION_VALUE_MISSING,IS_CONDITIONAL_NOT_CONSTANT,GROUPING_KEY_NOT_A_COLUMN,GROUPING_KEY_IS_FOLD_COLUMN,TIER_BANDS_CONFLICT,TIER_ROWS_NOT_GROUPED, andVARIANT_VALUE_CONFLICTโ returned by all/v2/erp/importsendpoints, wherevalidation.total_rowsis no longer always present (breaking)
2026-09-08 Validation Rules API
- New
DocumentRuleTypevalidation rule type added โ accepted onPOST /v1/validation-rulesandPATCH /v1/validation-rules/{ruleId}and returned wherever rules are read, so consumers must be prepared for this additional rule shape
2026-09-08 Workflows Definition API
- Workflow tasks can now be broken down into subtasks: new optional
subtasksandrequiredfields on flow template tasks, together with an optionaltrigger_modeofautomaticormanualโ accepted onPOST /v2/flows/templatesandPUT /v2/flows/templates/{flowId}and returned wherever flow templates are read - Journey tasks can now require the journey to be submitted before the task completes, through a new optional
journey.journey_submission_requiredfield โ available on the regular, ECP, and installer journey configuration of a task, accepted onPOST/PUT /v1/workflows/definitionsandPOST/PUT /v2/flows/templates, and returned wherever workflow definitions and flow templates are read - New optional
on_failurefield added to flow template tasks, controlling what happens when a task fails
2026-09-08 Workflows Execution API
- Running workflows now report the new task configuration: optional
subtasks,subtask_states,required,trigger_mode, andon_failureon a task, plusjourney.journey_submission_requiredon the regular, ECP, and installer journey of a step or task โ returned wherever executions, steps, and tasks are read;PATCH /v2/flows/executions/{execution_id}/tasks/{task_id}additionally acceptssubtask_statesand the ECP and installerjourney.journey_submission_required - Tasks that wait for a journey report new optional
journey_submission,journey_gate_waived_at, andcompletion_gates_reset_atfields, and agent tasks a new optionalagent_execution.completion_hold
2026-09-07 Integration Google Maps API
GET /v1/geocode-api/coordinatesnow accepts an optionalcountryquery parameter for restricting the lookup to a single country