---
title: "Get push campaign stats"
method: GET
path: "/push/campaigns/{campaignId}/stats"
tags: ["Push"]
---

# Get push campaign stats

`GET /push/campaigns/{campaignId}/stats`

## Request

- Base URL: `https://api.sequenzy.com/api/v1`
- URL: `https://api.sequenzy.com/api/v1/push/campaigns/{campaignId}/stats`
- Auth: HTTP bearer

Returns delivery and engagement stats for a push campaign. Test sends are excluded. Requires the campaigns:read scope.

## Path parameters

- `campaignId` string, required

## Response `200`

Stats

- object
  - `success` boolean
  - `campaignId` string
  - `status` string
  - `stats` PushCampaignStats
    - `total` integer: Contacts in the send.
    - `pending` integer
    - `sent` integer: Contacts whose push at least one push service accepted.
    - `failed` integer
    - `skipped` integer
    - `delivered` integer: Contacts whose device reported displaying the notification (browsers and apps that report displays).
    - `clicked` integer: Contacts who opened the notification.
    - `devicesTargeted` integer
    - `devicesAccepted` integer
    - `skipReasons` object[]
      - `reason` string
      - `count` integer
    - `failureReasons` object[]
      - `reason` string
      - `count` integer

## Other responses

- `400`: Not a push campaign
- `401`: Unauthorized
- `403`: Missing campaigns:read scope
- `404`: Not found
- `500`: Server error

## Changes

- **2026-10-16** `db3873ca3d4d`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/sequenzy/apis/sequenzy-api/changes/push/campaigns/:campaignId/stats/get.md)

---

[API](https://skmtc.dev/sequenzy/apis/sequenzy-api.md) - [All operations](https://skmtc.dev/sequenzy/apis/sequenzy-api/llms.txt) - [OpenAPI document](https://skmtc.dev/sequenzy/apis/sequenzy-api/revisions/3d816357b738?raw)
