Preview a lead selection
What a selection of leads contains before acting on it: the total, and breakdowns by campaign, pipeline stage, sequence status and sender. Select by explicit lead ids, or by filter: scope (one campaign, or the whole CRM) plus the same search and conditions as lead search. Changes nothing; it is a POST only so a long id list fits in the body.
/campaigns.leads.bulkPreviewAuthorization
bearerAuth Enter your MailMoo API key (format: sk_live_...)
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/campaigns.leads.bulkPreview" \ -H "Content-Type: application/json" \ -d '{ "scope": { "kind": "campaign", "campaignId": "13f8bf6d-dc27-4a04-bffe-6e5b13c19ddf" }, "selection": { "mode": "ids", "leadIds": [ "0e7eb83f-f60a-4ca7-95b5-29e3c79907f5" ] } }'{ "total": 0, "campaignScoped": true, "byCampaign": [ { "campaignId": "13f8bf6d-dc27-4a04-bffe-6e5b13c19ddf", "name": "string", "count": 0 } ], "byStage": [ { "stageId": "string", "name": "string", "category": "string", "count": 0 } ], "bySequenceStatus": [ { "status": "string", "count": 0 } ], "bySender": [ { "sdrProfileId": "string", "name": "string", "count": 0 } ]}Read a lead GET
Returns one lead with everything held against it: its fields, including enrichment output and AI columns, plus where it sits in the pipeline. Field values are redacted on workspaces without access to lead contact data.
Pause or resume many leads POST
Pauses (paused: true) or resumes (paused: false) outreach for a selection of leads. Pausing only touches running or failed sequences, resuming only paused ones; leads keep their place. Scoped to the campaign when the scope names one, otherwise every enrollment of each lead. Select by explicit lead ids, or by filter: scope (one campaign, or the whole CRM) plus the same search and conditions as lead search.

