---
title: "QueryDeliveryAnalytics returns total counts of events delivered to integrations."
method: POST
path: "/v1.1/analytics/event_delivery"
tags: ["ControlService"]
---

# QueryDeliveryAnalytics returns total counts of events delivered to integrations.

`POST /v1.1/analytics/event_delivery`

Returns delivered, error, and filtered counts over the requested time range,
 grouped by the requested dimensions. At least one dimension is required.
 Events queued for retry are excluded until delivery resolves as delivered or error.
 Rate limited to 10 requests per minute (burst of 5), shared with QueryIngestionAnalytics;
 exceeding the limit returns ResourceExhausted (HTTP 429).

## Request body

- ProtobufControlpbV1QueryDeliveryAnalyticsRequest
  - `dimensions` string[], nullable — Dimensions group the results. At least one is required; duplicates are ignored. Each count in the response carries one dimensions entry per requested dimension. Allowed dimensions: - write_key (pipeline) - event_name (normalized, e.g. order_completed) - integration - integration_id - reason (populated for error and filtered counts; empty for delivered)
  - `end` string, date-time, nullable — End of query range (exclusive).
  - `filters` union — Optional filters to narrow results. Filter fields combine with AND; values within a field with OR.
    - object, nullable
    - ProtobufStreamingpbV1DeliveryStatFilters
      - `eventNames` string[], nullable — Normalized event names, e.g. order_completed.
      - `integrationIds` string[], nullable — Integration ids. More precise than integration names: a pipeline can deploy two or more integrations of the same type, which then share a name; only the id distinguishes them.
      - `integrations` string[], nullable — Integration names. Use ListAnalyticsIntegrations to discover values.
      - `writeKeys` string[], nullable — Pipeline write keys.
  - `options` string[], nullable — Optional behaviors. DELIVERY_ANALYTICS_OPTION_ACTIVE_PIPELINES: automatically filter to currently deployed pipeline write keys (mutually exclusive with write key filters).
  - `start` string, date-time, nullable — Start of query range (inclusive). Must not be after end.

## Response `200`

OK

- ProtobufControlpbV1QueryDeliveryAnalyticsResponse
  - `counts` union[], nullable
    - union
      - object, nullable
      - ProtobufStreamingpbV1DeliveryStatCount
        - `dimensions` object, nullable — Dimension name to value for this group, one entry per requested dimension.
        - `errors` string — Events that failed to reach the integration due to errors. Unexpected data loss.
        - `filtered` string — Events that failed to reach the integration due to various filtering mechanisms such as pipeline, compliance, and playbook filters. Expected data loss.
        - `success` string — Events successfully sent to the integration.
  - `end` string, date-time, nullable — End of query range (exclusive)
  - `start` string, date-time, nullable — Start of query range (inclusive)
  - `totalDelivered` string — Total number of events successfully sent to the integration.
  - `totalErrors` string — Total number of events that failed to reach the integration due to errors. Unexpected data loss.
  - `totalFiltered` string — Total number of events that failed to reach the integration due to various filtering mechanisms such as pipeline, compliance, and playbook filters. Expected data loss.

## Other responses

- `4XX` — Something is wrong with your request such as missing or invalid data. Correct your request and try again.
- `5XX` — Internal server error. Try again later or reach out to MetaRouter support.

---

[API](https://skmtc.net/metarouter/apis/control-api.md) · [All operations](https://skmtc.net/metarouter/apis/control-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/metarouter/control-api/versions/5afc05bfaaa2/schema)
