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

# Get Campaign

> Retrieve details of a specific SMS campaign

# Get Campaign

Retrieve details of a specific SMS campaign including its configuration and status.

## Endpoint

```
GET /v1/campaigns/{campaign_id}
```

## Authentication

<ParamField header="X-API-Key" type="string" required>
  Your API key
</ParamField>

## Path Parameters

<ParamField path="campaign_id" type="string" required>
  The campaign ID
</ParamField>

## Response

<ResponseField name="success" type="boolean">
  Whether the request was successful
</ResponseField>

<ResponseField name="campaign" type="object">
  Campaign details

  <Expandable title="campaign properties">
    <ResponseField name="campaign_id" type="string">
      Unique campaign identifier
    </ResponseField>

    <ResponseField name="campaign_name" type="string">
      Campaign display name
    </ResponseField>

    <ResponseField name="status" type="string">
      Campaign status: `ACTIVE`, `PAUSED`, `COMPLETED`, `DELETED`
    </ResponseField>

    <ResponseField name="sms_agent_id" type="string">
      Associated SMS agent ID
    </ResponseField>

    <ResponseField name="organization_id" type="string">
      Organization ID
    </ResponseField>

    <ResponseField name="outbound_number" type="string">
      Phone number used for outbound messages
    </ResponseField>

    <ResponseField name="direction" type="string">
      `inbound` or `outbound`
    </ResponseField>

    <ResponseField name="total_contacts" type="number">
      Total number of contacts in campaign
    </ResponseField>

    <ResponseField name="total_messages" type="number">
      Total messages sent/received
    </ResponseField>

    <ResponseField name="created_at" type="string">
      ISO 8601 timestamp
    </ResponseField>

    <ResponseField name="enable_sms_to_voice" type="boolean">
      Whether SMS-to-voice escalation is enabled
    </ResponseField>

    <ResponseField name="drip_schedule" type="array">
      Configured drip message schedule
    </ResponseField>

    <ResponseField name="extraction_fields" type="array">
      Fields to extract from conversations
    </ResponseField>
  </Expandable>
</ResponseField>

## Example Request

<CodeGroup>
  ```bash cURL theme={null}
  curl "https://partner.teli.ai/api/proxy/v1/campaigns/camp_abc123" \
    -H "X-API-Key: YOUR_API_KEY"
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    'https://partner.teli.ai/api/proxy/v1/campaigns/camp_abc123',
    {
      headers: {
        'X-API-Key': 'YOUR_API_KEY'
      }
    }
  );
  const data = await response.json();
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
      'https://partner.teli.ai/api/proxy/v1/campaigns/camp_abc123',
      headers={'X-API-Key': 'YOUR_API_KEY'}
  )
  data = response.json()
  ```
</CodeGroup>

## Example Response

```json theme={null}
{
  "success": true,
  "campaign": {
    "campaign_id": "camp_abc123",
    "campaign_name": "January Outreach",
    "status": "ACTIVE",
    "sms_agent_id": "agent_xyz789",
    "organization_id": "org_123",
    "outbound_number": "+15551234567",
    "direction": "outbound",
    "total_contacts": 150,
    "total_messages": 423,
    "created_at": "2026-01-15T10:00:00Z",
    "enable_sms_to_voice": false,
    "drip_schedule": [
      {
        "delay_hours": 24,
        "type": "reminder",
        "message": "Just following up on my last message..."
      }
    ],
    "extraction_fields": ["credit_score", "loan_amount", "interest_rate"]
  },
  "powered_by": "Teli"
}
```

## Related Endpoints

* [List Campaigns](/partner-api/campaigns/list-sms) - List all campaigns
* [Get Campaign Messages](/partner-api/campaigns/messages) - Get messages in campaign
* [Delete Campaign](/partner-api/campaigns/delete) - Delete a campaign
