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

# List Workflow Campaigns API

> List campaigns filtered by workflow, status or kind, sorted by creation time, name or outcome counts.



## OpenAPI

````yaml GET /workflow-campaigns
openapi: 3.1.0
info:
  title: Bolna API
  description: >-
    Use and leverage Bolna Voice AI using APIs through HTTP requests from any
    language in your applications and workflows.
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.bolna.ai
    description: Production server
security:
  - bearerAuth: []
paths:
  /workflow-campaigns:
    get:
      description: Lists campaigns, newest first by default.
      parameters:
        - in: query
          name: workflow_id
          required: false
          schema:
            type: string
            format: uuid
          description: Only campaigns of this workflow.
        - in: query
          name: status
          required: false
          schema:
            type: string
            enum:
              - draft
              - scheduled
              - running
              - paused
              - completed
              - aborted
          description: Only campaigns in this status.
        - in: query
          name: kind
          required: false
          schema:
            type: string
            enum:
              - batch
              - api
          description: >-
            `batch` campaigns hold uploaded entries; `api` campaigns are created
            implicitly by the [Run Workflow API](/api-reference/workflows/run).
        - in: query
          name: sort_by
          required: false
          schema:
            type: string
            enum:
              - created_at
              - updated_at
              - name
              - entries_count
              - success_count
              - failure_count
            default: created_at
          description: Sort field.
        - in: query
          name: order
          required: false
          schema:
            type: string
            enum:
              - asc
              - desc
            default: desc
          description: Sort direction.
        - in: query
          name: limit
          required: false
          schema:
            type: integer
            default: 20
            minimum: 1
            maximum: 100
          description: Number of results per page.
        - in: query
          name: offset
          required: false
          schema:
            type: integer
            default: 0
            minimum: 0
          description: Number of results to skip.
      responses:
        '200':
          description: Paginated list of campaigns
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkflowCampaignList'
components:
  schemas:
    WorkflowCampaignList:
      type: object
      required:
        - items
        - total
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/WorkflowCampaign'
        total:
          type: integer
        limit:
          type: integer
        offset:
          type: integer
    WorkflowCampaign:
      type: object
      required:
        - id
        - name
        - workflow_id
        - workflow_version
        - kind
        - status
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
        workflow_id:
          type: string
          format: uuid
        workflow_version:
          type: integer
          description: The pinned published version.
        kind:
          type: string
          enum:
            - batch
            - continuous
            - api
          description: >-
            `batch` holds uploaded entries; `api` is the implicit campaign
            behind single runs.
        status:
          type: string
          enum:
            - draft
            - scheduled
            - running
            - paused
            - completed
            - aborted
          description: >-
            Lifecycle is `draft` → `scheduled` → `running` → (`paused` ↔
            `running`) → `completed` or `aborted`.
        scheduled_at:
          type: string
          format: date-time
          nullable: true
        entries_count:
          type: integer
        success_count:
          type: integer
        failure_count:
          type: integer
        neutral_count:
          type: integer
        terminal_count:
          type: integer
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````