> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developers.brevo.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developers.brevo.com/_mcp/server.

See the public API reference for senders at [API Reference > Senders](/reference/create-sender). The endpoints are covered one by one, starting with `Create a new sender`.

## 1. Create a new sender

Send a `POST` request to `https://api.brevo.com/v3/senders`. Sample cURL request:

```curl
curl --request POST \
     --url https://api.brevo.com/v3/senders \
     --header 'accept: application/json' \
     --header 'api-key: ' \
     --header 'content-type: application/json' \
     --data '
{
     "ips": [
          {
               "ip": "123.98.689.7",
               "domain": "mycompany.com",
               "weight": 50
          }
     ],
```

Endpoint parameters:

| Attribute | Datatype         | Description                                                                          | Value                                                         |
| :-------- | :--------------- | :----------------------------------------------------------------------------------- | :------------------------------------------------------------ |
| `name`    | String           | From Name to use for the sender                                                      | Newsletter                                                    |
| `email`   | String           | From email to use for the sender. A verification email will be sent to this address. | [newsletterr@mycompany.com](mailto:newsletterr@mycompany.com) |
| `ips`     | Array of objects | Mandatory in case of dedicated IP. IPs to associate to the sender                    | IP objects                                                    |

Since `ips` is an array of objects, it has sub-attributes:

| Attribute | Datatype | Description                                                                                                                                                                            | Value         |
| :-------- | :------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------ |
| `ip`      | String   | Dedicated IP available in your account                                                                                                                                                 | 123.98.689.7  |
| `domain`  | String   | Domain of the IP                                                                                                                                                                       | mycompany.com |
| `weight`  | Int64    | Weight to apply to the IP. Sum of all IP weights must be 100. Should be passed for either ALL or NONE of the IPs. If it's not passed, the sending will be equally balanced on all IPs. | 50            |

\


#### Using ips as array of objects

You can associate multiple dedicated IPs with a single sender.

\


**Response**

| Response code | Message        | Description                         |
| :------------ | :------------- | :---------------------------------- |
| `201`         | Sender created | Sender was created.                 |
| `400`         | Bad request    | Parameters are in the wrong format. |

\


## 2. Update a sender

Send a `PUT` request to `https://api.brevo.com/v3/senders/{senderId}` to update an existing sender. Sample cURL request:

```curl
curl --request PUT \
     --url https://api.brevo.com/v3/senders/24 \
     --header 'accept: application/json' \
     --header 'api-key: ' \
     --header 'content-type: application/json' \
     --data '
{
     "ips": [
          {
               "ip": "123.98.689.7",
               "domain": "mycompany.com",
               "weight": 50
          }
     ],
     "name": "Newsletter",
     "email": "newsletter@mycompany.com"
}
'
```

The `Update a sender` attributes split into path params and body params.

\


**Path params**

| Attribute  | Datatype | Description      | Value |
| :--------- | :------- | :--------------- | :---- |
| `senderId` | Int64    | Id of the sender | 24    |

\


**Body params**

| Attribute | Datatype         | Description                                                                          | Value                                                         |
| :-------- | :--------------- | :----------------------------------------------------------------------------------- | :------------------------------------------------------------ |
| `name`    | String           | From Name to use for the sender                                                      | Newsletter                                                    |
| `email`   | String           | From email to use for the sender. A verification email will be sent to this address. | [newsletterr@mycompany.com](mailto:newsletterr@mycompany.com) |
| `ips`     | Array of objects | Mandatory in case of dedicated IP. IPs to associate to the sender                    | IP objects                                                    |

Since `ips` is an array of objects, it has sub-attributes:

|          |        |                                                                                                                                                                                        |               |
| :------- | :----- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------ |
| `ip`     | String | Dedicated IP available in your account                                                                                                                                                 | 123.98.689.7  |
| `domain` | String | Domain of the IP                                                                                                                                                                       | mycompany.com |
| `weight` | Int64  | Weight to apply to the IP. Sum of all IP weights must be 100. Should be passed for either ALL or NONE of the IPs. If it's not passed, the sending will be equally balanced on all IPs. | 50            |

\


**Response**

| Response code | Description                        | Message             |
| :------------ | :--------------------------------- | :------------------ |
| `204`         | Sender was updated.                | Sender updated      |
| `400`         | Missing or invalid parameter.      | Bad request         |
| `404`         | Sender ID is missing or incorrect. | Sender ID not found |

\


## 3. Get the list of all your senders

Send a `GET` request to `https://api.brevo.com/v3/senders`. Sample cURL request:

```curl
curl --request GET \
     --url 'https://api.brevo.com/v3/senders?ip=192.168.8.138&domain=mydomain.com' \
     --header 'accept: application/json' \
     --header 'api-key: '
```

\


Endpoint attributes:

| Attribute | Datatype | Description                               | Value         |
| :-------- | :------- | :---------------------------------------- | :------------ |
| `ip`      | String   | Filter your senders for a specific ip     | 192.168.8.138 |
| `domain`  | String   | Filter your senders for a specific domain | mydomain.com  |

\


**Response**

| Response code | Message         | Description                               |
| :------------ | :-------------- | :---------------------------------------- |
| `200`         | List of senders | Returns the list of senders.              |
| `400`         | Bad request     | Returned for invalid or wrong parameters. |

\


## Delete a sender

Send a `DELETE` request to `https://api.brevo.com/v3/senders/{senderId}`. To implement this endpoint in your preferred language, use the code below.

Sample cURL request:

```curl
curl --request DELETE \
     --url https://api.brevo.com/v3/senders/245 \
     --header 'accept: application/json' \
     --header 'api-key: '
```

The only attribute is `senderId`, returned in the response when you create a sender.

| Attribute  | Datatype | Description      | Value |
| :--------- | :------- | :--------------- | :---- |
| `senderId` | Int64    | Id of the sender | 245   |

\


**Response**

| Response code | Message             | Description                                            |
| :------------ | :------------------ | :----------------------------------------------------- |
| `204`         | Sender deleted      | Sender was deleted.                                    |
| `400`         | Bad request         | Invalid or missing parameters, or other request issue. |
| `404`         | Sender Id not found | Sender ID to be deleted was not found.                 |