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

# Conversations webhooks

This page lists all Conversation events you can track, along with their schema and parameters.

## Conversation started

Triggered when a conversation is started by a visitor or an agent (automatic targeted messages and pushed messages don't trigger the event).

| Attribute name          | Data type                                                  | Description                                                                                                                                                                                                         |
| ----------------------- | ---------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `eventName`             | string                                                     | "conversationStarted"                                                                                                                                                                                               |
| `conversationId`        | string                                                     | ID of the continuous conversation with one visitor.                                                                                                                                                                 |
| `message`               | [Message](/docs/conversations-webhooks#the-message-object) | Initial message                                                                                                                                                                                                     |
| `agent`                 | [Agent](/docs/conversations-webhooks#the-agent-object)     | Agent information                                                                                                                                                                                                   |
| `visitor`               | [Visitor](/docs/conversations-webhooks#the-visitor-object) | Visitor information:   - country, language, browser, etc. - contact attributes - info from contact form or JS API - info from channel (i.e. Facebook profile) - terms of service and marketing consents - and more! |
| `conversationStartPage` | Object                                                     | For the chat widget, will contain the `link` and `title` of your website at the time the conversation was started.                                                                                                  |
| `isNoAvailableAgent`    | Boolean                                                    | Shows if no agent is online at this point                                                                                                                                                                           |

```json
{
    "eventName": "conversationStarted",
    "conversationId": "MxhGJAEugdLtS2BBq",
    
    "conversationStartPage": {
      "link": "https://getwear.com/women/151254/",
      "title": "Washed skinny jeans for women"
    }

    // initial message (see “The Message object” below)
    // /guides/conversations/conversations-webhooks#the-message-object
    "message": {
        "id": "dkmyYPxJyh5rKDhRT",
        // `type` can be `agent` or `visitor`
        "type": "agent",
        "text": "Hi there! Did you receive your tracking number?",
        "html": "Hi there! Did you receive your tracking number?",
        // timestamp in ms
        "createdAt": 1665578322700,
        // agent’s name and ID is passed in case it’s agent’s message
        "agentId": "bnRzp4CioKudG4aHm",
        "agentName": "Julia",
        // only set when the agent has uploaded a profile picture
        "agentUserpic": "https://ucarecdn.com/06e119c4-debd-420f-bb8c-7a2f261ca0e5/"
    },

    // agent info is passed in case chat was started by an agent
    "agent": {
        "id": "bnRzp4CioKudG4aHm",
        "name": "Julia",
        "email": "julia@getwear.com",
        // only set when the agent has uploaded a profile picture
        "userpic": "https://ucarecdn.com/06e119c4-debd-420f-bb8c-7a2f261ca0e5/"
    },

    // visitor information
    "visitor": {
        // id generated by Brevo or `visitorId` passed to `window.BrevoConversationsSetup`
        // (see “Binding chat to a user account”: /guides/conversations/customize-the-chat-widget#binding-conversations-to-user-accounts)
        "id": "vfg1y4h4ioapl1cx0trw1mujk6den021zs9b2q8",
        "threadId": "aC4krWMZWLYzz9sKZ",
        // link to this conversation in dashboard
        "threadLink": "https://conversations-app.brevo.com/conversations/aC4krWMZWLYzz9sKZ",
        "source": "widget",
        // For Facebook/Instagram/WhatsApp, the ID of the page/account
        "sourceChannelRef": null,
        // For Facebook/Instagram/WhatsApp, the link of the channel on the platform
        "sourceChannelLink": null,
        // For Facebook/Instagram/WhatsApp, the ID of the visitor on the platform
        "sourceConversationRef": null,
        // id of the agent group
        "groupId": "z2o3F8GDkNpKD4BYt",
        // visitor’s userpic color in Conversations
        "color": "#faebd7",
        "ip": "192.168.1.179",
        // visitor’s browser language
        "browserLanguage": "en-US",
        // language displayed to the visitor
        "conversationLanguage": "en",
        "browser": "Chrome 106.0.0",
        "os": "Windows 10",
        // User agent string
        "userAgent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36",
        "country": "Ireland",
        "city": "Dublin",
        "lastVisit": {
            // timestamp in ms
            "startedAt": 1664550759104,
            // finishedAt can be undefined for an ongoing visit
            "finishedAt": 1664551471534,
            // last visited website
            "hostName": "getwear.com",
            // list of viewed pages (link + title) during current visit
            "viewedPages": [
                {
                    "link": "https://getwear.com/",
                    "title": "Getwear — custom designer jeans"
                },
                {
                    "link": "https://getwear.com/women/151254/",
                    "title": "Washed skinny jeans for women"
                }
            ]
        },
        // name displayed in dashboard (userpic color name for anonymous visitors, e.g. “Dark Orange”)
        "displayedName": "Jane",
        // Attributes from the contact
        "contactAttributes": {
            "SMS": "35315684258"
        },
        // Information from the contact form or passed to the JS API.
        // (see “Passing user details to Conversations”: /guides/conversations/customize-the-chat-widget#passing-user-details-to-conversations)
        "integrationAttributes": {
            "FIRSTNAME": "Jane",
            "EMAIL": "jane@example.com",
            "ORDER": "#151254",
            "CART": "Washed skinny jeans for women, $99"
        },
        // Combination of the two above, priority is given to the information filled by visitor
        // and/or agents. This object should be used over the two above in most cases.
        "attributes": {
            "FIRSTNAME": "Jane",
            "EMAIL": "jane@example.com",
            "SMS": "35315684258",
            "ORDER": "#151254",
            "CART": "Washed skinny jeans for women, $99"
        },
        // Attributes that can be formatted only
        "formattedAttributes": {
          "SMS": "+353 1 568 4258"
        },
        "notes": "Loves skinny jeans",
        "contactId": 5,
        "marketingConsent": false,
        "termsOfServiceConsent": true
    }
}
```

## Conversation fragment

Triggered after each message, with some exceptions. The event is not triggered when:

* The message is an automatic targeted message from an agent.
* The visitor's chat is blocked by a mandatory [contact form](https://conversations-app.sendinblue.com/settings/bot) (the "*Get messages only once the form is filled*" option in contact form settings). In this case, the event is triggered after the visitor fills the contact form.
* The message is a [pushed message](/reference/send-an-automated-message-to-a-visitor) and there are no previous conversations with the visitor.

The `messages` property of the event object contains all messages since the previous `conversationFragment` event.

#### This ruleset is designed for two-way integrations with help desks and the like.

The event is only triggered when a message requires agents' attention, or when an agent's response should be added to the conversation (for example, when a new ticket should be created or an existing ticket should be updated).

That's why automatic targeted messages don't trigger the event, but are included in the webhook for completeness the next time the event fires.

| Attribute name       | Data type                                                      | Description                                                                                                                                                                                                         |
| -------------------- | -------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `eventName`          | string                                                         | "conversationFragment"                                                                                                                                                                                              |
| `conversationId`     | string                                                         | ID of the continuous conversation with one visitor.                                                                                                                                                                 |
| `messages`           | [Message\[\]](/docs/conversations-webhooks#the-message-object) | List of messages since the previous `conversationFragment` event                                                                                                                                                    |
| `agents`             | Object\[]                                                      | List of agents who participated in this fragment                                                                                                                                                                    |
| `visitor`            | [Visitor](/docs/conversations-webhooks#the-visitor-object)     | Visitor information:   - country, language, browser, etc. - contact attributes - info from contact form or JS API - info from channel (i.e. Facebook profile) - terms of service and marketing consents - and more! |
| `isNoAvailableAgent` | Boolean                                                        | Shows if no agent is online at this point                                                                                                                                                                           |

```json
{
    "eventName": "conversationFragment",
    "conversationId": "aC4krWMZWLYzz9sKZ",

    // list of messages since previous `conversationFragment` event
    // (see “The Message object” below)
    // /guides/conversations/conversations-webhooks#the-message-object
    "messages": [
        // pushed message from an agent (see `pushedMessages` in REST API)
        {
            "type": "agent",
            "id": "AXCR3k9bpSY7bpuh7",
            "text": "Your order has shipped! Here’s your tracking number: 9114 5847 4668 7775 9233 54",
          	"html": "Your order has shipped! Here&39;s your tracking number: 9114 5847 4668 7775 9233 54",
            "createdAt": 1664550379561,
            "agentId": "d9nKoegKSjmCtyK78",
            "agentName": "Liz",
            // only set when the agent has uploaded a profile picture
            "agentUserpic": "https://ucarecdn.com/06e119c4-debd-420f-bb8c-7a2f261ca0e5/",
            // `true` for pushed messages
            "isPushed": true
        },

        // automatic targeted message from an agent
        {
            "type": "agent",
            "id": "DftGtKqyJpBXtC42J",
            "text": "Hi there! How can we help you?",
            "html": "Hi there! How can we help you?",
            "createdAt": 1664554934355,
            "agentId": "bnRzp4CioKudG4aHm",
            "agentName": "Julia",
            // only set when the agent has uploaded a profile picture
            "agentUserpic": "https://ucarecdn.com/06e119c4-debd-420f-bb8c-7a2f261ca0e5/",
            // `true` for automatic messages from “Targeted chats & triggers”
            "isTrigger": true
        },

        // visitor’s message
        {
            "type": "visitor",
            "id": "JuzQe8pJ9cZqymJK9",
            "text": "I’ve changed my email, could you please re-send my order details?",
            "html": "I&39;ve changed my email, could you please re-send my order details?",
            "createdAt": 1664563333617
        }
    ],

    // list of agents who participated in this fragment
    "agents": [
        {
            "id": "d9nKoegKSjmCtyK78",
            "name": "Liz",
            "email": "liz@getwear.com",
            // only set when the agent has uploaded a profile picture
            "userpic": "https://ucarecdn.com/93d1e396-2a78-4ece-82f0-7b8bb9043b78/"
        },

        {
            "id": "bnRzp4CioKudG4aHm",
            "name": "Julia",
            "email": "julia@getwear.com",
            // only set when the agent has uploaded a profile picture
            "userpic": "https://ucarecdn.com/06e119c4-debd-420f-bb8c-7a2f261ca0e5/"
        }
    ],

    // visitor information
    "visitor": {
  
        // id generated by Brevo or `visitorId` passed to `window.BrevoConversationsSetup`
        // (see “Binding chat to a user account”: /guides/conversations/customize-the-chat-widget#binding-conversations-to-user-accounts)
        "id": "vfg1y4h4ioapl1cx0trw1mujk6den021zs9b2q8",
        "threadId": "aC4krWMZWLYzz9sKZ",
        // link to this conversation in dashboard
        "threadLink": "https://conversations-app.brevo.com/conversations/aC4krWMZWLYzz9sKZ",
        "source": "widget",
        // For Facebook/Instagram/WhatsApp, the ID of the page/account
        "sourceChannelRef": null,
        // For Facebook/Instagram/WhatsApp, the link of the channel on the platform
        "sourceChannelLink": null,
        // For Facebook/Instagram/WhatsApp, the ID of the visitor on the platform
        "sourceConversationRef": null,
        // id of the agent group
        "groupId": "z2o3F8GDkNpKD4BYt",
        // visitor’s userpic color in Conversations
        "color": "#faebd7",
        "ip": "192.168.1.179",
        // visitor’s browser language
        "browserLanguage": "en-US",
        // language displayed to the visitor
        "conversationLanguage": "en",
        "browser": "Chrome 106.0.0",
        "os": "Windows 10",
        // User agent string
        "userAgent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36",
        "country": "Ireland",
        "city": "Dublin",
        "lastVisit": {
            // timestamp in ms
            "startedAt": 1664550759104,
            // finishedAt can be undefined for an ongoing visit
            "finishedAt": 1664551471534,
            // last visited website
            "hostName": "getwear.com",
            // list of viewed pages (link + title) during current visit
            "viewedPages": [
                {
                    "link": "https://getwear.com/",
                    "title": "Getwear — custom designer jeans"
                },
                {
                    "link": "https://getwear.com/women/151254/",
                    "title": "Washed skinny jeans for women"
                }
            ]
        },
        // name displayed in dashboard (userpic color name for anonymous visitors, e.g. “Dark Orange”)
        "displayedName": "Jane",
        // Attributes from the contact
        "contactAttributes": {
            "SMS": "35315684258"
        },
        // Information from the contact form or passed to the JS API.
        // (see “Passing user details to Conversations”: /guides/conversations/customize-the-chat-widget#passing-user-details-to-conversations)
        "integrationAttributes": {
            "FIRSTNAME": "Jane",
            "EMAIL": "jane@example.com",
            "ORDER": "#151254",
            "CART": "Washed skinny jeans for women, $99"
        },
        // Combination of the two above, priority is given to the information filled by visitor
        // and/or agents. This object should be used over the two above in most cases.
        "attributes": {
            "FIRSTNAME": "Jane",
            "EMAIL": "jane@example.com",
            "SMS": "35315684258",
            "ORDER": "#151254",
            "CART": "Washed skinny jeans for women, $99"
        },
        // Attributes that can be formatted only
        "formattedAttributes": {
          "SMS": "+353 1 568 4258"
        },
        "notes": "Loves skinny jeans",
        "contactId": 5,
        "marketingConsent": false,
        "termsOfServiceConsent": true
    }
}
```

## Conversation transcript

Triggered when a conversation finishes. A conversation is considered finished when the visitor goes offline (leaves your website) or when all participating agents leave the conversation.

| Attribute name          | Data type                                                      | Description                                                                                                                                                                                                          |
| ----------------------- | -------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `eventName`             | string                                                         | "conversationTranscript"                                                                                                                                                                                             |
| `conversationId`        | string                                                         | ID of the continuous conversation with one visitor.                                                                                                                                                                  |
| `messages`              | [Message\[\]](/docs/conversations-webhooks#the-message-object) | List of messages                                                                                                                                                                                                     |
| `missedMessagesCount`   | Number                                                         | Number of missed and offline messages                                                                                                                                                                                |
| `agents`                | Object\[]                                                      | List of agents who participated in the conversation                                                                                                                                                                  |
| `visitor`               | [Visitor](/docs/conversations-webhooks#the-visitor-object)     | Visitor information:    - country, language, browser, etc. - contact attributes - info from contact form or JS API - info from channel (i.e. Facebook profile) - terms of service and marketing consents - and more! |
| `conversationStartPage` | Object                                                         | For the chat widget, will contain the `link` and `title` of your website at the time the conversation was started.                                                                                                   |

```json
{
    "eventName": "conversationTranscript",
    "conversationId": "aC4krWMZWLYzz9sKZ",
    
    // For the chat widget, will contain the `link` and `title` of your website at the time the conversation was started
    "conversationStartPage": {
      "link": "https://getwear.com/women/151254/",
      "title": "Washed skinny jeans for women"
    }

    // list of messages (see “The Message object” below)
    // /guides/conversations/conversations-webhooks#the-message-object
    "messages": [
        // pushed message from an agent (see `pushedMessages` in REST API)
        {
            "type": "agent",
            "id": "AXCR3k9bpSY7bpuh7",
            "text": "Your order has shipped! Here’s your tracking number: 9114 5847 4668 7775 9233 54",
            "html": "Your order has shipped! Here&#39;s your tracking number: 9114 5847 4668 7775 9233 54",
            "createdAt": 1664550379561,
            "agentId": "d9nKoegKSjmCtyK78",
            "agentName": "Liz",
            // only set when the agent has uploaded a profile picture
            "agentUserpic": "https://ucarecdn.com/93d1e396-2a78-4ece-82f0-7b8bb9043b78/",
            // `true` for pushed messages
            "isPushed": true
        },

        // automatic targeted message from an agent
        {
            "type": "agent",
            "id": "DftGtKqyJpBXtC42J",
            "text": "Hi there! How can we help you?",
            "html": "Hi there! How can we help you?",
            "createdAt": 1664554934355,
            "agentId": "bnRzp4CioKudG4aHm",
            "agentName": "Julia",
            // only set when the agent has uploaded a profile picture
            "agentUserpic": "https://ucarecdn.com/06e119c4-debd-420f-bb8c-7a2f261ca0e5/",
            // `true` for automatic messages from “Targeted chats & triggers”
            "isTrigger": true
        },

        // visitor’s message
        {
            "type": "visitor",
            "id": "JuzQe8pJ9cZqymJK9",
            "text": "I’ve changed my email, could you please re-send my order details?",
            "html": "I&39;ve changed my email, could you please re-send my order details?",
            "createdAt": 1664563333617
        },

        // agent’s message
        {
            "type": "agent",
            "id": "5z5fvBj4auebD63S5",
            "text": "Sure, just a moment :)",
            "html": "Sure, just a moment :)",
            "createdAt": 1664563359830,
            "agentId": "bnRzp4CioKudG4aHm",
            "agentName": "Julia",
            // only set when the agent has uploaded a profile picture
            "agentUserpic": "https://ucarecdn.com/06e119c4-debd-420f-bb8c-7a2f261ca0e5/",
        },

        // agent sends a file
        {
            "type": "agent",
            "id": "5MzkBA9ERXJNk4JuH",
            "text": "receipt.png",
            // Sanitized file name
            "html": "receipt.png",
            "file": {
                "name": "receipt.png",
                // size in bytes
                "size": 333455,
                "isAllowedFileType": true,
                // whether the file is an image
                "isImage": true,
                "isSticker": true,
                "link": "https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/",
                // image info is passed in case the file is an image
                "imageInfo": {
                    "width": 1129,
                    "height": 525,
                    "previewLink": "https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/better/"
                }
            },
            "createdAt": 1664563366078,
            "agentId": "bnRzp4CioKudG4aHm",
            "agentName": "Julia",
            // only set when the agent has uploaded a profile picture
            "agentUserpic": "https://ucarecdn.com/06e119c4-debd-420f-bb8c-7a2f261ca0e5/"
        },

        {
            "type": "visitor",
            "id": "6QZDugATac9FXZSkp",
            "text": "Thanks!",
            "html": "Thanks!",
            "createdAt": 1664563372326,
            // `true` for missed and offline messages
            "isMissed": true
        }
    ],

    // number of missed and offline messages
    "missedMessagesCount": 1,

    // list of agents who participated in the conversation
    "agents": [
        {
            "id": "d9nKoegKSjmCtyK78",
            "name": "Liz",
            "email": "liz@getwear.com",
            // only set when the agent has uploaded a profile picture
            "userpic": "https://ucarecdn.com/93d1e396-2a78-4ece-82f0-7b8bb9043b78/"
        },

        {
            "id": "bnRzp4CioKudG4aHm",
            "name": "Julia",
            "email": "julia@getwear.com",
            // only set when the agent has uploaded a profile picture
            "userpic": "https://ucarecdn.com/06e119c4-debd-420f-bb8c-7a2f261ca0e5/"
        }
    ],

    // visitor information
    "visitor": {
        // id generated by Brevo or `visitorId` passed to `window.BrevoConversationsSetup`
        // (see “Binding chat to a user account”: /guides/conversations/customize-the-chat-widget#binding-conversations-to-user-accounts)
        "id": "vfg1y4h4ioapl1cx0trw1mujk6den021zs9b2q8",
        "threadId": "aC4krWMZWLYzz9sKZ",
        // link to this conversation in dashboard
        "threadLink": "https://conversations-app.brevo.com/conversations/aC4krWMZWLYzz9sKZ",
        "source": "widget",
        // For Facebook/Instagram/WhatsApp, the ID of the page/account
        "sourceChannelRef": null,
        // For Facebook/Instagram/WhatsApp, the link of the channel on the platform
        "sourceChannelLink": null,
        // For Facebook/Instagram/WhatsApp, the ID of the visitor on the platform
        "sourceConversationRef": null,
        // id of the agent group
        "groupId": "z2o3F8GDkNpKD4BYt",
        // visitor’s userpic color in Conversations
        "color": "#faebd7",
        "ip": "192.168.1.179",
        // visitor’s browser language
        "browserLanguage": "en-US",
        // language displayed to the visitor
        "conversationLanguage": "en",
        "browser": "Chrome 106.0.0",
        "os": "Windows 10",
        // User agent string
        "userAgent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36",
        "country": "Ireland",
        "city": "Dublin",
        "lastVisit": {
            // timestamp in ms
            "startedAt": 1664550759104,
            // finishedAt can be undefined for an ongoing visit
            "finishedAt": 1664551471534,
            // last visited website
            "hostName": "getwear.com",
            // list of viewed pages (link + title) during current visit
            "viewedPages": [
                {
                    "link": "https://getwear.com/",
                    "title": "Getwear — custom designer jeans"
                },
                {
                    "link": "https://getwear.com/women/151254/",
                    "title": "Washed skinny jeans for women"
                }
            ]
        },
        // name displayed in dashboard (userpic color name for anonymous visitors, e.g. “Dark Orange”)
        "displayedName": "Jane",
        // Attributes from the contact
        "contactAttributes": {
            "SMS": "35315684258"
        },
        // Information from the contact form or passed to the JS API.
        // (see “Passing user details to Conversations”: /guides/conversations/customize-the-chat-widget#passing-user-details-to-conversations)
        "integrationAttributes": {
            "FIRSTNAME": "Jane",
            "EMAIL": "jane@example.com",
            "ORDER": "#151254",
            "CART": "Washed skinny jeans for women, $99"
        },
        // Combination of the two above, priority is given to the information filled by visitor
        // and/or agents. This object should be used over the two above in most cases.
        "attributes": {
            "FIRSTNAME": "Jane",
            "EMAIL": "jane@example.com",
            "SMS": "35315684258",
            "ORDER": "#151254",
            "CART": "Washed skinny jeans for women, $99"
        },
        // Attributes that can be formatted only
        "formattedAttributes": {
          "SMS": "+353 1 568 4258"
        },
        "notes": "Loves skinny jeans",
        "contactId": 5,
        "marketingConsent": false,
        "termsOfServiceConsent": true,
        "isBanned": false
    }
}
```

### The Visitor object

| Attribute name                              | Data type | Description                                                                                                                                                                                                                                                                                                        |
| ------------------------------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `source`                                    | string    | Source of the visitor, e.g. `widget`, `facebook`, `whatsapp`, etc.                                                                                                                                                                                                                                                 |
| `displayedName`                             | string    | Name displayed in dashboard (userpic color name for anonymous visitors, e.g. “Dark Orange”)                                                                                                                                                                                                                        |
| `contactId`                                 | Number    | If the visitor is in your Contacts, its ID will be available here.                                                                                                                                                                                                                                                 |
| `contactAttributes`                         | Object    | Info from your Brevo contact.                                                                                                                                                                                                                                                                                      |
| `integrationAttributes`                     | Object    | Info from the integration. Examples:   - For the **chat widget**, it will be the info from the contact form or the [JS API](/docs/javascript-api-reference#updateintegrationdata). - Info from channel (i.e. Facebook profile)                                                                                     |
| `attributes`                                | Object    | Combination of the two above.  Priority is given to the contact attributes.  This object should be used over the two above in most cases                                                                                                                                                                           |
| `formattedAttributes`                       | Object    | Display name for attributes that can be formatted (`SMS`, `WHATSAPP`)                                                                                                                                                                                                                                              |
| `termsOfServiceConsent`                     | Boolean   | Useful if you have enabled ["Request consent to your terms"](https://help.sendinblue.com/hc/en-us/articles/4416568800146#h_01G16954VM9Z8KYXZDR1F5HFMK) in the Contact form, and the conversation was started by the chat widget (not applicable for other channels like Instagram or Facebook)                     |
| `marketingConsent`                          | Boolean   | Useful if you have enabled ["Request consent to your marketing communications"](https://help.sendinblue.com/hc/en-us/articles/4416568800146#h_01G16954VM9Z8KYXZDR1F5HFMK) in the Contact form,  and the conversation was started by the chat widget (not applicable for other channels like Instagram or Facebook) |
| `isBanned`                                  | Boolean   | Whether the visitor is banned (in `conversationTranscript` only)                                                                                                                                                                                                                                                   |
| `browser` / `country` /  `lastVisit` / etc. |           | More fields are available in this object, please check the sample payloads to find out.                                                                                                                                                                                                                            |

### The Agent object

| Attribute name | Data type | Description                                                                                               |
| -------------- | --------- | --------------------------------------------------------------------------------------------------------- |
| `id`           | string    | ID of the agent, as found in the [agent's page](https://conversations-app.sendinblue.com/settings/agents) |
| `name`         | string    | Name of the agent                                                                                         |
| `email`        | string    | Email address of the agent                                                                                |
| `userpic`      | string    | URL of the agent's profile photo, if they have uploaded one                                               |

### The Message object

| Attribute name      | Data type                                                                   | Description                                                                                                                                                                                                   |
| ------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                | String                                                                      | Message ID.                                                                                                                                                                                                   |
| `type`              | String                                                                      | `visitor` or `agent` (depending on who sent the message)                                                                                                                                                      |
| `text`              | String                                                                      | Message text or name of the attached file                                                                                                                                                                     |
| `html`              | String                                                                      | Safe HTML with our chat “markdown” applied                                                                                                                                                                    |
| `createdAt`         | Number                                                                      | Timestamp in milliseconds                                                                                                                                                                                     |
| `agentId`           | String                                                                      | Agent’s ID in the messages sent by an agent                                                                                                                                                                   |
| `agentName`         | String                                                                      | Agent’s name as displayed to the visitor. Only in the messages sent by an agent                                                                                                                               |
| `agentUserpic`      | String                                                                      | URL of the agent's profile photo, if they have uploaded one                                                                                                                                                   |
| `messageType`       | String                                                                      | Contains “email\_bounce” when the received answer is a bounce notification received from Gmail                                                                                                                |
| `isTrigger`         | Boolean                                                                     | `true` for automatic messages from [Targeted chats & triggers](https://conversations-app.sendinblue.com/settings/actions)  and [API](/docs/javascript-api-reference#sendautomessage)                          |
| `isPushed`          | Boolean                                                                     | For [automated messages](/reference/send-an-automated-message-to-a-visitor)                                                                                                                                   |
| `isMissed`          | Boolean                                                                     | When the chat is finished, visitor’s messages missed by the agents are marked with `\"isMissed\": true`                                                                                                       |
| `isMissedByVisitor` | Boolean                                                                     | When the chat is finished, agent’s messages missed by the visitor are marked with `\"isMissedByVisitor\": true`                                                                                               |
| `receivedFrom`      | String                                                                      | In two-way integrations, messages sent via [REST API](/reference/send-a-message-as-an-agent) can be marked with receivedFrom property and then filtered out when received in a webhook to avoid infinite loop |
| `rawUnsafeHtml`     | String                                                                      | Raw unsanitized HTML of the message                                                                                                                                                                           |
| `subject`           | String                                                                      | Email subject line (present for email-source conversations)                                                                                                                                                   |
| `isSentViaJsApi`    | Boolean                                                                     | `true` for messages sent via the JS API                                                                                                                                                                       |
| `sourceMessageId`   | String                                                                      | Original message ID from the source platform                                                                                                                                                                  |
| `from`              | Object                                                                      | Sender info (email conversations)                                                                                                                                                                             |
| `to`                | Array                                                                       | Recipients (email conversations)                                                                                                                                                                              |
| `replyTo`           | Object                                                                      | Reply-to address (email conversations)                                                                                                                                                                        |
| `cc`                | Array                                                                       | CC recipients (email conversations)                                                                                                                                                                           |
| `bcc`               | Array                                                                       | BCC recipients (email conversations)                                                                                                                                                                          |
| `isForward`         | Boolean                                                                     | `true` if the message is a forwarded message                                                                                                                                                                  |
| `file`              | [Attachment](/docs/conversations-webhooks#the-attachment-object) object     | Attachment messages have this property containing file information                                                                                                                                            |
| `attachments`       | [Attachment\[\]](/docs/conversations-webhooks#the-attachment-object) object | This can exists in email replies to chat conversations. Unlike `file`, `attachments` exist alongside the regular message                                                                                      |

### The Attachment object

| Attribute name      | Data type | Description                                                                                                                        |
| ------------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `name`              | String    | Name of the file                                                                                                                   |
| `size`              | Number    | Size in bytes                                                                                                                      |
| `isImage`           | Boolean   | Whether the file is an image                                                                                                       |
| `isSticker`         | Boolean   | For stickers (Facebook/Instagram/WhatsApp)                                                                                         |
| `link`              | String    | URL of the file                                                                                                                    |
| `isAllowedFileType` | Boolean   | Whether the file type is allowed in [this setting](https://conversations-app.sendinblue.com/settings/preferences#allowedFileTypes) |
| `mimeType`          | String    | MIME type of the file                                                                                                              |
| `isInline`          | Boolean   | Whether the attachment is inline (e.g. embedded images in emails)                                                                  |
| `inlineId`          | String    | Content-ID for inline attachments                                                                                                  |
| `imageInfo`         | Object    | In case the file is an image, will contain `width`, `height` and `previewLink`                                                     |