# Messages

The example shows **WhatsApp** Channel, however the payload format is similar for other channels such as **Instagram, Messenger, Telegram, and Live Chat.**

## Incoming Messages

**(i) Payload Format:** This is an example of WhatsApp Incoming Messages Payload data format and content that Whautomate will transmit to the configured endpoint. All other channels follow similar payload format.&#x20;

```json
{
  "event": {
    "id": "{{event.id}}",
    "type": "{{event.type}}",
    "timeStamp": "{{event.timeStamp}}",
    "key": "{{event.key}}"
  },
  "message": {
    "id": "{{message.id}}",
    "contact": {
      "id": "{{message.contact.id}}",
      "channel": "{{message.contact.channel}}",
      "phoneNumber": "{{message.contact.phoneNumber}}"
    },
    "channel": "{{message.channel}}",
    "isIncoming": "{{message.isIncoming}}",
    "type": "{{message.type}}",
    "replyToMessage": {
      "id": "{{message.replyToMessage.id}}"
    },
    "from": "{{message.from}}",
    "sentBy": "{{message.sentBy}}",
    "timestamp": "{{message.timestamp}}",
    "status": "{{message.status}}",
    "errorMessage": "{{message.errorMessage}}",
    "headerText": "{{message.headerText}}",
    "mediaUrl": "{{message.mediaUrl}}",
    "caption": "{{message.caption}}",
    "text": "{{message.text}}",
    "footerText": "{{message.footerText}}",
    "options": "{{message.options}}",
    "createdAt": "{{message.createdAt}}",
    "updatedAt": "{{message.updatedAt}}"
  }
}
```

(ii) WhatsApp Incoming Message test Payload data 👇

```json
{
  "event": {
    "id": "cIH32l5nW8",
    "type": "incoming_whatsapp_message",
    "timeStamp": "2024-03-17T03:31:24.572Z",
    "key": "2xoE5Rb6yT"
  },
  "message": {
    "id": "2xoE5Rb6yT",
    "contact": {
      "id": "mA7FeZiPlb",
      "channel": "whatsapp",
      "phoneNumber": "6598765432"
    },
    "channel": "whatsApp",
    "isIncoming": "true",
    "type": "text",
    "replyToMessage": {},
    "from": "John",
    "timestamp": "2024-03-17T03:31:24.572Z",
    "text": "This is a sample message.",
    "createdAt": "2022-01-01T12:00:00Z",
    "updatedAt": "2024-03-17T10:30:00Z"
  }
}
```

***

## Outgoing Messages

**(i) Payload Format:** This is an example of WhatsApp WhatsApp Outgoing Messages Payload data format and content that Whautomate will transmit to the configured endpoint. All other channels follow similar payload format.&#x20;

```json
{
  "event": {
    "id": "{{event.id}}",
    "type": "{{event.type}}",
    "timeStamp": "{{event.timeStamp}}",
    "key": "{{event.key}}"
  },
  "message": {
    "id": "{{message.id}}",
    "contact": {
      "id": "{{message.contact.id}}",
      "channel": "{{message.contact.channel}}",
      "phoneNumber": "{{message.contact.phoneNumber}}"
    },
    "channel": "{{message.channel}}",
    "isIncoming": "{{message.isIncoming}}",
    "type": "{{message.type}}",
    "replyToMessage": {
      "id": "{{message.replyToMessage.id}}"
    },
    "from": "{{message.from}}",
    "sentBy": "{{message.sentBy}}",
    "timestamp": "{{message.timestamp}}",
    "status": "{{message.status}}",
    "errorMessage": "{{message.errorMessage}}",
    "headerText": "{{message.headerText}}",
    "mediaUrl": "{{message.mediaUrl}}",
    "caption": "{{message.caption}}",
    "text": "{{message.text}}",
    "footerText": "{{message.footerText}}",
    "options": "{{message.options}}",
    "createdAt": "{{message.createdAt}}",
    "updatedAt": "{{message.updatedAt}}"
  }
}
```

(ii) WhatsApp Outgoing Message test Payload data 👇

```json
{
  "event": {
    "id": "z6nbgjHupV",
    "type": "outgoing_whatsapp_message",
    "timeStamp": "2024-03-17T03:34:50.949Z",
    "key": "bhe3VsVdv4"
  },
  "message": {
    "id": "bhe3VsVdv4",
    "contact": {
      "id": "YA0FvPocZs",
      "channel": "whatsapp",
      "phoneNumber": "6581513780"
    },
    "channel": "whatsApp",
    "isIncoming": "false",
    "type": "text",
    "replyToMessage": {},
    "sentBy": "John Doe",
    "text": "This is a test message.",
    "createdAt": "2022-01-01T12:00:00Z",
    "updatedAt": "2024-03-17T10:30:00Z"
  }
}
```
