# Rename a campaign

Source: https://docs.emelia.io/docs/campaigns/rename-campaign

Guide: [Campaigns](https://docs.emelia.io/docs/campaigns.md)

`PATCH https://api.emelia.io/advanced/campaigns/{campaignId}/name`

Renames the campaign. Not allowed while the campaign is RUNNING.

## Authentication

Send your API key in the `Authorization` header: `Authorization: <your API key>`.

## Path parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `campaignId` | string | yes | Identifier of a multichannel campaign (24 hexadecimal characters), as returned by `POST /advanced/campaigns` or `GET /advanced/campaigns`. |

## Request body

Content type: `application/json`, required.

| Field | Type | Required | Description |
|---|---|---|---|
| `name` | string | yes |  |

```json
{
  "name": "Acme Q4 outreach v2"
}
```

## Example request

**cURL**

```bash
curl -X PATCH "https://api.emelia.io/advanced/campaigns/6650f1a2b839d80011c5a0f1/name" \
  -H "Authorization: $EMELIA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Acme Q4 outreach v2"
}'
```

**JavaScript**

```js
const response = await fetch('https://api.emelia.io/advanced/campaigns/6650f1a2b839d80011c5a0f1/name', {
  method: 'PATCH',
  headers: { Authorization: process.env.EMELIA_API_KEY, 'Content-Type': 'application/json' },
  body: JSON.stringify({
    "name": "Acme Q4 outreach v2"
  }),
});
console.log(await response.json());
```

**Python**

```python
import os
import requests

response = requests.patch(
    "https://api.emelia.io/advanced/campaigns/6650f1a2b839d80011c5a0f1/name",
    headers={"Authorization": os.environ["EMELIA_API_KEY"]},
    json={
        "name": "Acme Q4 outreach v2"
    },
)
print(response.json())
```

## Responses

### 200: Success.

| Field | Type | Required | Description |
|---|---|---|---|
| `success` | any | no |  |
| `campaign` | object | no | Full multichannel campaign as stored (internal fields such as `__v`, `hubspotIntegration`, `pipedriveIntegration` and `zapierData` are returned too). |
| `campaign._id` | string | no | MongoDB ObjectId: 24 hexadecimal characters. |
| `campaign.name` | string | no |  |
| `campaign.status` | enum: `DRAFT`, `RUNNING`, `PAUSED`, `FINISHED`, `ARCHIVED` | no |  |
| `campaign.tagIds` | array of string | no |  |
| `campaign.identities` | array of object | no |  |
| `campaign.schedule` | object | no | Sending settings of a multichannel campaign. Defaults of a new campaign are shown. |
| `campaign.steps` | object | no | One node of the sequence tree. The root is always a `START` step. Each node points to the next one with `next`; a `CONDITION` node branches with `yes` and `no` (a missing branch ends the sequence for the contacts that fall into it). `END_OF_CAMPAIGN` stops the sequence. EMAIL versions are A/B variants (one version per contact); MESSAGE and WHATSAPP versions are successive messages sent in order. A MESSAGE step placed after a CONNECTION step waits for the invitation to be accepted. |
| `campaign.recipients` | object | no |  |
| `campaign.zapierData` | array of object | no | Webhooks registered on this campaign. |
| `campaign.hubspotIntegration` | object | no |  |
| `campaign.pipedriveIntegration` | object | no |  |
| `campaign.createdAt` | string (date-time) | no |  |
| `campaign.startAt` | string (date-time) | no |  |
| `campaign.estimatedEnd` | string (date-time) | no |  |
| `campaign.plannedStart` | string (date-time) | no |  |
| `campaign.__v` | integer | no |  |

```json
{
  "success": true,
  "campaign": {
    "_id": "6650f1a2b839d80011c5a0f1",
    "name": "Q4 outreach: SaaS founders",
    "status": "DRAFT",
    "tagIds": [
      "6650f1a2b839d80011c5a0f1"
    ],
    "identities": [
      {
        "_id": "6650f1a2b839d80011c5a0f1",
        "userId": "6650f1a2b839d80011c5a0f1",
        "name": "Marie Martin",
        "email": "6650f1a2b839d80011c5a0f1",
        "linkedin": "6650f1a2b839d80011c5a0f1",
        "whatsapp": "6650f1a2b839d80011c5a0f1"
      }
    ],
    "schedule": {
      "dailyEmailAdded": 35,
      "dailyEmailLimit": 100,
      "dailyLinkedinAdded": 20,
      "dailyWhatsappAdded": 20,
      "bcc": "",
      "trackLinks": false,
      "trackOpens": false,
      "timeZone": "Europe/Brussels",
      "days": [
        0,
        1,
        2,
        3,
        4
      ],
      "start": "08:00",
      "end": "17:00",
      "blacklistUnsub": false,
      "excludeAlreadyMessaged": true,
      "eventToStop": [
        "VISITED"
      ],
      "alwaysOn": false,
      "ignoreAutoReplies": false
    },
    "steps": {
      "_id": "6650f1a2b839d800498e9dff",
      "stepType": "START",
      "delay": {
        "amount": 1,
        "unit": "MINUTES"
      },
      "identities": [
        "6650f1a2b839d800271af1ef"
      ],
      "versions": [
        {
          "_id": "6650f1a2b839d800d471e242",
          "subject": "Quick question about Nexora",
          "message": "Hi Claire, thanks for your reply. Are you free for a call on Thursday?",
          "disabled": false,
          "rawHtml": true,
          "attachments": [
            {
              "mediaType": "MEDIA"
            }
          ]
        }
      ],
      "cc": "",
      "conditions": {
        "field": "MAIL_REPLIED",
        "operator": "EQUAL"
      },
      "next": {
        "_id": "6650f1a2b839d80075fdd3ca",
        "stepType": "START",
        "delay": {
          "amount": 1,
          "unit": "MINUTES"
        },
        "identities": [
          "6650f1a2b839d800b2167636"
        ],
        "versions": [
          {
            "_id": "6650f1a2b839d80048cdb6d9",
            "subject": "Quick question about Nexora",
            "message": "Hi Claire, thanks for your reply. Are you free for a call on Thursday?",
            "disabled": false,
            "rawHtml": true,
            "attachments": []
          }
        ],
        "cc": "",
        "conditions": {
          "field": "MAIL_REPLIED",
          "operator": "EQUAL"
        },
        "next": {
          "_id": "6650f1a2b839d800a4dfb53d",
          "stepType": "START",
          "delay": {
            "amount": 1,
            "unit": "MINUTES"
          },
          "identities": [
            "6650f1a2b839d8001c33f465"
          ],
          "versions": [
            {}
          ],
          "cc": "",
          "conditions": {
            "field": "MAIL_REPLIED",
            "operator": "EQUAL"
          },
          "next": {
            "_id": "6650f1a2b839d800d76b4b24",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "yes": {
            "_id": "6650f1a2b839d800e2281dac",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "no": {
            "_id": "6650f1a2b839d800fa90870e",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          }
        },
        "yes": {
          "_id": "6650f1a2b839d80008d9a42f",
          "stepType": "START",
          "delay": {
            "amount": 1,
            "unit": "MINUTES"
          },
          "identities": [
            "6650f1a2b839d800eb3ca81f"
          ],
          "versions": [
            {}
          ],
          "cc": "",
          "conditions": {
            "field": "MAIL_REPLIED",
            "operator": "EQUAL"
          },
          "next": {
            "_id": "6650f1a2b839d80061a9645a",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "yes": {
            "_id": "6650f1a2b839d800dcd057fe",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "no": {
            "_id": "6650f1a2b839d800d26cc328",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          }
        },
        "no": {
          "_id": "6650f1a2b839d8000a64af83",
          "stepType": "START",
          "delay": {
            "amount": 1,
            "unit": "MINUTES"
          },
          "identities": [
            "6650f1a2b839d800bd846cd3"
          ],
          "versions": [
            {}
          ],
          "cc": "",
          "conditions": {
            "field": "MAIL_REPLIED",
            "operator": "EQUAL"
          },
          "next": {
            "_id": "6650f1a2b839d8001f2c2de6",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "yes": {
            "_id": "6650f1a2b839d8001c87cb02",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "no": {
            "_id": "6650f1a2b839d8003244233c",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          }
        }
      },
      "yes": {
        "_id": "6650f1a2b839d800e7933ace",
        "stepType": "START",
        "delay": {
          "amount": 1,
          "unit": "MINUTES"
        },
        "identities": [
          "6650f1a2b839d8003e92faca"
        ],
        "versions": [
          {
            "_id": "6650f1a2b839d8002ce293dd",
            "subject": "Quick question about Nexora",
            "message": "Hi Claire, thanks for your reply. Are you free for a call on Thursday?",
            "disabled": false,
            "rawHtml": true,
            "attachments": []
          }
        ],
        "cc": "",
        "conditions": {
          "field": "MAIL_REPLIED",
          "operator": "EQUAL"
        },
        "next": {
          "_id": "6650f1a2b839d8002f2974c9",
          "stepType": "START",
          "delay": {
            "amount": 1,
            "unit": "MINUTES"
          },
          "identities": [
            "6650f1a2b839d80009d3fdb1"
          ],
          "versions": [
            {}
          ],
          "cc": "",
          "conditions": {
            "field": "MAIL_REPLIED",
            "operator": "EQUAL"
          },
          "next": {
            "_id": "6650f1a2b839d800842890d8",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "yes": {
            "_id": "6650f1a2b839d8002ee6ba18",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "no": {
            "_id": "6650f1a2b839d8009335aa9a",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          }
        },
        "yes": {
          "_id": "6650f1a2b839d800bf8452b3",
          "stepType": "START",
          "delay": {
            "amount": 1,
            "unit": "MINUTES"
          },
          "identities": [
            "6650f1a2b839d8000842a783"
          ],
          "versions": [
            {}
          ],
          "cc": "",
          "conditions": {
            "field": "MAIL_REPLIED",
            "operator": "EQUAL"
          },
          "next": {
            "_id": "6650f1a2b839d800bc920876",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "yes": {
            "_id": "6650f1a2b839d800345524b2",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "no": {
            "_id": "6650f1a2b839d800641f460c",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          }
        },
        "no": {
          "_id": "6650f1a2b839d800bd5a3307",
          "stepType": "START",
          "delay": {
            "amount": 1,
            "unit": "MINUTES"
          },
          "identities": [
            "6650f1a2b839d800756d2097"
          ],
          "versions": [
            {}
          ],
          "cc": "",
          "conditions": {
            "field": "MAIL_REPLIED",
            "operator": "EQUAL"
          },
          "next": {
            "_id": "6650f1a2b839d800c1089d12",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "yes": {
            "_id": "6650f1a2b839d800909fd0d6",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "no": {
            "_id": "6650f1a2b839d800d3c6efc0",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          }
        }
      },
      "no": {
        "_id": "6650f1a2b839d800aff80158",
        "stepType": "START",
        "delay": {
          "amount": 1,
          "unit": "MINUTES"
        },
        "identities": [
          "6650f1a2b839d800e3061a0c"
        ],
        "versions": [
          {
            "_id": "6650f1a2b839d800ac97aed7",
            "subject": "Quick question about Nexora",
            "message": "Hi Claire, thanks for your reply. Are you free for a call on Thursday?",
            "disabled": false,
            "rawHtml": true,
            "attachments": []
          }
        ],
        "cc": "",
        "conditions": {
          "field": "MAIL_REPLIED",
          "operator": "EQUAL"
        },
        "next": {
          "_id": "6650f1a2b839d800cc57a087",
          "stepType": "START",
          "delay": {
            "amount": 1,
            "unit": "MINUTES"
          },
          "identities": [
            "6650f1a2b839d8002ae1d217"
          ],
          "versions": [
            {}
          ],
          "cc": "",
          "conditions": {
            "field": "MAIL_REPLIED",
            "operator": "EQUAL"
          },
          "next": {
            "_id": "6650f1a2b839d800e3f18592",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "yes": {
            "_id": "6650f1a2b839d800bf669656",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "no": {
            "_id": "6650f1a2b839d800cc968440",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          }
        },
        "yes": {
          "_id": "6650f1a2b839d8008b5d86a5",
          "stepType": "START",
          "delay": {
            "amount": 1,
            "unit": "MINUTES"
          },
          "identities": [
            "6650f1a2b839d800f09d444d"
          ],
          "versions": [
            {}
          ],
          "cc": "",
          "conditions": {
            "field": "MAIL_REPLIED",
            "operator": "EQUAL"
          },
          "next": {
            "_id": "6650f1a2b839d8007df2c9ac",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "yes": {
            "_id": "6650f1a2b839d8000b224f94",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "no": {
            "_id": "6650f1a2b839d80018f4e036",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          }
        },
        "no": {
          "_id": "6650f1a2b839d800d99d6d49",
          "stepType": "START",
          "delay": {
            "amount": 1,
            "unit": "MINUTES"
          },
          "identities": [
            "6650f1a2b839d800e5e64231"
          ],
          "versions": [
            {}
          ],
          "cc": "",
          "conditions": {
            "field": "MAIL_REPLIED",
            "operator": "EQUAL"
          },
          "next": {
            "_id": "6650f1a2b839d8009fea5a58",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "yes": {
            "_id": "6650f1a2b839d800c0c1ba98",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          },
          "no": {
            "_id": "6650f1a2b839d800dcf0f81a",
            "stepType": "START",
            "delay": {
              "unit": "MINUTES"
            },
            "identities": [],
            "versions": [],
            "cc": "",
            "conditions": {
              "operator": "EQUAL"
            },
            "next": {
              "stepType": "START"
            },
            "yes": {
              "stepType": "START"
            },
            "no": {
              "stepType": "START"
            }
          }
        }
      }
    },
    "recipients": {
      "lists": [
        {
          "_id": "6650f1a2b839d80011c5a0f1",
          "name": "Q4 outreach: SaaS founders",
          "contactCount": 1
        }
      ],
      "excludedLists": [
        {
          "_id": "6650f1a2b839d80011c5a0f1",
          "name": "Q4 outreach: SaaS founders",
          "contactCount": 1
        }
      ],
      "processing": true
    },
    "zapierData": [
      {
        "_id": "6650f1a2b839d80011c5a0f1",
        "webhookUrl": "https://hooks.yourcompany.com/emelia",
        "events": []
      }
    ],
    "hubspotIntegration": {},
    "pipedriveIntegration": {},
    "createdAt": "2026-10-06T09:30:00.000Z",
    "startAt": "2026-10-06T09:30:00.000Z",
    "estimatedEnd": "2026-10-06T09:30:00.000Z",
    "plannedStart": "2026-10-06T09:30:00.000Z"
  }
}
```

### 400: Invalid request.

| Field | Type | Required | Description |
|---|---|---|---|
| `error` | string or object | yes | Human readable message. A few legacy routes return an empty object `{}` here instead of a string. |
| `code` | enum: `INVALID_REQUEST`, `INVALID_PARAMETERS`, `SUBSCRIPTION_REQUIRED`, `CAMPAIGN_NOT_FOUND`, `CAMPAIGN_ALREADY_RUNNING`, `SCHEDULE_MISSING`, `STEPS_MISSING`, `NO_RECIPIENTS`, `TOO_MANY_RECIPIENTS`, `PLANNED_START_INVALID`, `PLANNED_START_IN_PAST`, `EMAIL_PROVIDER_MISSING`, `EMAIL_PROVIDER_DISCONNECTED`, `EMAIL_PROVIDER_EXPIRED`, `ONE_EMAIL_PROVIDER_EXPIRED`, `EMAIL_ADDRESS_DISCONNECTED`, `TRACKING_DOMAINS_REQUIRED`, `LINKEDIN_ACCOUNT_MISSING`, `LINKEDIN_COOKIE_EXPIRED`, `LINKEDIN_SLOT_EXPIRED`, `WHATSAPP_ACCOUNT_EXPIRED`, `WHATSAPP_SLOT_EXPIRED`, `NO_IDENTITY_SET`, `IDENTITY_FOREIGN_ACCOUNT`, `IDENTITY_EMAIL_PROVIDER_MISSING`, `LINKEDIN_ACCOUNT_AMBIGUOUS`, `WHATSAPP_ACCOUNT_AMBIGUOUS`, `LINKEDIN_AUDIO_MISSING`, `EMAIL_STEP_NO_ACTIVE_VERSION`, `EMAIL_VERSION_NO_CONTENT`, `EMAIL_VERSION_NO_SUBJECT`, `RECIPIENTS_NO_EMAIL`, `RECIPIENTS_NO_LINKEDIN`, `MC_LINKEDIN_DAILY_LIMIT_CONNECTION`, `MC_LINKEDIN_DAILY_LIMIT`, `DAILY_CONTACT_TOO_LOW`, `LINKEDIN_DAILY_CONTACT_LIMIT`, `VERIFY_EMAIL_TOKEN_INVALID`, `VERIFY_EMAIL_TOKEN_EXPIRED`, `FREE_CREDITS_DOMAIN_ALREADY_CLAIMED`, `FREE_CREDITS_ALREADY_GRANTED`, `FREE_CREDITS_NOT_ELIGIBLE`, `RATE_LIMITED`, `STATS_COMPUTING`, `WARMUP_PROVIDER_UNSUPPORTED`, `ACCOUNT_DISCONNECTED` | no | Stable machine readable error code. Present only on catalogued errors (mainly the campaign start checks), on validation errors (`INVALID_REQUEST`) and on some LinkedIn provider errors (`ACCOUNT_DISCONNECTED`, `RATE_LIMITED`). Most other errors have no code: rely on the HTTP status and on `error`. Codes are never renamed once deployed. |
| `params` | object | no | Values interpolated in the message, for example `{"max": 30000}`. |

```json
{
  "error": "string",
  "code": "INVALID_REQUEST",
  "params": {}
}
```

### 401: Missing, malformed, unknown or disabled API key. The key must be exactly 48 characters, otherwise it is treated as a session token and rejected the same way.

| Field | Type | Required | Description |
|---|---|---|---|
| `error` | string or object | yes | Human readable message. A few legacy routes return an empty object `{}` here instead of a string. |
| `code` | enum: `INVALID_REQUEST`, `INVALID_PARAMETERS`, `SUBSCRIPTION_REQUIRED`, `CAMPAIGN_NOT_FOUND`, `CAMPAIGN_ALREADY_RUNNING`, `SCHEDULE_MISSING`, `STEPS_MISSING`, `NO_RECIPIENTS`, `TOO_MANY_RECIPIENTS`, `PLANNED_START_INVALID`, `PLANNED_START_IN_PAST`, `EMAIL_PROVIDER_MISSING`, `EMAIL_PROVIDER_DISCONNECTED`, `EMAIL_PROVIDER_EXPIRED`, `ONE_EMAIL_PROVIDER_EXPIRED`, `EMAIL_ADDRESS_DISCONNECTED`, `TRACKING_DOMAINS_REQUIRED`, `LINKEDIN_ACCOUNT_MISSING`, `LINKEDIN_COOKIE_EXPIRED`, `LINKEDIN_SLOT_EXPIRED`, `WHATSAPP_ACCOUNT_EXPIRED`, `WHATSAPP_SLOT_EXPIRED`, `NO_IDENTITY_SET`, `IDENTITY_FOREIGN_ACCOUNT`, `IDENTITY_EMAIL_PROVIDER_MISSING`, `LINKEDIN_ACCOUNT_AMBIGUOUS`, `WHATSAPP_ACCOUNT_AMBIGUOUS`, `LINKEDIN_AUDIO_MISSING`, `EMAIL_STEP_NO_ACTIVE_VERSION`, `EMAIL_VERSION_NO_CONTENT`, `EMAIL_VERSION_NO_SUBJECT`, `RECIPIENTS_NO_EMAIL`, `RECIPIENTS_NO_LINKEDIN`, `MC_LINKEDIN_DAILY_LIMIT_CONNECTION`, `MC_LINKEDIN_DAILY_LIMIT`, `DAILY_CONTACT_TOO_LOW`, `LINKEDIN_DAILY_CONTACT_LIMIT`, `VERIFY_EMAIL_TOKEN_INVALID`, `VERIFY_EMAIL_TOKEN_EXPIRED`, `FREE_CREDITS_DOMAIN_ALREADY_CLAIMED`, `FREE_CREDITS_ALREADY_GRANTED`, `FREE_CREDITS_NOT_ELIGIBLE`, `RATE_LIMITED`, `STATS_COMPUTING`, `WARMUP_PROVIDER_UNSUPPORTED`, `ACCOUNT_DISCONNECTED` | no | Stable machine readable error code. Present only on catalogued errors (mainly the campaign start checks), on validation errors (`INVALID_REQUEST`) and on some LinkedIn provider errors (`ACCOUNT_DISCONNECTED`, `RATE_LIMITED`). Most other errors have no code: rely on the HTTP status and on `error`. Codes are never renamed once deployed. |
| `params` | object | no | Values interpolated in the message, for example `{"max": 30000}`. |

```json
{
  "error": "Authentication required"
}
```

### 500: Unexpected error. IMPORTANT: this is also what you receive today when the per minute quota of your account is exceeded (the quota error is not mapped to 429 for API keys). No `Retry-After` header is sent. Wait until the next minute window before retrying.

| Field | Type | Required | Description |
|---|---|---|---|
| `error` | string or object | yes | Human readable message. A few legacy routes return an empty object `{}` here instead of a string. |
| `code` | enum: `INVALID_REQUEST`, `INVALID_PARAMETERS`, `SUBSCRIPTION_REQUIRED`, `CAMPAIGN_NOT_FOUND`, `CAMPAIGN_ALREADY_RUNNING`, `SCHEDULE_MISSING`, `STEPS_MISSING`, `NO_RECIPIENTS`, `TOO_MANY_RECIPIENTS`, `PLANNED_START_INVALID`, `PLANNED_START_IN_PAST`, `EMAIL_PROVIDER_MISSING`, `EMAIL_PROVIDER_DISCONNECTED`, `EMAIL_PROVIDER_EXPIRED`, `ONE_EMAIL_PROVIDER_EXPIRED`, `EMAIL_ADDRESS_DISCONNECTED`, `TRACKING_DOMAINS_REQUIRED`, `LINKEDIN_ACCOUNT_MISSING`, `LINKEDIN_COOKIE_EXPIRED`, `LINKEDIN_SLOT_EXPIRED`, `WHATSAPP_ACCOUNT_EXPIRED`, `WHATSAPP_SLOT_EXPIRED`, `NO_IDENTITY_SET`, `IDENTITY_FOREIGN_ACCOUNT`, `IDENTITY_EMAIL_PROVIDER_MISSING`, `LINKEDIN_ACCOUNT_AMBIGUOUS`, `WHATSAPP_ACCOUNT_AMBIGUOUS`, `LINKEDIN_AUDIO_MISSING`, `EMAIL_STEP_NO_ACTIVE_VERSION`, `EMAIL_VERSION_NO_CONTENT`, `EMAIL_VERSION_NO_SUBJECT`, `RECIPIENTS_NO_EMAIL`, `RECIPIENTS_NO_LINKEDIN`, `MC_LINKEDIN_DAILY_LIMIT_CONNECTION`, `MC_LINKEDIN_DAILY_LIMIT`, `DAILY_CONTACT_TOO_LOW`, `LINKEDIN_DAILY_CONTACT_LIMIT`, `VERIFY_EMAIL_TOKEN_INVALID`, `VERIFY_EMAIL_TOKEN_EXPIRED`, `FREE_CREDITS_DOMAIN_ALREADY_CLAIMED`, `FREE_CREDITS_ALREADY_GRANTED`, `FREE_CREDITS_NOT_ELIGIBLE`, `RATE_LIMITED`, `STATS_COMPUTING`, `WARMUP_PROVIDER_UNSUPPORTED`, `ACCOUNT_DISCONNECTED` | no | Stable machine readable error code. Present only on catalogued errors (mainly the campaign start checks), on validation errors (`INVALID_REQUEST`) and on some LinkedIn provider errors (`ACCOUNT_DISCONNECTED`, `RATE_LIMITED`). Most other errors have no code: rely on the HTTP status and on `error`. Codes are never renamed once deployed. |
| `params` | object | no | Values interpolated in the message, for example `{"max": 30000}`. |

```json
{
  "error": "Internal server error"
}
```
