> 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.

# Major SDK releases: Node.js v6.0.0, PHP v5.0.0, Python v5.0.0

We've released the next major version of our three official SDKs. These are **opt-in major releases with breaking changes** — your existing v4.x/v5.x integrations are not affected unless you upgrade.

## Why this release

Most of the breaking changes come from an internal effort at Brevo to make our API endpoints, parameters and models more **self-descriptive**. The goal is to make the public surface easier to read at a glance — both for developers and for AI agents working against the Brevo API — so that names, shapes and required fields convey intent without needing to cross-reference external docs.

Concretely:

* Consistent parameter naming across languages
* Payload wrappers that reflect what each endpoint actually does (e.g. `{ events: [...] }`)
* Filter keys that match the wire format
* Model fields renamed or removed where the previous names were ambiguous
* Tightened types (`DateTime`/`datetime` instead of `string` for dates, typed unions instead of generic maps)

We've kept the previous major lines supported so you can adopt the new versions on your own timeline.

## Releases

### Node.js — [`@getbrevo/brevo` v6.0.0](https://github.com/getbrevo/brevo-node/releases/tag/v6.0.0)

* Full changelog: [Node.js SDK changelog](/docs/sdks-libraries/node-changelog)
* New `auth` constructor option for custom `AuthProvider` injection (existing `apiKey` continues to work unchanged)
* Breaking: `getCompanies` filter key, `createBatchEvents` payload shape, Balance endpoints, CRM types, model field removals/renames

### PHP — [`getbrevo/brevo-php` v5.0.0](https://github.com/getbrevo/brevo-php/releases/tag/v5.0.0)

* Full changelog: [PHP SDK changelog](/docs/sdks-libraries/php-changelog)
* Breaking: `GetCompaniesRequest::filters` renamed, `Event::createBatchEvents` wrapper, Balance/CRM/Email Campaigns model changes, date fields tightened to `DateTime`, associations union flattened

### Python — [`brevo-python` v5.0.0](https://github.com/getbrevo/brevo-python/releases/tag/v5.0.0)

* Full changelog: [Python SDK changelog](/docs/sdks-libraries/python-changelog)
* Breaking: `get_companies` keyword renamed, `create_batch_events` keyword change, Webhooks signature change, shape collapses (`Union[str, List[str]]`, `Dict[str, int]`), 21 top-level imports removed
* Every change applies symmetrically to both `Brevo` (sync) and `AsyncBrevo`

## Holding on the previous major

If you're not ready to migrate, pin to the previous major line — both lines will continue to receive wire-compatibility fixes.

```bash
# Node.js
npm install @getbrevo/brevo@^5.0

# PHP
composer require getbrevo/brevo-php:^4.0

# Python
pip install "brevo-python>=4,<5"
```

Each SDK README includes an "Upgrading from v4.x / v5.x" guide with the full list of breaking changes and code examples.