Webhooks API
Events
💡 Please note that changes done by the OpenAPI don't trigger webhooks.
Each event's body is the content
field of the main webhook structure.
contact.updated
It is emitted on every contact update.
{
"id": "147ae37d-43bc-42a6-bc7b-c10d1525a2f7",
"email": "[email protected]",
"phone": "123 456 789",
"first_name": "John",
"last_name": "Doe",
"distinct_id": "123456",
"properties": [
{
"name": "shoe_size",
"value": "44 (EU)"
}
]
}
Parameters
Name | Type | Nullable | Description |
---|---|---|---|
content | object | No | |
» id | string(uuid) | No | ID of the contact |
string(email) | Yes | Email address of the contact [RFC822] | |
» phone | string | Yes | Phone number of the contact |
» first_name | string | Yes | First name of the contact |
» last_name | string | Yes | Last name of the contact |
» distinct_id | string | Yes | ID of the contact in external system |
» properties | object | No | |
»» name | string | No | Contact property name |
»» value | string | No | Contact property value |
contact.created
It is emitted on every contact creation.
{
"id": "147ae37d-43bc-42a6-bc7b-c10d1525a2f7",
"email": "[email protected]",
"phone": "123 456 789",
"first_name": "John",
"last_name": "Doe",
"distinct_id": "123456",
"properties": [
{
"name": "shoe_size",
"value": "44 (EU)"
}
]
}
Parameters
Name | Type | Nullable | Description |
---|---|---|---|
content | object | No | |
» id | string(uuid) | No | ID of the contact |
string(email) | Yes | Email address of the contact [RFC822] | |
» phone | string | Yes | Phone number of the contact |
» first_name | string | Yes | First name of the contact |
» last_name | string | Yes | Last name of the contact |
» distinct_id | string | Yes | ID of the contact in external system |
» properties | object | No | |
»» name | string | No | Contact property name |
»» value | string | No | Contact property value |
conversation.solved_by_operator
It is emitted when the operator solves the conversation.
Once the operator considers the conversation finished, they can click the "Mark as Solved" button. This action will move the conversation into the "Solved" section of the inbox. For more details please read the article from the Tidio help center.
{
"contact_id": "a1b4ca4c-1108-4432-b256-1e4cf2bf6f9e",
"solved_at": "2023-01-01T00:00:00+00:00"
}
Parameters
Name | Type | Nullable | Description |
---|---|---|---|
content | object | No | |
» contact_id | string(uuid) | Yes | ID of the contact |
» solved_at | string(date-time) | No | Date of solving conversation |
conversation.solved_automatically
This event is emitted when the conversation is automatically resolved using the Automatic Solve feature.
This feature is not enabled by default and requires configuration.
For more information, please refer to the article in the Tidio Help Center.
{
"contact_id": "a1b4ca4c-1108-4432-b256-1e4cf2bf6f9e",
"solved_at": "2023-01-01T00:00:00+00:00"
}
Parameters
Name | Type | Nullable | Description |
---|---|---|---|
content | object | No | |
» contact_id | string(uuid) | Yes | ID of the contact |
» solved_at | string(date-time) | No | Date of solving conversation |
ticket.created
This event is emitted when the ticket is created.
{
"id": 10000,
"link": "https://tidio.com/panel/inbox/tickets/10000",
"status": "solved",
"subject": "A delivery problem",
"messages": [
{
"author_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"created_at": "2023-10-02T13:11:25+00:00",
"message_id": "01HBTFSW6QVSP7F5C1JXKMT17G",
"attachments": [
"https://example.com"
],
"author_type": "operator",
"message_type": "internal",
"message_content": "The customer has not received a delivery. Solve it ASAP!"
},
{
"author_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"created_at": "2023-10-02T13:13:33+00:00",
"message_id": "01HBTFT815GY51CB8PG7QJPWRS",
"attachments": [],
"author_type": "operator",
"message_type": "public",
"message_content": "It will be delivered 10/03"
}
],
"priority": "normal",
"contact_id": "147ae37d-43bc-42a6-bc7b-c10d1525a2f7",
"contact_email": "[email protected]",
"assigned_operator_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"assigned_department_id": "91ee21bb-b492-4d8e-af47-90bb6cab01df"
}
Parameters
Name | Type | Nullable | Description |
---|---|---|---|
content | object | No | |
» id | integer | No | Ticket ID |
» link | string(url) | No | URL to ticket |
» status | string | No | Ticket status |
» subject | string | No | Ticket subject |
» messages | object | No | |
»» author_id | string | No | Author ID of the message. When "author_type" is "operator", the operator ID is returned. When "author_type" is contact, the contact ID is returned. |
»» created_at | string(date-time) | No | The date the message was created |
»» message_id | string(ulid) | No | Message ID |
»» attachments | object | No | Links to attachment |
»» author_type | string | No | Defines type of author |
»» message_type | string | No | Message type |
»» message_content | string | No | Message content |
» priority | string | No | Ticket priority |
» contact_id | string(uuid) | No | ID of the contact |
» contact_email | string(email) | Yes | Email of contact where ticket messages are sent |
» assigned_operator_id | string(uuid) | Yes | ID of assigned Operator |
» assigned_department_id | string(uuid) | No | ID of assigned Department |
ticket.status_updated
This webhook is emitted when the ticket status is changed.
Eg. from open to solved.
{
"id": 10000,
"link": "https://tidio.com/panel/inbox/tickets/10000",
"status": "solved",
"subject": "A delivery problem",
"messages": [
{
"author_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"created_at": "2023-10-02T13:11:25+00:00",
"message_id": "01HBTFSW6QVSP7F5C1JXKMT17G",
"attachments": [
"https://example.com"
],
"author_type": "operator",
"message_type": "internal",
"message_content": "The customer has not received a delivery. Solve it ASAP!"
},
{
"author_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"created_at": "2023-10-02T13:13:33+00:00",
"message_id": "01HBTFT815GY51CB8PG7QJPWRS",
"attachments": [],
"author_type": "operator",
"message_type": "public",
"message_content": "It will be delivered 10/03"
}
],
"priority": "normal",
"contact_id": "147ae37d-43bc-42a6-bc7b-c10d1525a2f7",
"contact_email": "[email protected]",
"assigned_operator_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"assigned_department_id": "91ee21bb-b492-4d8e-af47-90bb6cab01df"
}
Parameters
Name | Type | Nullable | Description |
---|---|---|---|
content | object | No | |
» id | integer | No | Ticket ID |
» link | string(url) | No | URL to ticket |
» status | string | No | Ticket status |
» subject | string | No | Ticket subject |
» messages | object | No | |
»» author_id | string | No | Author ID of the message. When "author_type" is "operator", the operator ID is returned. When "author_type" is contact, the contact ID is returned. |
»» created_at | string(date-time) | No | The date the message was created |
»» message_id | string(ulid) | No | Message ID |
»» attachments | object | No | Links to attachment |
»» author_type | string | No | Defines type of author |
»» message_type | string | No | Message type |
»» message_content | string | No | Message content |
» priority | string | No | Ticket priority |
» contact_id | string(uuid) | No | ID of the contact |
» contact_email | string(email) | Yes | Email of contact where ticket messages are sent |
» assigned_operator_id | string(uuid) | Yes | ID of assigned Operator |
» assigned_department_id | string(uuid) | No | ID of assigned Department |
ticket.operator_assigned
This webhook is emitted when the new operator is assigned to a ticket.
The ID of the newly assigned operator will appear in the body of the webhook.
{
"id": 10000,
"link": "https://tidio.com/panel/inbox/tickets/10000",
"status": "solved",
"subject": "A delivery problem",
"messages": [
{
"author_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"created_at": "2023-10-02T13:11:25+00:00",
"message_id": "01HBTFSW6QVSP7F5C1JXKMT17G",
"attachments": [
"https://example.com"
],
"author_type": "operator",
"message_type": "internal",
"message_content": "The customer has not received a delivery. Solve it ASAP!"
},
{
"author_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"created_at": "2023-10-02T13:13:33+00:00",
"message_id": "01HBTFT815GY51CB8PG7QJPWRS",
"attachments": [],
"author_type": "operator",
"message_type": "public",
"message_content": "It will be delivered 10/03"
}
],
"priority": "normal",
"contact_id": "147ae37d-43bc-42a6-bc7b-c10d1525a2f7",
"contact_email": "[email protected]",
"assigned_operator_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"assigned_department_id": "91ee21bb-b492-4d8e-af47-90bb6cab01df"
}
Parameters
Name | Type | Nullable | Description |
---|---|---|---|
content | object | No | |
» id | integer | No | Ticket ID |
» link | string(url) | No | URL to ticket |
» status | string | No | Ticket status |
» subject | string | No | Ticket subject |
» messages | object | No | |
»» author_id | string | No | Author ID of the message. When "author_type" is "operator", the operator ID is returned. When "author_type" is contact, the contact ID is returned. |
»» created_at | string(date-time) | No | The date the message was created |
»» message_id | string(ulid) | No | Message ID |
»» attachments | object | No | Links to attachment |
»» author_type | string | No | Defines type of author |
»» message_type | string | No | Message type |
»» message_content | string | No | Message content |
» priority | string | No | Ticket priority |
» contact_id | string(uuid) | No | ID of the contact |
» contact_email | string(email) | Yes | Email of contact where ticket messages are sent |
» assigned_operator_id | string(uuid) | Yes | ID of assigned Operator |
» assigned_department_id | string(uuid) | No | ID of assigned Department |
ticket.operator_replied
This webhook is emitted when the operator has responded to the ticket.
The webhook content contains the new message from the operator and its details.
{
"id": 10000,
"link": "https://tidio.com/panel/inbox/tickets/10000",
"status": "solved",
"subject": "A delivery problem",
"messages": [
{
"author_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"created_at": "2023-10-02T13:11:25+00:00",
"message_id": "01HBTFSW6QVSP7F5C1JXKMT17G",
"attachments": [
"https://example.com"
],
"author_type": "operator",
"message_type": "internal",
"message_content": "The customer has not received a delivery. Solve it ASAP!"
},
{
"author_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"created_at": "2023-10-02T13:13:33+00:00",
"message_id": "01HBTFT815GY51CB8PG7QJPWRS",
"attachments": [],
"author_type": "operator",
"message_type": "public",
"message_content": "It will be delivered 10/03"
}
],
"priority": "normal",
"contact_id": "147ae37d-43bc-42a6-bc7b-c10d1525a2f7",
"contact_email": "[email protected]",
"assigned_operator_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"assigned_department_id": "91ee21bb-b492-4d8e-af47-90bb6cab01df"
}
Parameters
Name | Type | Nullable | Description |
---|---|---|---|
content | object | No | |
» id | integer | No | Ticket ID |
» link | string(url) | No | URL to ticket |
» status | string | No | Ticket status |
» subject | string | No | Ticket subject |
» messages | object | No | |
»» author_id | string | No | Author ID of the message. When "author_type" is "operator", the operator ID is returned. When "author_type" is contact, the contact ID is returned. |
»» created_at | string(date-time) | No | The date the message was created |
»» message_id | string(ulid) | No | Message ID |
»» attachments | object | No | Links to attachment |
»» author_type | string | No | Defines type of author |
»» message_type | string | No | Message type |
»» message_content | string | No | Message content |
» priority | string | No | Ticket priority |
» contact_id | string(uuid) | No | ID of the contact |
» contact_email | string(email) | Yes | Email of contact where ticket messages are sent |
» assigned_operator_id | string(uuid) | Yes | ID of assigned Operator |
» assigned_department_id | string(uuid) | No | ID of assigned Department |
ticket.contact_replied
This webhook is emitted when the contact has responded to the ticket.
The webhook content contains a new message from the contact and its details.
{
"id": 10000,
"link": "https://tidio.com/panel/inbox/tickets/10000",
"status": "solved",
"subject": "A delivery problem",
"messages": [
{
"author_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"created_at": "2023-10-02T13:11:25+00:00",
"message_id": "01HBTFSW6QVSP7F5C1JXKMT17G",
"attachments": [
"https://example.com"
],
"author_type": "operator",
"message_type": "internal",
"message_content": "The customer has not received a delivery. Solve it ASAP!"
},
{
"author_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"created_at": "2023-10-02T13:13:33+00:00",
"message_id": "01HBTFT815GY51CB8PG7QJPWRS",
"attachments": [],
"author_type": "operator",
"message_type": "public",
"message_content": "It will be delivered 10/03"
}
],
"priority": "normal",
"contact_id": "147ae37d-43bc-42a6-bc7b-c10d1525a2f7",
"contact_email": "[email protected]",
"assigned_operator_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"assigned_department_id": "91ee21bb-b492-4d8e-af47-90bb6cab01df"
}
Parameters
Name | Type | Nullable | Description |
---|---|---|---|
content | object | No | |
» id | integer | No | Ticket ID |
» link | string(url) | No | URL to ticket |
» status | string | No | Ticket status |
» subject | string | No | Ticket subject |
» messages | object | No | |
»» author_id | string | No | Author ID of the message. When "author_type" is "operator", the operator ID is returned. When "author_type" is contact, the contact ID is returned. |
»» created_at | string(date-time) | No | The date the message was created |
»» message_id | string(ulid) | No | Message ID |
»» attachments | object | No | Links to attachment |
»» author_type | string | No | Defines type of author |
»» message_type | string | No | Message type |
»» message_content | string | No | Message content |
» priority | string | No | Ticket priority |
» contact_id | string(uuid) | No | ID of the contact |
» contact_email | string(email) | Yes | Email of contact where ticket messages are sent |
» assigned_operator_id | string(uuid) | Yes | ID of assigned Operator |
» assigned_department_id | string(uuid) | No | ID of assigned Department |
ticket.internal_note_added
This webhook is emitted when the internal note is added to the ticket.
The content contains the new internal note and its details.
In this cast the message_type is internal.
{
"id": 10000,
"link": "https://tidio.com/panel/inbox/tickets/10000",
"status": "solved",
"subject": "A delivery problem",
"messages": [
{
"author_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"created_at": "2023-10-02T13:11:25+00:00",
"message_id": "01HBTFSW6QVSP7F5C1JXKMT17G",
"attachments": [
"https://example.com"
],
"author_type": "operator",
"message_type": "internal",
"message_content": "The customer has not received a delivery. Solve it ASAP!"
},
{
"author_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"created_at": "2023-10-02T13:13:33+00:00",
"message_id": "01HBTFT815GY51CB8PG7QJPWRS",
"attachments": [],
"author_type": "operator",
"message_type": "public",
"message_content": "It will be delivered 10/03"
}
],
"priority": "normal",
"contact_id": "147ae37d-43bc-42a6-bc7b-c10d1525a2f7",
"contact_email": "[email protected]",
"assigned_operator_id": "b9af081a-8ab5-40fb-8033-f6fae058bad7",
"assigned_department_id": "91ee21bb-b492-4d8e-af47-90bb6cab01df"
}
Parameters
Name | Type | Nullable | Description |
---|---|---|---|
content | object | No | |
» id | integer | No | Ticket ID |
» link | string(url) | No | URL to ticket |
» status | string | No | Ticket status |
» subject | string | No | Ticket subject |
» messages | object | No | |
»» author_id | string | No | Author ID of the message. When "author_type" is "operator", the operator ID is returned. When "author_type" is contact, the contact ID is returned. |
»» created_at | string(date-time) | No | The date the message was created |
»» message_id | string(ulid) | No | Message ID |
»» attachments | object | No | Links to attachment |
»» author_type | string | No | Defines type of author |
»» message_type | string | No | Message type |
»» message_content | string | No | Message content |
» priority | string | No | Ticket priority |
» contact_id | string(uuid) | No | ID of the contact |
» contact_email | string(email) | Yes | Email of contact where ticket messages are sent |
» assigned_operator_id | string(uuid) | Yes | ID of assigned Operator |
» assigned_department_id | string(uuid) | No | ID of assigned Department |