Webhook configuration

Updated at:

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:// or https://.

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 X-Projex-Signature header to the Webhook request. This header's value is the secret you provide.

Headers

Optional. You can set a custom request header, such as Content-Type: application/json.

Webhook Body

  • If set to Empty data, the body of the POST request is empty.

  • If set to Work item data, the body contains data for the work item (such as a requirement, defect, or task) affected by the rule.

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 RICHTEXT and MARKDOWN.

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. normal indicates a normal status, and archived indicates an archived 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.

Important

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.