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

# List campaign dispatches

> Read-only call detail for one outbound campaign — the same rows the dashboard CSV export produces, as JSON. Paginate with the opaque `cursor` until `has_more` is false (`limit` defaults to 1000, max 5000); a page may also be cut short of `limit` to keep the response under its size ceiling, which `has_more` reports the same way. Pass `updated_after` to pull only what changed since the last run. `variables` holds the values this call extracted, keyed by whatever the project's variable settings define — a variable the call did not extract is ABSENT from that record rather than present and empty, so read defensively.



## OpenAPI

````yaml https://api.pathors.com/openapi.json get /v1/campaigns/{id}/dispatches
openapi: 3.1.0
info:
  title: Pathors API
  description: >-
    Public developer API for the Pathors platform. Authenticate with a developer
    key (`Authorization: Bearer dk_...`) created from the dashboard. See
    [docs.pathors.com](https://docs.pathors.com) for guides.
  version: 1.0.0
  contact:
    name: Pathors Support
    url: https://app.pathors.com/support
servers:
  - url: https://api.pathors.com
    description: Production
  - url: http://localhost:8080
    description: Local development
security:
  - developerKey: []
tags:
  - name: Projects
    description: CRUD for projects owned by the authenticated developer
  - name: Agent Config
    description: Read and update a project's agent configuration and versions
  - name: Pathway
    description: Manage a project's pathway graph — nodes and decision edges
  - name: Chat
    description: OpenAI-compatible chat completions for a project agent
  - name: Sessions
    description: Create, search, terminate, and inspect agent sessions
  - name: Session History
    description: Browse and inspect persisted session history
  - name: Tools
    description: Manage a project's tools and inspect available tool types
  - name: Knowledgebases
    description: Manage knowledgebases and query them for relevant chunks
  - name: Datasets
    description: Upload and manage source files embedded into a knowledgebase
  - name: Test Cases
    description: CRUD for agent test cases
  - name: Test Suites
    description: Group test cases, run them, and read results
  - name: Webhooks
    description: Manage webhook subscriptions for project events
  - name: Calls
    description: Place outbound voice calls from a project agent
  - name: Campaigns
    description: Create and activate outbound campaigns that dial a call list
paths:
  /v1/campaigns/{id}/dispatches:
    get:
      tags:
        - Campaigns
      summary: List campaign dispatches
      description: >-
        Read-only call detail for one outbound campaign — the same rows the
        dashboard CSV export produces, as JSON. Paginate with the opaque
        `cursor` until `has_more` is false (`limit` defaults to 1000, max 5000);
        a page may also be cut short of `limit` to keep the response under its
        size ceiling, which `has_more` reports the same way. Pass
        `updated_after` to pull only what changed since the last run.
        `variables` holds the values this call extracted, keyed by whatever the
        project's variable settings define — a variable the call did not extract
        is ABSENT from that record rather than present and empty, so read
        defensively.
      operationId: getV1CampaignsByIdDispatches
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
      responses:
        '200':
          description: A page of dispatches
          content:
            application/json:
              schema:
                type: object
                properties:
                  campaign_id:
                    type: string
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        dispatch_id:
                          type: string
                        session_id:
                          anyOf:
                            - type: string
                            - type: 'null'
                        phone_number:
                          type: string
                        dispatch_status:
                          type: string
                          enum:
                            - pending
                            - queued
                            - running
                            - completed
                            - failed
                        dispatch_failed_reason:
                          anyOf:
                            - type: string
                            - type: 'null'
                        call_status:
                          anyOf:
                            - type: string
                            - type: 'null'
                        duration_seconds:
                          anyOf:
                            - type: number
                            - type: 'null'
                        message_count:
                          anyOf:
                            - type: number
                            - type: 'null'
                        evaluation:
                          anyOf:
                            - type: string
                            - type: 'null'
                        created_at:
                          type: string
                        started_at:
                          anyOf:
                            - type: string
                            - type: 'null'
                        ended_at:
                          anyOf:
                            - type: string
                            - type: 'null'
                        updated_at:
                          type: string
                        variables:
                          type: object
                          propertyNames:
                            type: string
                          additionalProperties: {}
                      required:
                        - dispatch_id
                        - session_id
                        - phone_number
                        - dispatch_status
                        - dispatch_failed_reason
                        - call_status
                        - duration_seconds
                        - message_count
                        - evaluation
                        - created_at
                        - started_at
                        - ended_at
                        - updated_at
                        - variables
                  next_cursor:
                    anyOf:
                      - type: string
                      - type: 'null'
                  has_more:
                    type: boolean
                required:
                  - campaign_id
                  - data
                  - next_cursor
                  - has_more
        '400':
          description: Bad `status`, `updated_after`, `cursor` or `limit`
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      error:
                        type: string
                    required:
                      - error
                  - type: object
                    properties:
                      error:
                        type: object
                        properties:
                          message:
                            type: string
                          code:
                            type: string
                          details:
                            type: object
                            propertyNames:
                              type: string
                            additionalProperties: {}
                        required:
                          - message
                    required:
                      - error
        '401':
          description: Error response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      error:
                        type: string
                    required:
                      - error
                  - type: object
                    properties:
                      error:
                        type: object
                        properties:
                          message:
                            type: string
                          code:
                            type: string
                          details:
                            type: object
                            propertyNames:
                              type: string
                            additionalProperties: {}
                        required:
                          - message
                    required:
                      - error
        '403':
          description: No access to the campaign project
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      error:
                        type: string
                    required:
                      - error
                  - type: object
                    properties:
                      error:
                        type: object
                        properties:
                          message:
                            type: string
                          code:
                            type: string
                          details:
                            type: object
                            propertyNames:
                              type: string
                            additionalProperties: {}
                        required:
                          - message
                    required:
                      - error
        '404':
          description: Campaign not found
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      error:
                        type: string
                    required:
                      - error
                  - type: object
                    properties:
                      error:
                        type: object
                        properties:
                          message:
                            type: string
                          code:
                            type: string
                          details:
                            type: object
                            propertyNames:
                              type: string
                            additionalProperties: {}
                        required:
                          - message
                    required:
                      - error
        '500':
          description: Error response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      error:
                        type: string
                    required:
                      - error
                  - type: object
                    properties:
                      error:
                        type: object
                        properties:
                          message:
                            type: string
                          code:
                            type: string
                          details:
                            type: object
                            propertyNames:
                              type: string
                            additionalProperties: {}
                        required:
                          - message
                    required:
                      - error
components:
  securitySchemes:
    developerKey:
      type: http
      scheme: bearer
      bearerFormat: Developer key (dk_...)
      description: Developer key created from the dashboard (Settings → Developer Keys)

````