Webhook configuration
This guide explains how to configure an automation rule in Projex and use a Webhook to automate work item transitions.
Background information
Automation rules in Projex can trigger workflows in third-party platforms. For example, you can link the status of a work item to a ticket in your organization's approval system. Webhooks enable this type of integration.
Webhook integration templates
Currently, actions on third-party platforms can be triggered by a field change or a source state change. On the automation rule configuration page, when you select a Webhook integration template, the UI provides two template types: "Webhook Triggered by Field Change" and "Webhook Triggered by Source State Change".
Add an automation rule
In the Add Automation Rule dialog box, fill in the Webhook configuration parameters and send a test request to verify connectivity. A successful request displays a green check mark and a 200 Request successful status message below the form. You can click Request Again to retest. The bottom of the dialog box contains a View Configuration Guide link, and Cancel and Save buttons.
|
Parameter |
Description |
|
Webhook URL |
The URL of the Webhook endpoint. The URL must start with |
|
HTTP Method |
Supported methods are POST and GET. |
|
Secret |
Optional. A secret used to verify the incoming Webhook request. If a secret is configured, Projex adds an |
|
Headers |
Optional. You can set a custom request header, such as |
|
Webhook Body |
|
The Work item data is a JSON object. For detailed information, see the OpenAPI reference for GetWorkitem - Get work item. It contains the following fields:
|
Parameter |
Type |
Description |
|
- |
object |
|
|
assignedTo |
object |
The assignee. |
|
id |
string |
The user ID. |
|
name |
string |
The name. |
|
categoryId |
string |
The work item category ID. |
|
creator |
object |
The creator. |
|
id |
string |
The user ID. |
|
name |
string |
The name. |
|
customFieldValues |
array |
The custom field values. |
|
- |
object |
|
|
fieldFormat |
string |
The field type. |
|
fieldId |
string |
The field ID. |
|
fieldName |
string |
The field name. |
|
values |
array |
The field values. |
|
- |
object |
|
|
displayValue |
string |
The display name. |
|
identifier |
string |
The unique identifier for the value. |
|
description |
string |
The description. |
|
formatType |
string |
The format of the description. Supported formats are |
|
gmtCreate |
string |
The creation time. |
|
gmtModified |
string |
The modification time. |
|
id |
string |
The work item ID. |
|
idPath |
string |
The ID path of the work item. |
|
labels |
array |
The labels. |
|
- |
object |
|
|
color |
string |
The color. |
|
id |
string |
The ID. |
|
name |
string |
The name. |
|
logicalStatus |
string |
The logical status. |
|
modifier |
object |
The user who last modified the item. |
|
id |
string |
The user ID. |
|
name |
string |
The name. |
|
parentId |
string |
The parent work item ID. |
|
participants |
array |
The participants. |
|
- |
object |
|
|
id |
string |
The user ID. |
|
name |
string |
The name. |
|
serialNumber |
string |
The serial number. |
|
space |
object |
The space to which the work item belongs. |
|
id |
string |
The ID. |
|
name |
string |
The name. |
|
sprint |
object |
The sprint. |
|
id |
string |
The ID. |
|
name |
string |
The name. |
|
status |
object |
The status type. |
|
displayName |
string |
The display name. |
|
id |
string |
The ID. |
|
name |
string |
The name. |
|
nameEn |
string |
The name in English. |
|
statusStageId |
string |
The status stage ID. |
|
subject |
string |
The subject. |
|
trackers |
array |
The trackers. |
|
- |
object |
|
|
id |
string |
The user ID. |
|
name |
string |
The name. |
|
updateStatusAt |
string |
The time the status was last updated. |
|
verifier |
object |
The verifier. |
|
id |
string |
The user ID. |
|
name |
string |
The name. |
|
versions |
array |
The versions. |
|
- |
object |
|
|
id |
string |
The ID. |
|
name |
string |
The name. |
|
workitemType |
object |
The work item type. |
|
id |
string |
The ID. |
|
name |
string |
The name. |
Test your configuration
After the configuration is complete, you can click "Test Webhook Request" to test whether the configuration is correct.
The egress IPs for Projex are 47.110.133.165 and 120.55.97.39. If your Webhook receiver requires an IP whitelist, add these egress IPs.