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

# List Campaigns

> List Klaviyo campaigns with filters for channel (email, SMS, mobile push), status, and created date range

List Klaviyo campaigns with filters for channel (email, SMS, mobile push), status, and created date range. Returns campaign details including name, status, send time, and tracking options.

|                      |                          |
| -------------------- | ------------------------ |
| **App**              | Klaviyo                  |
| **Operation ID**     | `klaviyo_list_campaigns` |
| **Type**             | Action                   |
| **Connection**       | `klaviyo` (required)     |
| **Credits per run**  | 1                        |
| **Agent / MCP tool** | Yes                      |

## Inputs

| Field        | Type                                                                                                                                  | Required | Default | Description                                                                                                                                                          |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `channel`    | enum (`email`, `sms`, `mobile_push`)                                                                                                  | Yes      | -       | Campaign channel type: email, sms, or mobile\_push                                                                                                                   |
| `status`     | array of enum (`Draft`, `Scheduled`, `Sending`, `Sent`, `Cancelled`, `Adding Recipients`, `Variations Sent`, `Sending Segments`, ...) | No       | -       | Filter by campaign status                                                                                                                                            |
| `date_range` | DateRange                                                                                                                             | No       | -       | Filter campaigns by created date range                                                                                                                               |
| `orders`     | array of OrderItem                                                                                                                    | No       | -       | Sort results by field and direction. Available fields: - created\_at: Created date - name: Campaign name - updated\_at: Updated date - scheduled\_at: Scheduled date |
| `limit`      | integer                                                                                                                               | No       | `1000`  | Maximum number of campaigns to return (1-10000)                                                                                                                      |

### DateRange

| Field     | Type           | Required | Default | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| --------- | -------------- | -------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `start`   | string         | No       | -       | The start date of the date range to query, format: YYYY-MM-DD or dynamic node reference like \{\{nodeId\_\_data.start\_date}}. Required when preset is 'FIXED' or 'CUSTOM'.                                                                                                                                                                                                                                                                                                   |
| `end`     | string         | No       | -       | The end date of the date range to query, format: YYYY-MM-DD or dynamic node reference like \{\{nodeId\_\_data.end\_date}}. Required when preset is 'FIXED' or 'CUSTOM'.                                                                                                                                                                                                                                                                                                       |
| `preset`  | string         | No       | -       | Predefined date ranges or input modes: - Use 'FIXED' or leave empty when you want to specify exact dates (YYYY-MM-DD format) in start/end fields - Use 'CUSTOM' when you want to use dynamic values from other nodes (\{\{nodeId\_\_data.start\_date}} format) in start/end fields - Use other presets (TODAY, YESTERDAY, LAST\_7\_DAYS, etc.) for predefined date ranges (start/end will be ignored) When using 'FIXED' or 'CUSTOM', both start and end fields are required. |
| `compare` | CompareOptions | No       | -       | Optional comparison date range settings. ALWAYS use this field for comparisons; DO NOT create additional requests or nodes, as the backend returns current, comparison, and delta metrics in a single call.                                                                                                                                                                                                                                                                   |

### OrderItem

| Field       | Type                       | Required | Default | Description                                                                      |
| ----------- | -------------------------- | -------- | ------- | -------------------------------------------------------------------------------- |
| `field`     | string or SelectableOption | Yes      | -       | The field to sort by. must be one of the current selected metrics or dimensions. |
| `direction` | string                     | Yes      | -       | The order to sort by, must be one of 'ASC', 'DESC'                               |

### CompareOptions

| Field                   | Type   | Required | Default      | Description                                                                                                                                                                                                                                               |
| ----------------------- | ------ | -------- | ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `start`                 | string | No       | -            | The start date of the comparison range, format: YYYY-MM-DD. Optional if preset is provided.                                                                                                                                                               |
| `end`                   | string | No       | -            | The end date of the comparison range, format: YYYY-MM-DD. Optional if preset is provided.                                                                                                                                                                 |
| `preset`                | string | No       | -            | Predefined comparison ranges. When provided, start and end will be ignored.                                                                                                                                                                               |
| `comparison_format`     | string | No       | `rows`       | Comparison output layout: 'rows' returns separate rows for current, comparison, and delta along with date ranges; 'columns' returns a single row with delta values only as additional \*\_pct or \*\_change columns depending on comparison\_value\_type. |
| `comparison_value_type` | string | No       | `percentage` | Value type: 'percentage' or 'absolute'                                                                                                                                                                                                                    |

### SelectableOption

| Field   | Type   | Required | Default | Description |
| ------- | ------ | -------- | ------- | ----------- |
| `value` | string | Yes      | -       |             |
| `label` | string | Yes      | -       |             |

## Output

**Type**: `List[Dict]`

Returns list of campaigns with id, name, status, archived, created\_at, updated\_at, scheduled\_at, send\_time, and tracking options.

**Fields**: dynamic (depend on the inputs)

**Example**:

```json theme={"dark"}
[
  {
    "id": "01ABC123",
    "name": "Winter Sale",
    "status": "sent",
    "created_at": "2026-01-15T10:00:00Z",
    "send_time": "2026-01-20T14:00:00Z"
  }
]
```
