Skip to main content

Changelog

v5.0.1 — Jun 23, 2026
  • Added optional timeBucketMs string to the request body of POST /dataplans/policies/v1/all/forecast-usage (forecast TCO policy usage). When set, the forecast is bucketed into intervals of the given millisecond width. Non-breaking; omitting it preserves existing behavior.
  • Added optional usageBuckets array to the response of POST /dataplans/policies/v1/all/forecast-usage (forecast TCO policy usage). Each item is { "bucketStartMs": string, "bytes": string }, where bucketStartMs is the bucket window start in epoch milliseconds and bytes is the matched bytes within that bucket. Populated only when timeBucketMs is set on the request; otherwise empty. Non-breaking; estimatedBytes is unchanged.
Jun 22, 2026
  • Added company model pricing REST API under /ai/model-pricing/v3 (company resolved from auth context; non-breaking, new endpoints). GET /ai/model-pricing/v3 returns { "pricing": { "id": string (UUID), "companyId": string, "prices": object } } where prices is keyed by model name and each value is { "inputPricePerMillionTokens": number, "outputPricePerMillionTokens": number, "cacheReadPricePerMillionTokens": number, "cacheWritePricePerMillionTokens": number } (USD per one million tokens). PUT /ai/model-pricing/v3 accepts request body { "prices": object (required) } with the same per-model value shape as a full replacement map and returns { "pricing": { "id": string (UUID), "companyId": string, "prices": object } }. DELETE /ai/model-pricing/v3 returns { "id": string (UUID) }.
  • Added CONNECTOR_TYPE_MICROSOFT_TEAMS to the connectorType enum in the cases connector type schema. The value appears in connectorTypeFilters in the request body of POST /cases/cases/v1 (list cases) and POST /cases/filter-values/v1, and in the connector object within delivery attempts in the response of POST /cases/notifications/v1/deliveries. Non-breaking.
  • Added read-only resolvedConnectorConfig field to the Connector and ConnectorSummary response schemas in the notification-center connectors API. The field exposes the full effective connector configuration including backend auto-resolved values (e.g. a Slack integration ID). It is response-only and ignored on create/replace request bodies. It appears in Connector responses from POST /notifications/notification-center/v1/connectors (Create), PUT /notifications/notification-center/v1/connectors (Replace), GET /notifications/notification-center/v1/connectors/{id} (Get), GET /notifications/notification-center/v1/connectors (List), and GET /notifications/notification-center/v1/connectors/all/list (BatchGet); and in ConnectorSummary responses from GET /notifications/notification-center/v1/connectors/all/summaries (BatchGetConnectorSummaries) and GET /notifications/notification-center/v1/connectors/list/summaries (ListConnectorSummaries). Non-breaking.
  • Added optional layoutColumns integer to dashboard widgets in the request bodies for POST /dashboards/check/v1, POST /dashboards/dashboards/v1, and PUT /dashboards/dashboards/v1, and in the response payloads from GET /dashboards/dashboards/v1/{dashboard_id} and GET /dashboards/dashboards/v1/slugs/lookup/{slug}. Non-breaking; omitting it preserves existing layout behavior.
  • Added POST /cases/indicators/v1/get to return a case object for a source indicator. The request body supports a prometheusAlert object with required fingerprint string and startedAt date-time string. Non-breaking.
  • Added minimum: 0 to the optional threshold number in AI evaluation payloads: request bodies for POST /ai/evaluations/v3 and PATCH /ai/evaluations/v3/{id}, and response payloads from GET /ai/evaluations/v3, GET /ai/evaluations/v3/{id}, POST /ai/evaluations/v3, and PATCH /ai/evaluations/v3/{id}. Non-breaking; it documents the existing inclusive lower bound.
  • Added optional genericIndicators array under caseIndicators in the case response payloads returned by GET /cases/cases/v1/{id}, PUT /cases/cases/v1/{id}, and the list response from POST /cases/cases/v1.
  • Added optional indicatorTypes array to the filters object in the request body for POST /cases/cases/v1, allowing callers to filter the case list by indicator type.
  • Added a MICROSOFT_TEAMS value to the connector type enum in the connectors payload (POST / PUT /notifications/notification-center/v1/connectors), enabling notification routing to Microsoft Teams.
  • Added POST /dashboards/check/v1 for validating a dashboard definition or an existing dashboard by ID without persisting changes. The response contains an issues array; each issue carries severity (enum: SEVERITY_UNSPECIFIED, SEVERITY_ERROR, SEVERITY_WARNING), message (string), and location (string, RFC 6901 JSON Pointer). The request body accepts either a dashboard object or dashboardId (string), and an optional requestId (string). Non-breaking; the endpoint is additive.
  • Added the AI Center v3 REST API for managing AI applications and AI evaluations:
    • AI applicationsGET /ai/applications/v3 (list), GET /ai/applications/v3/{id} (get), DELETE /ai/applications/v3/{id} (delete).
    • AI evaluationsPOST /ai/evaluations/v3 (create), GET /ai/evaluations/v3 (list), GET /ai/evaluations/v3/{id} (get), PATCH /ai/evaluations/v3/{id} (update), DELETE /ai/evaluations/v3/{id} (delete), and GET /ai/evaluation-counts/v3/per-type (counts per evaluation type).
    • Custom evaluationsPOST /ai/custom-evaluations/v3 (create), GET /ai/custom-evaluations/v3 (list), PATCH /ai/custom-evaluations/v3/{id} (update), DELETE /ai/custom-evaluations/v3/{id} (delete), GET /ai/custom-evaluations/v3/by-application/{application_id} (list for an application), and POST / DELETE /ai/custom-evaluations/v3/{id}/applications/{application_id} (link / unlink a custom evaluation to an application).
  • Added two analytics alert types to the alert payload, which appears in the request and/or response of the alert-definition endpoints: POST /alerts/alerts/v3 (request and response), PUT /alerts/alerts/v3 (request and response), PUT /alerts/alerts/v3/all/replace (request and response), GET /alerts/alerts/v3 (response), GET /alerts/alerts/v3/{id} (response), and GET /alerts/alerts/v3/version-ids/{alert_version_id} (response). The alert type-definition object gains an analyticsImmediate variant (fires when a DataPrime query returns a result) and an analyticsThreshold variant (fires when a numeric result column violates a threshold). Both carry a dataprimeQuery object, useRowsAsPermutations (boolean), evaluationDelayMs (integer), noDataPolicy (object), and timeframeMinutes (integer); analyticsThreshold additionally carries a rules array (1–5 items), a targetColumn (string), and an operator enum (ANALYTICS_THRESHOLD_OPERATOR_MORE_THAN_OR_UNSPECIFIED, ANALYTICS_THRESHOLD_OPERATOR_LESS_THAN, ANALYTICS_THRESHOLD_OPERATOR_MORE_THAN_OR_EQUALS, ANALYTICS_THRESHOLD_OPERATOR_LESS_THAN_OR_EQUALS, ANALYTICS_THRESHOLD_OPERATOR_EQUALS). The type enum on the same payload gains ALERT_DEF_TYPE_ANALYTICS_IMMEDIATE and ALERT_DEF_TYPE_ANALYTICS_THRESHOLD. Optional and non-breaking.
  • Breaking: Removed the Extension testing service REST API: POST /integrations/testing/v1/extensions/initialize, DELETE /integrations/testing/v1/extensions, and POST /integrations/testing/v1/extensions. These operations are no longer available.
  • Added an optional ollyAnalysis object to the Case schema in case responses under /cases/cases/v1. Reports the result of an automated Olly analysis attached to a case (status, optional payload, completion timestamp). Response-only, non-breaking.
Jun 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 useDataTimeRange boolean to the line-chart and time-series-lines widgets in the dashboard payload under /dashboards/dashboards/v1. When true, 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: string with a digit pattern (^[0-9]+$ unsigned, ^-?[0-9]+$ signed) and minLength: 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 declare minimum: 0 by default in the spec. Additive and non-breaking (least-restrictive constraints); no runtime behavior change.
  • Added optional dataspace string 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, mirroring dataset. Non-breaking.
  • Added optional priority (enum: PRIORITY_TYPE_UNSPECIFIED, PRIORITY_TYPE_BLOCK, PRIORITY_TYPE_LOW, PRIORITY_TYPE_MEDIUM, PRIORITY_TYPE_HIGH), priorityOverride (object), and archiveRetention (object with an id string) 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 required in 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. The pagerDuty actor carries pagerDutyUserId (string), displayName (string), optional userEmail (string), and optional coralogixUserId (string, UUID). Response-only; non-breaking.
  • Removed the optional source string from the APM-database impacted-entity in case responses under /cases/cases/v1. The field had no consumers.
  • Added optional accessPolicy string 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. The promqlQuery object carries the query string and an optional promqlQueryType enum (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 at POST /cases/cases/v1 gains a prometheusAlertIndicators array (an array of Prometheus alert indicator objects, under caseIndicators) listing the Prometheus alerts contributing to the case, and the case events list at GET /cases/cases/v1/{case_id}/events gains a prometheusAlertManager event-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}/testPOST /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) and cxManaged (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-links for retrieving deep-link URLs from a case to related product views.
  • Added a PAGERDUTY_INCIDENTS value 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/configs
    • GET /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:getActive
    • GET /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/v1
    • PUT /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/v1
    • PUT /cases/assigned/v1
    • DELETE /cases/assigned/v1
    • POST /cases/acknowledged/v1
    • POST /cases/resolved/v1
    • POST /cases/closed/v1
    • POST /cases/priority-override/v1
    • DELETE /cases/priority-override/v1
    • GET /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/configs
    • GET /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:getActive
    • GET /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/customPOST /notifications/notification-center/v1/presets:createCustom.
    • PUT /notifications/notification-center/v1/presets/customPUT /notifications/notification-center/v1/presets:replaceCustom.
    • POST /notifications/notification-center/v1/presets/{id}/defaultPOST /notifications/notification-center/v1/presets/{id}/default/apply. (This also resolves the /notifications/notification-center/v1/presets/custom/{id} collision, so DELETE /notifications/notification-center/v1/presets/custom/{id} keeps its existing path.)
    • GET /notifications/notification-center/v1/presets/summariesGET /notifications/notification-center/v1/presets:getDefaultSummary.
    • POST /notifications/notification-center/v1/presets/testsPOST /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/activeGET /cases/cases/team-configs/v1/configs:getActive.
    • GET /cases/cases/team-configs/v1/configs/system-defaultsGET /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/listGET /aaa/api-keys/v3/list/all.
    • GET /aaa/team-groups/v2/{group_id}/usersGET /aaa/team-groups/v2/{group_id}/users/list.
    • PATCH /aaa/teams/v2/{team_id}/members/statusPATCH /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/catalogGET /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 a dataset string, scoping the enrichment to specific datasets. Non-breaking.
  • Added optional roleArn and externalId strings to the S3 target spec in the archive setup payload under /logs/data-setup/v2, request and response, supporting sts: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 whose thresholds array holds the per-KPI settings) — written on POST /cases/cases/case-settings/v1/configs and PATCH /cases/cases/case-settings/v1/configs/{id}, and read on GET /cases/cases/case-settings/v1/configs/{id} (and the :getActive / :getSystemDefaults reads). Case-level breach data appears in the case payload as kpiBreaches (an object with a breachedKpis array; each entry carries kpiType, casePriority, breachedAt, and breachStatus) in the case payload returned by GET /cases/cases/v1/{id} and the list at POST /cases/cases/v1, response-only. Non-breaking.
  • Added optional metadata object (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), and urlFields (array) to the action payload under /actions/actions/v2, request and response. Each urlFields entry is an object with name (string) and required (boolean). Non-breaking.
Was this page helpful?