June 9, 2026
- A path parameter shared by multiple operations on the same path is now declared once at the path level instead of being repeated on each operation. Purely structural and non-breaking — the same parameters apply to the same operations, so the request contract is unchanged.
- Added optional
useDataTimeRangeboolean to the line-chart and time-series-lines widgets in the dashboard payload under/dashboards/dashboards/v1. Whentrue, the widget derives its time window from the returned data instead of the dashboard time range — useful for time-shifted DataPrime queries (e.g.addTime($m.timestamp, 14days)) whose output timestamps fall outside the dashboard’s selected window. Optional and non-breaking; omitting it preserves existing behavior. - Breaking (spec contract): Integer fields that carry 64-bit values are now declared as
type: stringwith a digitpattern(^[0-9]+$unsigned,^-?[0-9]+$signed) andminLength: 1/maxLength: 20, instead of as numbers. This matches the actual JSON wire format — servers already emit and accept these values as quoted strings — so there is no runtime behavior change; only the declared type in the spec changes. - Array schemas now declare
minItems: 0(on every array, regardless of item type) and unsigned integer fields declareminimum: 0by default in the spec. Additive and non-breaking (least-restrictive constraints); no runtime behavior change. - Added optional
dataspacestring to the policy target in the log, span, and generic TCO policy payloads (/dataplans/log-policies/v1,/dataplans/span-policies/v1,/dataplans/policies/v1), request and response. A free-form identifier for the target’s dataspace, mirroringdataset. Non-breaking. - Added optional
priority(enum:PRIORITY_TYPE_UNSPECIFIED,PRIORITY_TYPE_BLOCK,PRIORITY_TYPE_LOW,PRIORITY_TYPE_MEDIUM,PRIORITY_TYPE_HIGH),priorityOverride(object), andarchiveRetention(object with anidstring) to the policy target in the same log/span/generic policy payloads, request and response. Optional in the spec; server validation determines required semantics. Non-breaking. - 46 PUT/POST request bodies across the aaa, alerts, cases, dashboards, data-exploration, dataengine, dataplan(s), enrichment-rules, events2metrics, incidents, logs, metrics, and slo APIs are now declared
requiredin the spec. Non-breaking — clients were already required to send these bodies; the spec now reflects it. - Added a PagerDuty actor variant to case event actors, returned at
GET /cases/cases/v1/{case_id}/events. ThepagerDutyactor carriespagerDutyUserId(string),displayName(string), optionaluserEmail(string), and optionalcoralogixUserId(string, UUID). Response-only; non-breaking. - Removed the optional
sourcestring from the APM-database impacted-entity in case responses under/cases/cases/v1. The field had no consumers. - Added optional
accessPolicystring to the dashboard create/replace request bodies (POST/PUT /dashboards/dashboards/v1) and the dashboard get responses (GET /dashboards/dashboards/v1/{dashboard_id},GET /dashboards/dashboards/v1/slugs/lookup/{slug}), letting callers read and write a per-dashboard PBAC access policy (opaque JSON string). On create/replace a non-empty value sets the policy; omitting it leaves the policy unchanged. Non-breaking. - Added a PromQL variant to the dashboard variable query source in the dashboard payload under
/dashboards/dashboards/v1. Variables can now be sourced from a PromQL query in addition to metric name, label name, and label value sources. ThepromqlQueryobject carries the query string and an optionalpromqlQueryTypeenum (PROM_QL_QUERY_TYPE_UNSPECIFIED,PROM_QL_QUERY_TYPE_RANGE,PROM_QL_QUERY_TYPE_INSTANT) to opt into range queries. Non-breaking. - Added
resolvedValues(array of strings) to the SLO ownership tag in the SLO payload under/slo/slos/v1, request and response. A flat, deduplicated union of the tag’s static values and the values resolved from its label keys (empties excluded), giving a single searchable list regardless of source. Non-breaking. - Added Prometheus Alert Manager support to the cases responses. The case payload returned by
GET /cases/cases/v1/{id}and the list atPOST /cases/cases/v1gains aprometheusAlertIndicatorsarray (an array of Prometheus alert indicator objects, undercaseIndicators) listing the Prometheus alerts contributing to the case, and the case events list atGET /cases/cases/v1/{case_id}/eventsgains aprometheusAlertManagerevent-actor variant. Response-only; non-breaking. - Breaking: moved two
/integrations/*endpoints to resolve OpenAPI path ambiguities. The legacy paths have been removed; clients must switch over.POST /integrations/contextual-data/v1/{integration_id}/test→POST /integrations/contextual-data/v1/test/{integration_id}.GET /integrations/extensions/v1/{id}→GET /integrations/extensions/v1/catalog/{id}.
- Added
allocationType(enum:QUOTA_ALLOCATION_TYPE_UNSPECIFIED,QUOTA_ALLOCATION_TYPE_PERCENTAGE,QUOTA_ALLOCATION_TYPE_LOCKED_UNITS) andcxManaged(boolean, response-only) to the quota allocation rule in the quota-rules payload under/dataplan/quota-rules/v1, letting quota rules distinguish percentage allocation from locked units and identify Coralogix-managed rules. Non-breaking. - Added
GET /cases/cases/v1/{case_id}/deep-linksfor retrieving deep-link URLs from a case to related product views. - Added a
PAGERDUTY_INCIDENTSvalue to the connector type enum in the connectors payload (POST/PUT /notifications/notification-center/v1/connectors), enabling notification routing to PagerDuty via the Incidents API. Non-breaking. - Breaking: removed the deprecated team-configs endpoints. The following paths have been deleted; clients must migrate to the equivalent case-settings paths under
/cases/cases/case-settings/v1/configs(see the 2026-05-19 entry).POST /cases/cases/team-configs/v1/configsGET /cases/cases/team-configs/v1/configs/{id}PATCH /cases/cases/team-configs/v1/configs/{id}DELETE /cases/cases/team-configs/v1/configs/{id}GET /cases/cases/team-configs/v1/configs:getActiveGET /cases/cases/team-configs/v1/configs:getSystemDefaults
- Cases API is now public: the following endpoints now appear in the public OpenAPI spec and customer-facing docs.
GET /cases/cases/v1/{id}POST /cases/cases/v1PUT /cases/cases/v1/{id}PUT /cases/priority-override/v1/{id}DELETE /cases/priority-override/v1/{id}POST /cases/assigned/v1/{id}DELETE /cases/assigned/v1/{id}PUT /cases/acknowledged/v1/{id}DELETE /cases/acknowledged/v1/{id}POST /cases/closed/v1/{id}PUT /cases/resolved/v1/{id}POST /cases/filter-values/v1PUT /cases/assigned/v1DELETE /cases/assigned/v1POST /cases/acknowledged/v1POST /cases/resolved/v1POST /cases/closed/v1POST /cases/priority-override/v1DELETE /cases/priority-override/v1GET /cases/grouping-keys/v1
- Added a new public case-settings API for managing team-level case settings. It supersedes the team-configs endpoints, which are now deprecated and will be removed in a future release — clients should migrate to the new paths below.
POST /cases/cases/case-settings/v1/configsGET /cases/cases/case-settings/v1/configs/{id}PATCH /cases/cases/case-settings/v1/configs/{id}DELETE /cases/cases/case-settings/v1/configs/{id}GET /cases/cases/case-settings/v1/configs:getActiveGET /cases/cases/case-settings/v1/configs:getSystemDefaults
- Breaking: moved five
/notifications/notification-center/v1/presets/*endpoints to resolve OpenAPI path ambiguities with/presets/{id}and/presets/{id}/default. The legacy paths have been removed; clients must switch over.POST /notifications/notification-center/v1/presets/custom→POST /notifications/notification-center/v1/presets:createCustom.PUT /notifications/notification-center/v1/presets/custom→PUT /notifications/notification-center/v1/presets:replaceCustom.POST /notifications/notification-center/v1/presets/{id}/default→POST /notifications/notification-center/v1/presets/{id}/default/apply. (This also resolves the/notifications/notification-center/v1/presets/custom/{id}collision, soDELETE /notifications/notification-center/v1/presets/custom/{id}keeps its existing path.)GET /notifications/notification-center/v1/presets/summaries→GET /notifications/notification-center/v1/presets:getDefaultSummary.POST /notifications/notification-center/v1/presets/tests→POST /notifications/notification-center/v1/presets:test.
- Breaking: moved two cases team-config read endpoints to resolve OpenAPI path ambiguities with
/cases/cases/team-configs/v1/configs/{id}. The legacy paths have been removed; clients must switch over.GET /cases/cases/team-configs/v1/configs/active→GET /cases/cases/team-configs/v1/configs:getActive.GET /cases/cases/team-configs/v1/configs/system-defaults→GET /cases/cases/team-configs/v1/configs:getSystemDefaults.
- Breaking: moved three
/aaa/*endpoints to resolve OpenAPI path ambiguities. The legacy paths have been removed; clients must switch over.GET /aaa/api-keys/v3/list→GET /aaa/api-keys/v3/list/all.GET /aaa/team-groups/v2/{group_id}/users→GET /aaa/team-groups/v2/{group_id}/users/list.PATCH /aaa/teams/v2/{team_id}/members/status→PATCH /aaa/teams/v2/{team_id}/members:updateStatuses.
- Added
POST /dataplans/policies/v1/all/forecast-usage, which forecasts the usage in bytes of a draft TCO policy based on the bytes matched by its filter rules over a given time window. - Breaking: moved two dashboards read endpoints to new REST paths to resolve OpenAPI path ambiguities with
/dashboards/dashboards/v1/{dashboard_id}. The legacy paths have been removed; clients must switch over.GET /dashboards/dashboards/v1/catalog→GET /dashboards/dashboards/v1/catalog/list.GET /dashboards/dashboards/v1/slugs/{slug}→GET /dashboards/dashboards/v1/slugs/lookup/{slug}.
- Added optional
targets(array, 1–10 items) to enrichments in the enrichment-rules payload under/enrichment-rules/enrichment-rules/v1, request and response. Each entry is an object with adatasetstring, scoping the enrichment to specific datasets. Non-breaking. - Added optional
roleArnandexternalIdstrings to the S3 target spec in the archive setup payload under/logs/data-setup/v2, request and response, supportingsts:AssumeRole+ external-ID cross-account S3 access. Non-breaking. - Added Cases KPI support across two cases payloads. Team-level KPI thresholds appear in the case-settings config under
caseLifecycle.kpi(an object whosethresholdsarray holds the per-KPI settings) — written onPOST /cases/cases/case-settings/v1/configsandPATCH /cases/cases/case-settings/v1/configs/{id}, and read onGET /cases/cases/case-settings/v1/configs/{id}(and the:getActive/:getSystemDefaultsreads). Case-level breach data appears in the case payload askpiBreaches(an object with abreachedKpisarray; each entry carrieskpiType,casePriority,breachedAt, andbreachStatus) in the case payload returned byGET /cases/cases/v1/{id}and the list atPOST /cases/cases/v1, response-only. Non-breaking. - Added optional
metadataobject (string-to-string map) to the success result of notification test endpoints (response), e.g.POST /notifications/notification-center/v1/connectors:test. Non-breaking. - Added optional
description(string),dpxlFilter(string), andurlFields(array) to the action payload under/actions/actions/v2, request and response. EachurlFieldsentry is an object withname(string) andrequired(boolean). Non-breaking.