---
title: "Estimate the audience (dry run) and open the send confirmation"
method: POST
path: "/campaigns/{id}/estimate"
tags: ["Campaigns"]
---

# Estimate the audience (dry run) and open the send confirmation

`POST /campaigns/{id}/estimate`

## Request

- Base URL: `https://sending.dev/api/v1`
- URL: `https://sending.dev/api/v1/campaigns/{id}/estimate`
- Auth: HTTP bearer

Counts recipients without side effects and returns a confirmationToken: POST /campaigns/{id}/send needs it only for an immediate send or one within 5 minutes (scheduling further ahead does not require it). The token expires after 15 minutes. Requires authentication only (any valid API key).

## Path parameters

- `id` string, required: Campaign ID.

## Response `200`

Audience estimate and confirmation token.

- CampaignEstimate
  - `estimate` object, required
    - `listMembers` integer, required: Members of the list or segment.
    - `recipients` integer, required: Actual recipients (excluding suppressed/unsubscribed).
    - `excluded` integer, required
    - `sample` string[], required: Up to 5 sample addresses.
  - `confirmationToken` string: Only present on POST /campaigns/:id/estimate: pass it to send for an immediate send or one within 5 minutes.

## Other responses

- `401`: Missing or invalid token.
- `404`: Resource not found.
- `422`: Invalid input.

---

[API](https://skmtc.dev/sending/apis/sending-dev-api.md) · [All operations](https://skmtc.dev/sending/apis/sending-dev-api/llms.txt) · [OpenAPI document](https://skmtc.dev/sending/apis/sending-dev-api/revisions/9fe78d2918a1?raw)
