Configure and test webhooks
Manually configure webhooks in Azure DevOps and test them.
Configure webhooks in Azure DevOps manually
Configure webhooks in Azure DevOps to send sync notifications to the DevOps Change Velocity application.
Before you begin
Role required: sn_devops.admin or sn_devops.tool_owner in DevOps Change Velocity, Azure DevOps admin
About this task
You can also access manual configuration from the Azure DevOps tool record in DevOps Change Velocity.
Procedure
- In Azure DevOps, open the project for which you are configuring webhooks.
- Navigate to Settings > Service Hooks and create a NEW SERVICE HOOKS SUBSCRIPTION, in Azure DevOps.
-
In DevOps Change Velocity, choose Configure manually when configuring the tool instance to send data.
-
In DevOps Change Velocity, copy the Webhook URL field from the ServiceNow instance connection details for Azure DevOps.
Note:Select Copy in the appropriate field to copy the value to your clipboard. The field label changes to Copied, but you can copy multiple times.
-
Modify the copied Webhook URL to reflect your tool details, and paste the URL in Azure DevOps.
For example:
https://myinstance.service-now.com/api/sn_devops/v2/devops/tool/{code | plan | artifact | orchestration | test | softwarequality }?toolId=23410545938c71d0db5bfe686cba1036&projectId=<project_sys_id>
-
Select one of the tool capabilities {code | plan | artifact | orchestration | test | softwarequality } to match your tool.
For example:
https://myinstance.service-now.com/api/sn_devops/v2/devops/tool/orchestration?toolId=23410545938c71d0db5bfe686cba1036&projectId=<project_sys_id>
- Replace <project_sys_id> with your Azure DevOps project ID in ServiceNow (native_id column in the sn_devops_project table).
- Copy the modified URL to the URL field of the NEW SERVICE HOOKS SUBSCRIPTION in Azure DevOps.
-
Select one of the tool capabilities {code | plan | artifact | orchestration | test | softwarequality } to match your tool.
- In DevOps Change Velocity, copy the Secret token field from the ServiceNow instance connection details for Azure DevOps.
-
In Azure DevOps, in Header field of the NEW SERVICE HOOKS SUBSCRIPTION, paste the copied Secret token in the correct format.
-
Use this format for the Azure DevOps
HTTP headers field:
"token : <tokenValue>"
- Replace <tokenValue>, with the copied Secret token from the ServiceNow instance connection details for Azure DevOps.
Table 1. Copy field values From DevOps Change Velocity field To Azure DevOps field Webhook URL (modified) URL Secret token HTTP headers
In the format:
token : <tokenValue>
-
Use this format for the Azure DevOps
HTTP headers field:
Test webhooks in Azure DevOps
You can manually test if webhooks are configured correctly directly from Azure DevOps for each project.
Before you begin
Role required: Azure DevOps admin privileges
Procedure
- Navigate to Azure DevOps and select the project for which you want to test webhooks.
-
Navigate to Project settings > Service hooks.
For each project, DevOps Change Velocity creates webhooks for these events:
- Build completed
- Code pushed
- Release created
- Release deployment completed
- Run stage state changed
- Work item created
- Work item deleted
- Work item restored
- Work item updated
- Select a webhook and select Edit.
-
Select Next to see the URL and authentication details.
-
To test the webhook, select Test.
-
If the webhook is configured correctly, you’ll receive a Succeeded message.
-
If the webhook is configured incorrectly, you’ll receive a Failed message.
To fix a webhook, you can try the following options:- Reconfigure the webhooks by selecting Configure from the project record page in DevOps Change Velocity. This will reconfigure all the existing webhooks for the project.
Verify if the toolId and projectId are correct in the URL field. You can find the correct values in the tool record page in DevOps Change Velocity.
If you're using the integration user credentials for authentication, check if the credentials are correct in the Basic authentication username and password fields.
If you're using the secret token for authentication, the token value is masked in the Basic authentication password field. You can replace the token in this field.
-