Platform
APIs & SDKs
Resources

...

Webhooks

This document contains a reference of available webhooks. Webhooks are helpful for building applications that execute particular behavior in response to various actions, allowing you to create automated flows. In order to receive webhooks, you need to register them first.

💡 Not what you're looking for? Try these instead:

Available webhooks

Chatsincoming_chat chat_deactivated
Chat accesschat_access_granted chat_access_revoked chat_transferred
Chat usersuser_added_to_chat user_removed_from_chat
Eventsincoming_event event_updated incoming_rich_message_postback
Propertieschat_properties_updated chat_properties_deleted thread_properties_deleted thread_properties_updated event_properties_updated event_properties_deleted
Thread tagsthread_tagged thread_untagged
Statusrouting_status_set agent_deleted
Customersincoming_customer customer_session_fields_updated
Otherevents_marked_as_seen

Chats

incoming_chat

Informs about a chat coming with a new thread. The webhook payload contains the whole chat data structure. If the chat was started with some initial events, the thread object contains them.

Specifics
Actionincoming_chat
Push equivalent inAgent Chat API Customer Chat API
Webhook payload
FieldNotes
chatChat data structure
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "incoming_chat",
  "license_id": 104130623,
  "payload": {
    "chat": {
    "id": "PJ0MRSHTDG",
    "users": [
      // array of "User" objects
    ],
    "properties": {
      // "Property" object
    },
    "thread": {
      // "Thread" object
      }
    }
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

chat_deactivated

Informs that a chat was deactivated by closing the currently open thread.

Specifics
Actionchat_deactivated
Push equivalent inAgent Chat API Customer Chat API
Webhook payload
FieldNotes
user_idMissing if a thread was closed by the router.
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "chat_deactivated",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "thread_id": "K600PKZON8",
    "user_id": "b7eff798-f8df-4364-8059-649c35c9ed0c" // optional
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

Chat access

chat_access_granted

Informs that new, single access to a chat was granted. The existing access isn't overwritten.

Specifics
Actionchat_access_granted
Push equivalent inAgent Chat API
Webhook payload
FieldNotes
idChat ID
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "chat_access_granted",
  "license_id": 104130623,
  "payload": {
    "id": "PJ0MRSHTDG",
    "access": {
      "group_ids": [1]
    }
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

chat_access_revoked

Informs that access to a certain chat was revoked.

Specifics
Actionchat_access_revoked
Push equivalent inAgent Chat API
Webhook payload
FieldNotes
idChat Id
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "chat_access_revoked",
  "license_id": 104130623,
  "payload": {
    "id": "PJ0MRSHTDG",
    "access": {
      "group_ids": [1]
    }
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

chat_transferred

Informs that a chat was transferred to a different group or to an agent.

Specifics
Actionchat_transferred
Push equivalent inAgent Chat API
Webhook payload
FieldNotes
thread_idPresent if the chat is active.
transferred_toIDs of the groups and agents the chat is assigned to after the transfer.
reason *Informs why the chat was transferred.
queuePresent if the chat is queued after the transfer.

*) Possible reasons: manual, inactive, assigned, unassigned, other.

Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "chat_access_revoked",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "thread_id": "K600PKZON8",
    "requester_id": "jones@example.com",
    "reason": "manual",
    "transferred_to": {
      "group_ids": [ 19 ],
      "agent_ids": ["smith@example.com"],
    },
    "queue": {
      "position": 42,
      "wait_time": 1337,
      "queued_at_us": "2019-12-09T12:01:18.909000Z"
    }
  }
}

Chat users

user_added_to_chat

Informs that a user (Customer or Agent) was added to a chat.

Specifics
Actionuser_added_to_chat
Push equivalent inAgent Chat API Customer Chat API
Webhook payload
FieldNotes
user_typePossible values: agent, customer
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "user_added_to_chat",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "thread_id": "K600PKZON8",
    "user": {
      // "User > Customer" or "User > Agent" object
    },
    "reason": "manual",
    "requester_id": "smith@example.com"
  },
  "additional_data": {
    "chat_properties": { //optional
      // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

user_removed_from_chat

Informs that a user (Customer or Agent) was removed from a chat.

Specifics
Actionuser_removed_from_chat
Push equivalent inAgent Chat API Customer Chat API
Webhook payload
FieldNotes
user_typePossible values: agent, customer
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "user_removed_from_chat",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "thread_id": "K600PKZON8",
    "user_id": "agent@example.com",
    "reason": "manual",
    "requester_id": "smith@example.com"
  },
  "additional_data": {
    "chat_properties": { //optional
      // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

Events

incoming_event

Informs about an incoming event sent to a chat.

Specifics
Actionincoming_event
Push equivalent inAgent Chat API Customer Chat API
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "incoming_event",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "thread_id": "K600PKZON8",
    "event": {
      // "Event" object
    }
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

event_updated

Informs that an event was updated.

Specifics
Actionevent_updated
Push equivalent inAgent Chat API Customer Chat API
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "event_updated",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "thread_id": "K600PKZON8",
    "event": {
      // "Event" object
    }
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

incoming_rich_message_postback

Informs about an incoming rich message postback. The webhook payload contains the info on the postback itself, as well as the chat it was sent in.

Specifics
Actionincoming_rich_message_postback
Push equivalent inAgent Chat API Customer Chat API
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "incoming_rich_message_postback",
  "license_id": 104130623,
  "payload": {
    "user_id": "b7eff798-f8df-4364-8059-649c35c9ed0c",
    "chat_id": "PJ0MRSHTDG",
    "thread_id": "K600PKZON8",
    "event_id": "0affb00a-82d6-4e07-ae61-56ba5c36f743",
    "postback": {
      "id": "action_yes",
      "toggled": true
    }
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

Properties

chat_properties_updated

Informs about those chat properties that were updated.

Specifics
Actionchat_properties_updated
Push equivalent inAgent Chat API Customer Chat API
Webhook payload
FieldNotes
propertiesNot a full properties object. This push shows only the properties that have been recently updated.
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "chat_properties_updated",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "properties": {
      "0805e283233042b37f460ed8fbf22160": {
        "string_property": "string value"
      }
    }
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

chat_properties_deleted

Informs about those chat properties that were deleted.

Specifics
Actionchat_properties_deleted
Push equivalent inAgent Chat API Customer Chat API
Webhook payload
FieldNotes
propertiesNot a full properties object. This push shows only the properties that have been recently updated.
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "chat_properties_deleted",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "properties": {
      "0805e283233042b37f460ed8fbf22160": [
        "string_property"
      ]
    }
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

thread_properties_updated

Informs about those thread properties that were updated.

Specifics
Actionthread_properties_updated
Push equivalent inAgent Chat API Customer Chat API
Webhook payload
FieldNotes
propertiesNot a full properties object. This push shows only the properties that have been recently updated.
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "thread_properties_updated",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "thread_id": "K600PKZON8",
    "properties": {
      "0805e283233042b37f460ed8fbf22160": {
        "string_property": "string value"
      }
    }
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

thread_properties_deleted

Informs about those thread properties that were deleted.

Specifics
Actionthread_properties_deleted
Push equivalent inAgent Chat API Customer Chat API
Webhook payload
FieldNotes
propertiesNot a full properties object. This push shows only the properties that have been recently updated.
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "thread_properties_deleted",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "thread_id": "K600PKZON8",
    "properties": {
      "0805e283233042b37f460ed8fbf22160": [
        "string_property"
          ]
      }
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

event_properties_updated

Informs about those event properties that were updated.

Specifics
Actionevent_properties_updated
Push equivalent inAgent Chat API Customer Chat API
Webhook payload
FieldNotes
propertiesThis is not a full properties object. This webhook shows only the properties that have been recently updated.
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "event_properties_updated",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "thread_id": "K600PKZON8",
    "event_id": "0affb00a-82d6-4e07-ae61-56ba5c36f743",
    "properties": {
      "0805e283233042b37f460ed8fbf22160": {
        "string_property": "property_value"
      }
    }
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

event_properties_deleted

Informs about those event properties that were deleted.

Specifics
Actionevent_properties_deleted
Push equivalent inAgent Chat API Customer Chat API
Webhook payload
FieldNotes
propertiesThis is not a full properties object. This webhook shows only the properties that have been recently updated.
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "event_properties_deleted",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "thread_id": "K600PKZON8",
    "event_id": "0affb00a-82d6-4e07-ae61-56ba5c36f743",
    "properties": {
      "0805e283233042b37f460ed8fbf22160": [
        "string_property"
          ]
      }
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

Thread tags

thread_tagged

Informs that a thread was tagged.

Specifics
Actionthread_tagged
Push equivalent inAgent Chat API
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "thread_tagged",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "thread_id": "K600PKZON8",
    "tag": "bug_report"
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

thread_untagged

Informs that a thread was untagged.

Specifics
Actionthread_untagged
Push equivalent inAgent Chat API
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "thread_untagged",
  "license_id": 104130623,
  "payload": {
    "chat_id": "PJ0MRSHTDG",
    "thread_id": "K600PKZON8",
    "tag": "bug_report"
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

Status

routing_status_set

Informs that an Agent's or Bot's status has changed.

Specifics
Actionrouting_status_set
Push equivalent inAgent Chat API
Webhook payload
FieldNotes
statusPossible values: accepting chats, not accepting chats, offline (for Bots only)
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "routing_status_set",
  "license_id": 104130623,
  "payload": {
    "agent_id":"agent1@example.com",
    "status": "accepting chats"
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

agent_deleted

Informs that an Agent's account was deleted.

Specifics
Actionagent_deleted
Push equivalent in-
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "agent_deleted",
  "license_id": 104130623,
  "payload": {
    "agent_id": "agent1@example.com"
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

Customers

incoming_customer

Informs that a new Customer registered.

Specifics
Actionincoming_customer
Push equivalent inAgent Chat API
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "incoming_customer",
  "license_id": 104130623,
  "payload": {
    "customer": {
    // "User > Customer" object
    }
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

customer_session_fields_updated

Informs that a chatting Customer's session fields were updated. The webhook will be sent for each active chat the Customer has.

Specifics
Actioncustomer_session_fields_updated
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "customer_session_fields_updated",
  "license_id": 104130623,
  "payload": {
    "id": "5280e68c-9692-4212-4ba9-85f7d8af55cd",
    "active_chat": {
        "chat_id": "PJ0MRSHTDG",
        "thread_id": "K600PKZON8"
    },
    "session_fields": [
      {
        "key": "value"
      }
    ]
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

Other

events_marked_as_seen

Informs that a user has seen events up to a specific time.

Specifics
Actionevents_marked_as_seen
Push equivalent inAgent Chat API Customer Chat API
Sample webhook
Copied!
{
  "webhook_id": "<webhook_id>",
  "secret_key": "<secret_key>",
  "action": "events_marked_as_seen",
  "license_id": 104130623,
  "payload": {
    "user_id": "b7eff798-f8df-4364-8059-649c35c9ed0c",
    "chat_id": "PJ0MRSHTDG",
    "seen_up_to": "2017-10-12T15:19:21.010200Z"
  },
  "additional_data": {
    "chat_properties": { //optional
        // chat properties
    },
    "chat_presence_user_ids": [ //optional
      // User IDs
    ]
  }
}

...

Join the community
Get in direct contact with us through Discord.
Follow us
Follow our insightful tweets and interact with our content.
Contribute
See something that's wrong or unclear? Submit a pull request.
Contact us
Want to share feedback? Reach us at: developers@text.com