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

# List campaign events

> Append-only audit log of campaign transitions. Optional `recipient_id` filter. Scope `campaigns:read`.



## OpenAPI

````yaml /api-reference/openapi.json get /campaigns/{campaign_id}/events
openapi: 3.1.0
info:
  title: Lehar API
  version: v0
  description: >-
    Customer-facing REST API for the Lehar voice-AI platform. Platform-admin
    endpoints are intentionally excluded from this reference. Regenerate with
    `npm run sync:openapi`.
servers:
  - url: https://api.lehar.ai/ca/api/v0
security:
  - ApiKeyAuth: []
  - BearerAuth: []
paths:
  /campaigns/{campaign_id}/events:
    get:
      tags:
        - Campaigns
      summary: List campaign events
      description: >-
        Append-only audit log of campaign transitions. Optional `recipient_id`
        filter. Scope `campaigns:read`.
      operationId: list_campaign_events_ca_api_v0_campaigns__campaign_id__events_get
      parameters:
        - name: campaign_id
          in: path
          required: true
          schema:
            type: string
        - name: recipient_id
          in: query
          required: false
          schema:
            type: string
          description: Filter events to one recipient.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            default: 20
            maximum: 100
        - name: offset
          in: query
          required: false
          schema:
            type: integer
            default: 0
      responses:
        '200':
          description: Paginated events
          content:
            application/json:
              example:
                data:
                  - id: cevent_01EXAMPLE
                    campaign_id: campaign_01EXAMPLE
                    recipient_id: null
                    attempt_id: null
                    event_type: campaign.workflow_started
                    event:
                      workflow_id: campaign-campaign_01EXAMPLE
                    created_at: '2026-05-22T11:30:00Z'
                pagination:
                  limit: 20
                  offset: 0
                  total: 1
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY
    BearerAuth:
      type: http
      scheme: bearer

````