> ## Documentation Index
> Fetch the complete documentation index at: https://docs.salessequencer.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List a campaign's leads

> Paged, filterable lead list for one campaign. 404 JSON if the campaign is not in the workspace. (Prefixed with /list because POST /campaigns/<id>/leads already exists.)

**Minimum role:** `view` (`x-min-role`). **Destructive:** `false` (`x-destructive`).



## OpenAPI

````yaml /openapi.json get /campaigns/{campaign_id}/leads/list
openapi: 3.0.3
info:
  title: Sales Sequencer API
  version: '1'
  description: >-
    Every Sales Sequencer action over HTTP. Each call runs as the API key's
    creator, with that user's role, in the key's workspace. Auth: X-API-Key
    header.
servers:
  - url: https://api.salessequencer.com/api/v1
security:
  - key: []
paths:
  /campaigns/{campaign_id}/leads/list:
    get:
      tags:
        - Leads
      summary: List a campaign's leads
      description: >-
        Paged, filterable lead list for one campaign. 404 JSON if the campaign
        is not in the workspace. (Prefixed with /list because POST
        /campaigns/<id>/leads already exists.)


        **Minimum role:** `view` (`x-min-role`). **Destructive:** `false`
        (`x-destructive`).
      operationId: spa_campaign_leads
      parameters:
        - in: path
          name: campaign_id
          required: true
          schema:
            type: integer
        - description: 'Contact status: pending, sent, replied, bounced, failed.'
          in: query
          name: status
          required: false
          schema:
            type: string
        - description: >-
            Reply stage key, or 'positive' for all positive stages. Stages:
            interested, meeting_request, not_interested, objection,
            pricing_question, more_info_needed, timing_issue, wrong_person,
            out_of_office, automated, unsubscribe, unclassified.
          in: query
          name: stage
          required: false
          schema:
            type: string
        - description: Substring search on email and lead data.
          in: query
          name: q
          required: false
          schema:
            type: string
        - description: Page size, 10-200. Default 50.
          in: query
          name: size
          required: false
          schema:
            type: integer
        - description: Page number, from 1. Default 1.
          in: query
          name: page
          required: false
          schema:
            type: integer
      responses:
        '200':
          description: >-
            JSON {leads:[{id, email, name, company, title, status,
            stage:{key,label,tone,positive}, seq_step, sent_at, next_at,
            mailbox, has_thread}], total, page, pages, size, counts:{<status>:
            n}, all}.
components:
  securitySchemes:
    key:
      in: header
      name: X-API-Key
      type: apiKey

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.