Webhooks enable you to send ticket data to another system automatically when specific conditions are met. This approach is often simpler than a two-way API setup, as the receiving system does not need to initiate an API request to get the data from Support Service.
If you’re new to triggers, we strongly recommend reviewing the article Triggers first. These resources explain essential concepts, terminology, and how to configure trigger conditions—knowledge that is crucial for setting up webhook triggers effectively.
Glossary
REST API: A standardized framework enabling different systems to communicate over the web.
POST Method: A REST API request used to send data to a server.
Data Packet: A structured unit of data formatted for transmission.
JSON: A widely used file format for transmitting data.
Setting Up a Support Service Webhook
To create a webhook:
Navigate to Configurations > Automations > Triggers > Webhooks and create a trigger of type Ticket.
Configure the trigger conditions to match the scenarios where the webhook should execute.
Select the Trigger Webhook action and enter the URL where the POST request will be sent. The request will include a JSON data packet containing ticket information.
💡Tip: You can add additional actions to the webhook trigger, such as creating a note to log that the ticket information was sent to another system. All configured actions will execute when the trigger fires.
Ensure the receiving system is set up to accept and process the POST request from Support Service.
JSON Data Packet
When a webhook trigger fires, it sends a POST request to the specified URL. The request contains a JSON data packet with details about the ticket. Here’s a breakdown of the data structure:
Key Fields
Example JSON Structure
{ "Id": int, "Subject": string, "Status": string, "Justification": string, "Actions": [ { "Id": int, "Description": string, "HtmlDescription": string, "Attachments": [ { "FileName": string, "Path": string, "CreatedBy": { "Id": string, "PersonType": int, "ProfileType": int, "BusinessName": string, "Email": string, "Phone": string }, "CreatedDate": string } ] } ], "WebhookEvents": [ { "Criteria": int, "Operator": int } ], "Urgency": string, "ServiceFirstLevel": string, "CustomFieldValues": [ { "CustomFieldId": int, "CustomFieldRuleId": int, "Line": int, "Value": string, "Items": [ { "PersonId": string, "ClientId": string, "Team": string, "CustomFieldItem": string, "StorageFileGuid": string, "FileName": string } ] } ], "SlaSolutionTime": int }
Understanding the Webhook Execution Log
To monitor webhook execution attempts, navigate to Configurations > Automations > Triggers > Webhooks > Webhook Execution Log. This log displays every instance when a trigger with the Trigger Webhook action fired. Use filters like date, ticket number, and error messages to refine your search.
The execution log is particularly helpful for testing or troubleshooting webhooks. For example, it shows if the receiving system rejected the POST request and returned an error.