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

# Get Campaign

> Retrieve a single campaign by ID

## Endpoint

**GET** `https://api.graine.ai/api/v1/campaigns/{campaign_id}`

## Path Parameters

| Parameter     | Type   | Required | Description                          |
| ------------- | ------ | -------- | ------------------------------------ |
| `campaign_id` | string | Yes      | The campaign ID returned on creation |

## Headers

| Header          | Required | Description          |
| --------------- | -------- | -------------------- |
| `Authorization` | Yes      | `Bearer gat_<token>` |

## Example Request

```bash theme={null}
curl "https://api.graine.ai/api/v1/campaigns/cmp_abc123" \
  -H "Authorization: Bearer gat_your_token"
```

## Response

### 200 OK

Returns the full campaign document including `retry_policy`, `working_hours`, `phone_numbers`, and all counters.

```json theme={null}
{
  "campaign_id": "cmp_abc123",
  "name": "Q2 Insurance Renewals",
  "organization_id": "org_xyz",
  "agent_id": "agent_abc123",
  "status": "active",
  "phone_numbers": ["+919876543210", "+919876543211"],
  "phone_number_strategy": "round_robin",
  "working_hours_enforced": true,
  "timezone": "Asia/Kolkata",
  "working_hours": {
    "monday":    { "start": "09:00", "end": "18:00", "enabled": true },
    "tuesday":   { "start": "09:00", "end": "18:00", "enabled": true },
    "wednesday": { "start": "09:00", "end": "18:00", "enabled": true },
    "thursday":  { "start": "09:00", "end": "18:00", "enabled": true },
    "friday":    { "start": "09:00", "end": "18:00", "enabled": true },
    "saturday":  { "start": "10:00", "end": "14:00", "enabled": false },
    "sunday":    { "start": "10:00", "end": "14:00", "enabled": false }
  },
  "retry_policy": {
    "max_retries": 3,
    "strategy": "fixed",
    "cooldown_minutes": 30
  },
  "default_call_variables": {
    "language": "en",
    "product": "Health Insurance"
  },
  "metadata": {
    "concurrency_limit": 20
  },
  "completed_calls": 142,
  "failed_calls": 8,
  "busy_calls": 12,
  "no_answer_calls": 25,
  "follow_up_calls": 5,
  "created_at": "2026-05-01T09:00:00Z",
  "updated_at": "2026-05-10T08:30:00Z"
}
```

### 404 Not Found

```json theme={null}
{ "detail": "Campaign not found" }
```
