Skip to main content

API Changelog

Breaking changes, new features, and significant updates to epilot APIs. Subscribe via RSS

2026-05-27 File API

  • New POST /v1/files/{id}/summary:generate endpoint added for generating an AI summary of a file, alongside new preview_summary, short_summary, and summary_status response fields

2026-05-25 Pricing API

  • Provider search responses (POST /v1/public/integration/{integrationId}/providers:search) now include the required type and additionalData fields, the latter carrying grid operators, default suppliers, and market-area details
  • New optional external_location_metadata field added to line items on POST /v1/order, PUT /v1/order/{id}, POST /v1/pricing:compute, and POST /v1/public/cart:checkout

2026-05-25 Webhooks API

  • Multipart webhook delivery configuration was restructured: the metadataFieldName field was removed and replaced by fileSource (a JSONata expression selecting which attachments to send), fileFieldStrategy (single or multi), and extraFields (additional form fields populated from JSONata expressions) (breaking)

2026-05-25 Event Catalog API

  • New endpoints added for accessing event history: POST /v2/events/{event_name}:history to search past events and GET /v2/events/{event_name}/history/{event_id} to fetch a single event

2026-05-22 Email Settings API

  • New GET /v2/outlook/calendar/me and DELETE /v2/outlook/calendar/me endpoints added for inspecting and removing the current user's Outlook calendar connection

2026-05-22 User API

  • New endpoints added for managing per-user settings: GET /v2/users/me/settings (list available scopes and keys), GET /v2/users/me/settings/{scope}, and GET/PUT/DELETE /v2/users/me/settings/{scope}/{key} โ€” scopes include calendar, navigation, and search

2026-05-21 Notes API

  • New POST /v1/note/{id}/archive and POST /v1/note/{id}/unarchive endpoints added, along with an _archived_at field and a filter query parameter for filtering notes by archive state

2026-05-20 Automation API

  • New loops field added to automation flows (POST /v1/automation/flows) defining loop scopes that resolve an array from the trigger entity; actions opt into a loop via a new loop_id property and then run once per resolved item

2026-05-19 Query API

  • New nextCursor and total response fields added, enabling keyset pagination for chart-config row queries and total-count reporting for paginated raw-SQL queries

2026-05-15 File API

  • New asynchronous file zip export endpoints added: POST /v1/files:zipJob bundles multiple files into a downloadable archive and GET /v1/files:zipJob/{job_id} polls the job status; the optional notify_email field accepts an email address to notify on completion

2026-05-13 Entity API

  • New optional org_id field added to created_by user objects on saved views (POST /v1/entity/view, GET/PUT/PATCH /v1/entity/view/{id}, GET /v1/entity/views, GET /v1/entity/views/favorites) for partner access control across organizations

2026-05-13 Integration Toolkit API

  • New portal_ref and env_var_ref config options added to inbound use case field mappings โ€” portal_ref resolves to a property (portal_id, origin, domain, name) of one of the calling organization's portal configurations at runtime by filter, and env_var_ref resolves to an org-scoped non-secret environment variable from the environments-api service, replacing hardcoded environment-specific portal UUIDs and config values in inbound mappings

2026-05-13 Metering API

  • New endpoints added for managing pending reading changesets: GET /v1/metering/reading/{meter_id}/{counter_id}/changesets (list pending), PATCH /v1/metering/reading/{meter_id}/{counter_id}/changesets/{changeset_id} (edit the proposed value), POST .../changesets/{changeset_id}:apply (approve and commit to ClickHouse), and POST .../changesets/{changeset_id}:dismiss (reject)
  • New optional direct query parameter added to all reading-write endpoints (POST /v1/metering/reading, POST /v1/metering/readings, POST /v1/metering/readings/{meter_id}, POST /v2/metering/readings) โ€” when true, bypasses changeset interception and writes directly to ClickHouse, auto-clearing matching pending changesets; the same effect is triggered automatically when source: 'ERP' is set in the request body
  • New optional include_pending_changesets query parameter added to GET /v1/metering/meter and GET /v1/metering/reading/{meter_id}/{counter_id}, including pending reading changesets in the response alongside confirmed readings

2026-05-13 Event: Meter Reading Added

  • New activity_type field added identifying the lifecycle action that triggered the event: MeterReadingsAdded (direct commit), ChangesetCreated (pending), ChangesetApplied (pending โ†’ committed), or ChangesetDismissed (pending rejected)
  • New changeset_id and changeset_edit_mode (direct / external / approval) fields added, carrying the originating changeset's identifier and mode
  • New dismissed_reason and dismissed_at fields populated on ChangesetDismissed events

2026-05-07 Event: Service Meter Reading Added

  • New event_attachments array added carrying file metadata (entity_id, filename, mime_type, size_bytes, s3ref, version_index, readable_size, _tags, relation_tags, category, file_date, _created_at) for every file related to the ticket โ€” consumers should filter by relation_tags, _tags, mime_type, or _created_at proximity to reading_timestamp to identify the meter reading photo
  • New ticket_files array added on the hydrated entity graph carrying the full file entity objects

2026-05-06 App API

  • New PortalExtensionHookDataExport portal extension hook type added โ€” when configured on export-capable portal blocks, the portal delegates the export action (CSV/Excel/PDF download) to the external source instead of generating the file itself
  • New PortalExtensionHookVisualizationMetadata portal extension hook type added โ€” invoked before fetching data with the same portal context as the data hook, returns per-meter/contract visualization metadata (type_options, intervals, data_range)
  • intervals field on PortalExtensionHookConsumptionDataRetrieval, PortalExtensionHookCostDataRetrieval, and PortalExtensionHookPriceDataRetrieval deprecated โ€” prefer declaring a sibling visualizationMetadata hook so supported intervals can vary per meter/contract
  • use_static_ips field deprecated on all portal extension hook types โ€” prefer secure_proxy
  • New object enum value added to portal extension component option type, plus new fields (primitive sub-field declarations) and repeatable (array-of-entries flag) properties โ€” enables structured object-typed and list-typed component options

2026-05-06 User API

  • New optional abbreviation field (up to 2 characters, nullable) added to user groups across GET /v1/groups, POST /v1/groups, GET/PATCH /v1/groups/{id}, POST /v1/groups/{id}/user:next, and GET /v2/users/{id}/groups

2026-05-05 Automation API

  • New optional mark_as_read field added to ForwardEmailAction, ReplyEmailAction, and SendEmailAction configurations, controlling whether the email thread is automatically marked as read after the action completes

2026-05-04 Pricing API

  • New optional availability_address and variable_inputs fields added to the external catalog request context on POST /v1/public/external-catalog/products, POST /v1/public/external-catalog/product-recommendations, and POST /integration/external-service, enabling availability filtering by address and variable-amount price computation
  • New optional cashback_name field added to CashbackAmount items across order, pricing, cart, and external-catalog responses

2026-05-02 Message API

  • New optional mark_thread_as_read field added to POST /v1/message/messages and POST /v1/message/drafts, controlling whether sending a reply marks the thread as read for the sender's org/user (defaults to true)

2026-05-01 Core Events

  • Four new pending-changeset metadata fields added across all built-in events: _has_pending_changesets, _changeset_edit_modes, _changeset_attributes, and _changeset_edit_modes_by_attribute โ€” enabling fine-grained webhook conditions based on whether the triggering entity has pending changesets and which attributes/edit modes are involved

2026-05-01 Event: Meter Reading Added

  • New proposed_meter_readings array added carrying pending reading-changeset context (counter ID, value, direction, status, edit_mode, changeset_id, and previous values being overwritten); populated only when the event represents a pending reading-changeset creation
  • New unit field added to individual items in the existing meter_readings array

2026-04-30 Integration Toolkit API

  • slug request property is now required on all use-case create variants (POST /v1/integrations/{integrationId}/use-cases) โ€” file proxy, inbound, managed call, outbound, and secure proxy (breaking)
  • New optional allowed_origins array field added to FileProxy use case configuration, listing additional origins permitted to call /download (CORS); portal origins remain always allowed

2026-04-30 Journey Config API

  • New optional version query parameter added to GET /v1/journey/configuration/{id} and GET /v2/journey/configuration/{id} for fetching historical snapshots; 0 (default) returns the live row, positive integers return earlier saved versions
  • New optional settings.isActive boolean field added to journey configurations

2026-04-28 Entity API

  • New optional edit_mode and edit_mode_config fields added to all entity schema attribute types in schema responses
  • _changesets field now included on entity objects returned from activity log responses