Get Campaign Runs

Retrieve individual call records for each contact in a campaign

Retrieve individual run records for each contact in a campaign

Returns the individual run records for each contact in the campaign. Each record includes the same fields as agent run details, including run status, duration, transcript, and recording URL.

Quick reference#

Retrieve individual call records for each contact in a campaign. Send the request to GET /api/v1/campaign/{campaignid}/runs on the Paladin API base URL.

MethodGET
Path/api/v1/campaign/{campaignid}/runs
Path parameterscampaignid
AuthenticationUse the authentication method shown in the OpenAPI block and the Authentication docs. Keep API keys server-side.

Before you call#

  • Confirm you are using the production base URL shown in the API reference.
  • Make sure any path IDs belong to the same Paladin organization as the credential you are using.
  • Validate request bodies and required fields before sending production traffic.

Common error checks#

  • Use 401 or 403 responses to check credentials, organization scope, and permissions.
  • Use 404 responses to check whether the referenced resource exists in the current organization.
  • Use 422 responses to inspect missing or invalid request fields.

OpenAPI#

GET /api/v1/campaign/{campaignid}/runs
openapi: 3.1.0
info:
  title: Paladin API
  description: API for the Paladin app
  version: 1.0.0
servers:
  - url: https://app.paladin.northmanngrp.com
    description: Production

security: []
paths:
  /api/v1/campaign/{campaign_id}/runs:
    get:
      tags:
        - main
      summary: Get Campaign Runs
      description: Get campaign workflow runs with pagination, filters and sorting
      operationId: get_campaign_runs_api_v1_campaign__campaign_id__runs_get
      parameters:
        - name: campaign_id
          in: path
          required: true
          schema:
            type: integer
            title: Campaign Id
        - name: page
          in: query
          required: false
          schema:
            type: integer
            default: 1
            title: Page
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            default: 50
            title: Limit
        - name: filters
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: JSON-encoded filter criteria
            title: Filters
          description: JSON-encoded filter criteria
        - name: sort_by
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: Field to sort by (e.g., 'duration', 'created_at')
            title: Sort By
          description: Field to sort by (e.g., 'duration', 'created_at')
        - name: sort_order
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: Sort order ('asc' or 'desc')
            default: desc
            title: Sort Order
          description: Sort order ('asc' or 'desc')
        - name: authorization
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Authorization
        - name: X-API-Key
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: X-Api-Key
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CampaignRunsResponse'
        '404':
          description: Not found
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    CampaignRunsResponse:
      properties:
        runs:
          items:
            additionalProperties: true
            type: object
          type: array
          title: Runs
        total_count:
          type: integer
          title: Total Count
        page:
          type: integer
          title: Page
        limit:
          type: integer
          title: Limit
        total_pages:
          type: integer
          title: Total Pages
      type: object
      required:
        - runs
        - total_count
        - page
        - limit
        - total_pages
      title: CampaignRunsResponse
      description: Paginated response for campaign workflow runs
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError