> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://developers.brevo.com/docs/track-custom-events-rest/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developers.brevo.com/_mcp/server. # Track custom events > **Legacy Tracker Documentation** > > For the legacy tracker doc, check our guide [here](https://tracker-doc.brevo.com/docs/getting-started-1). This endpoint captures events and additional information about them. A cURL request is shown below: ```curl curl --request POST \ --url https://in-automate.brevo.com/api/v2/trackEvent \ --header 'accept: application/json' \ --header 'content-type: application/json' \ --header 'ma-key: YOUR_MA_KEY' \ --data ' { "email": "example@brevo.com", "event": "cart_updated", "properties": { "additionalProp": "additional property" }, "eventdata": { "data": { "added_product": [ { "currency": "EUR", "name": "Wrist watch", "type": "accessories", "price": "50.00" } ] } } } ' ``` Use any value for the `event` field and pass any key-value in `properties`. Do not use the reserved keys `email` or `event` inside the `properties` object. The attributes used to track events are: | Attribute | Datatype | Description | Value | | :----------- | :------- | :------------------------------------------------------------------- | :---------------------------------------------- | | `email` | String | Email used to identify the user | [john.doe@email.com](mailto:john.doe@email.com) | | `event` | String | Event to track | "item\_deleted" | | `properties` | Object | Custom fields. These user properties populate your contact database. | See example above | | `eventdata` | Object | Data you want to pass about the event | See example above | **Response** | Response code | Message | Description | | :------------ | :---------------------------------- | :----------------------------------------------------------------------------------- | | `204` | Event has been tracked successfully | No content in the JSON response — the event has been tracked. | | `400` | Bad request | Returned for `out_of_rangeModel`, `invalid_parameter`, or `missingParameter` errors. |