# Webhook Payload

Below document will describe the details of a webhook message payload

### Payload Fields

<table><thead><tr><th width="150">Field</th><th width="150">Type</th><th>Description</th></tr></thead><tbody><tr><td>messageID</td><td>string</td><td>The message ID from server side.</td></tr><tr><td>localID</td><td>string</td><td>The message ID from client side.</td></tr><tr><td>type</td><td>integer</td><td>The message type.</td></tr><tr><td>typeName</td><td>string</td><td>The message type name.</td></tr><tr><td>body</td><td>string</td><td>The content of the message.</td></tr><tr><td>data</td><td>string</td><td>The actual data payload for custom message type, in JSON string.</td></tr><tr><td>filterID</td><td>string</td><td>The filter ID.</td></tr><tr><td>isHidden</td><td>boolean</td><td>If the message should be hidden.</td></tr><tr><td>quote</td><td>object</td><td>Quoted message.</td></tr><tr><td>  title</td><td>string</td><td>The quoted message's title.</td></tr><tr><td>  content</td><td>string</td><td>The quoted message's content.</td></tr><tr><td>  imageURL</td><td>string</td><td>Quoted image URL, if any.</td></tr><tr><td>  fileID</td><td>string</td><td>Quoted file ID, if any.</td></tr><tr><td>  fileType</td><td>string</td><td>Quoted file type, if any.</td></tr><tr><td>replyTo</td><td>object</td><td>Info of the replied source message.</td></tr><tr><td>  userID</td><td>string</td><td>User ID of the replied message's sender.</td></tr><tr><td>  xcUserID</td><td>string</td><td>The user ID from customer's server.</td></tr><tr><td>  fullname</td><td>string</td><td>Full name of the original message's sender.</td></tr><tr><td>  messageID</td><td>string</td><td>The replied message ID.</td></tr><tr><td>  localID</td><td>string</td><td>The replied message's local ID.</td></tr><tr><td>  messageType</td><td>integer</td><td>The replied message type.</td></tr><tr><td>forwardFrom</td><td>object</td><td>Info of the forwarded source message.</td></tr><tr><td>  userID</td><td>string</td><td>User ID of the original message's sender.</td></tr><tr><td>  xcUserID</td><td>string</td><td>The user ID from customer's server.</td></tr><tr><td>  fullname</td><td>string</td><td>Full name of the original message's sender.</td></tr><tr><td>  messageID</td><td>string</td><td>The original message ID.</td></tr><tr><td>  localID</td><td>string</td><td>The original message's local ID.</td></tr><tr><td>room</td><td>object</td><td>The room's details.</td></tr><tr><td>  roomID</td><td>string</td><td>Room ID.</td></tr><tr><td>  xcRoomID</td><td>string</td><td>The room ID from customer's server.</td></tr><tr><td>  name</td><td>string</td><td>The room's name (chat partner's full name for personal chat, or group name for group chat).</td></tr><tr><td>  type</td><td>integer</td><td>The room type.</td></tr><tr><td>  imageURL</td><td>object</td><td>The room's picture image URL.</td></tr><tr><td>    thumbnail</td><td>string</td><td>Image URL for thumbnail picture.</td></tr><tr><td>    fullsize</td><td>string</td><td>Image URL for fullsize picture.</td></tr><tr><td>  isLocked</td><td>boolean</td><td>If the room was locked.</td></tr><tr><td>  lockedTime</td><td>long</td><td>The time the room was locked, in Unix milliseconds.</td></tr><tr><td>  deleted</td><td>long</td><td>The room's deleted time, in Unix milliseconds.</td></tr><tr><td>  isDeleted</td><td>boolean</td><td>If the room was deleted.</td></tr><tr><td>user</td><td>object</td><td>The sender user's profile.</td></tr><tr><td>  userID</td><td>integer</td><td>The user ID.</td></tr><tr><td>  xcUserID</td><td>string</td><td>The user ID from customer's server.</td></tr><tr><td>  fullname</td><td>string</td><td>The user's full name.</td></tr><tr><td>  imageURL</td><td>object</td><td>The user's picture image URL.</td></tr><tr><td>    thumbnail</td><td>string</td><td>Image URL for thumbnail picture.</td></tr><tr><td>    fullsize</td><td>string</td><td>Image URL for fullsize picture.</td></tr><tr><td>recipientID</td><td>string</td><td>The recipient's user ID or group ID, depending on the room type.</td></tr><tr><td>action</td><td>string</td><td>The action for system message.</td></tr><tr><td>target</td><td>object</td><td>The target of the action for system message.</td></tr><tr><td>  targetType</td><td>string</td><td>The target type (e.g.: "user").</td></tr><tr><td>  targetID</td><td>string</td><td>The target's ID (user ID for target type "user").</td></tr><tr><td>  targetXCID</td><td>string</td><td>The target's XC ID.</td></tr><tr><td>  targetName</td><td>string</td><td>The target's name.</td></tr><tr><td>isDelivered</td><td>boolean</td><td>If the message has been delivered to the recipient.</td></tr><tr><td>isRead</td><td>boolean</td><td>If the message has been read by the recipient.</td></tr><tr><td>isDeleted</td><td>boolean</td><td>If the message was deleted.</td></tr><tr><td>created</td><td>long</td><td>The message's created time.</td></tr><tr><td>updated</td><td>long</td><td>The message's last updated time.</td></tr><tr><td>deleted</td><td>long</td><td>The message's deleted time.</td></tr></tbody></table>

{% tabs %}
{% tab title="Payload Example" %}

```json
{
  "messageID": "130",
  "localID": "ee9fa71d70d6",
  "type": 1001,
  "typeName": "text",
  "body": "This is the body of the message",
  "data": "",
  "filterID": "",
  "isHidden": false,
  "quote": {
    "title": "",
    "content": "",
    "imageURL": "",
    "fileID": "",
    "fileType": ""
  },
  "replyTo": {
    "userID": "0",
    "xcUserID": "",
    "fullname": "",
    "messageID": "0",
    "localID": "",
    "messageType": 0
  },
  "forwardFrom": {
    "userID": "0",
    "xcUserID": "",
    "fullname": "",
    "messageID": "0",
    "localID": ""
  },
  "room": {
    "roomID": "2-7",
    "xcRoomID": "",
    "name": "Macy Sanderson, John Doe",
    "type": 1,
    "imageURL": {
      "thumbnail": "",
      "fullsize": ""
    },
    "isLocked": false,
    "lockedTime": 0,
    "deleted": 0,
    "isDeleted": false
  },
  "user": {
    "userID": 7,
    "xcUserID": "1",
    "fullname": "John Doe",
    "imageURL": {
      "thumbnail": "https://www.example.com/photos/thumb/thumbnail.jpg",
      "fullsize": "https://www.example.com/photos/full/fullsize.jpg"
    }
  },
  "recipientID": "2",
  "action": "",
  "target": {
    "targetType": "",
    "targetID": "0",
    "targetXCID": "",
    "targetName": ""
  },
  "isDelivered": false,
  "isRead": false,
  "isDeleted": false,
  "created": 1651067084218,
  "updated": 1651067084218,
  "deleted": 0
}
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.taptalk.io/powertalk-chat-sdk-documentation/webhook/webhook-payload.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
