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

# Get Contact Campaigns

> Get Contact Campaigns.

### Authorizations

<ParamField header="X-Api-Key" type="string" required>
  Your Agni API key used to authenticate the request. Pass it in the `X-Api-Key` header. Find or rotate it from your Ravan AI account settings.
</ParamField>

***

### Path Parameters

<ParamField path="id" type="string" required>
  The unique ID of the resource in the path. Use the ID returned by the related create or list endpoint.
</ParamField>

***

### Response

<ResponseField name="success" type="boolean">
  Whether the request succeeded.
</ResponseField>

<ResponseField name="message" type="string">
  Human-readable status message.
</ResponseField>

<ResponseField name="data" type="array">
  Array of campaign objects.
</ResponseField>


## OpenAPI

````yaml GET /api/v1/contacts/{id}/campaigns
openapi: 3.0.1
info:
  title: Agni API
  version: 1.0.0
  description: >-
    Agni API for managing agents, tools, widget settings, telephony, and
    integrations.
servers:
  - url: https://api.ravan.ai
security:
  - X-Api-Key: []
tags:
  - name: AgentService
  - name: AgentToolService
  - name: WidgetSettingsService
  - name: PhoneService
  - name: AppointmentService
  - name: GHLService
  - name: CalComService
  - name: CampaignService
  - name: ContactService
  - name: CallingService
  - name: RAGService
  - name: ModelService
  - name: HealthService
paths:
  /api/v1/contacts/{id}/campaigns:
    get:
      tags:
        - ContactService
      summary: Get Contact Campaigns
      operationId: GetContactCampaigns
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Contact ID
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetContactCampaignsResponse'
components:
  schemas:
    GetContactCampaignsResponse:
      type: object
      properties:
        success:
          type: boolean
        message:
          type: string
        data:
          type: array
          items:
            $ref: '#/components/schemas/Campaign'
    Campaign:
      type: object
      properties:
        id:
          type: string
          description: Campaign UUID
        organization_id:
          type: string
          description: Organization UUID
        name:
          type: string
          description: Campaign name
        agent_id:
          type: string
          description: Assigned agent UUID
        phone_number_id:
          type: string
          description: Phone number UUID
        from_phone_number:
          type: string
          description: Caller ID
        status:
          type: string
          description: 'Status: draft, running, paused, completed'
        execution_status:
          type: string
          description: Execution state
        schedule:
          $ref: '#/components/schemas/CampaignSchedule'
        contact_stats:
          $ref: '#/components/schemas/CampaignStats'
        started_at:
          type: string
          description: Execution start timestamp (ISO 8601)
        completed_at:
          type: string
          description: Execution end timestamp (ISO 8601)
        created_at:
          type: string
          description: Creation timestamp
        updated_at:
          type: string
          description: Last update timestamp
    CampaignSchedule:
      type: object
      properties:
        start:
          type: string
          description: Execution start (ISO 8601, server-set)
        end:
          type: string
          description: Execution end (ISO 8601, server-set)
        window_start:
          type: string
          description: Daily call window start, e.g. 09:00
        window_end:
          type: string
          description: Daily call window end, e.g. 18:00
        window_days:
          type: array
          items:
            type: integer
          description: Days of week (1=Mon ... 7=Sun)
        timezone:
          type: string
          description: IANA timezone, e.g. Asia/Kolkata
        max_concurrent:
          type: integer
          description: Max simultaneous calls
        retry_attempts:
          type: integer
          description: Max retry count per contact
        retry_gap_min:
          type: integer
          description: Minutes between retries
    CampaignStats:
      type: object
      properties:
        total:
          type: integer
          description: Total contacts in campaign
        contacted:
          type: integer
          description: Contacts that were reached
        successful:
          type: integer
          description: Successful calls
        failed:
          type: integer
          description: Failed calls
        no_answer:
          type: integer
          description: No answer calls
        pending:
          type: integer
          description: Awaiting first attempt
        in_progress:
          type: integer
          description: Currently being called
  securitySchemes:
    X-Api-Key:
      type: apiKey
      in: header
      name: X-Api-Key

````