- 20 Nov 2022
- 1 Minute to read
- Print
- DarkLight
Webhooks configuration in Agile.Now
- Updated on 20 Nov 2022
- 1 Minute to read
- Print
- DarkLight
A webhook is a user-defined callback over HTTP. You can use Agile.Now webhooks to notify application when certain events occur in Project Management tool. For example, you might want to alert Agile.Now when an issue is updated. Using a webhook to do this means that Agile.Now doesn't have to periodically poll Project Management tool (via the REST APIs) to determine whether changes have occurred.
Webhooks provide a way to send a JSON representation of an event to any service. All that is required is a public endpoint (HTTPS).
API keys
Agile.Now generate strings to create unique pairs of identifying credentials and API access tokens. API keys must sent as part of the payload to query string.
The token can be revoked and reissued as needed, such as if a user's permission level changes, or there is reason to believe the information has been compromised.
Webhook endpoints
You need to add the Agile.Now webhook url to the project management tool to enable the service.
The address is formed: https://[Your domain]/AgileNowAPI/rest/Webhook/Callback/[ApiKey]
Example of callback url-address
https://agilenow.esystems.fi/AgileNowAPI/rest/Webhook/Callback/fff8f11751d74da7b7ea7c0715669bce
Available webhook resources
Resource | Description |
---|---|
Issue | Issues are building blocks of a project. An issue could be a story, bug, task or other type. |
Available webhook events
The following events are available for Agile.Now webhooks.
Event type | Jira | Azure DevOps | Description |
---|---|---|---|
Issue Created | jira:issue_created | workitem.created | Event when an issue is created in the project management tool |
Issue Deleted | jira:issue_deleted | workitem.deleted | Event when an issue is deleted in the project management tool |
Issue Updated | jira:issue_updated | workitem.updated | Event when an issue is updated in the project management tool |
Callback errors
400 - Bad Request
The user has provided input that the browser is unable to convert.
{
"Errors": [
"Callback does not support event type ''"
],
"Type": "/Errors/Invalid Value",
"Title": "Bad Request",
"StatusCode": 400,
"Instance": "/AgileNowAPI/rest/Webhook/Callback/Test"
}
401 - Unauthorized
The code indicates that the client request has not been completed because it lacks valid authentication credentials for the requested resource.
{
"Errors": [
"Invalid token"
],
"Type": "/Errors/Unauthorized",
"Title": "Unauthorized",
"StatusCode": 401,
"Instance": "/AgileNowAPI/rest/Webhook/Callback/Test"
}
500 - Internal Server Error
An internal server error is an error on the web server you're trying to access.
{
"Errors": [
"Issue '12329' could not be synchronized. Event type 'IssueUpdated'"
],
"Type": "/Errors/Internal Server Error",
"Title": "Internal Server Error",
"StatusCode": 500,
"Instance": "/AgileNowAPI/rest/Webhook/Callback/Test"
}