Webhooks
Please note that to interact with webhooks via API, you must have administrator rights in the project.
Description of the JSON object structure describing a webhook
Field | Type | Description |
---|---|---|
id |
string | Unique webhook ID |
url |
string | URL where JSON events will be sent |
secret |
string | Webhook secret |
projectId |
string | Project ID |
createdAt |
string | Webhook creation date in UTC format |
updatedAt |
string | Webhook update date in UTC format |
events |
Object | Webhook events |
Description of the JSON object structure describing webhook events
Field | Type | Description |
---|---|---|
COLLABORATOR_ADD |
boolean | Adding a collaborator to the project |
COLLABORATOR_DELETE |
boolean | Removing a collaborator from the project |
COLLABORATOR_UPDATE |
boolean | Updating collaborator status in the project |
ISSUE_UPDATE |
boolean | Issue update |
ISSUE_CREATE |
boolean | Issue creation |
NEW_ISSUE_NOTE |
boolean | New comment on issue |
TAG_DELETE |
boolean | Tag deletion |
TAG_CREATE |
boolean | Tag creation |
BRANCH_UPDATE |
boolean | Branch update |
BRANCH_DELETE |
boolean | Branch deletion |
BRANCH_CREATE |
boolean | Branch creation |
MERGE_REQUEST_CREATE |
boolean | Merge request creation |
MERGE_REQUEST_UPDATE |
boolean | Merge request update |
MERGE |
boolean | Merge |
MERGE_REQUEST_CLOSE |
boolean | Merge request closure |
MERGE_REQUEST_CANCEL |
boolean | Merge request cancellation |
MERGE_REQUEST_ACCEPT |
boolean | Merge request approval |
DISCUSSION_CREATE |
boolean | Discussion creation in merge request |
DISCUSSION_COMMENT_CREATE |
boolean | Comment creation in discussion in merge request |
PIPELINE_NEW |
boolean | New pipeline |
PIPELINE_SUCCESS |
boolean | Successful pipeline |
PIPELINE_FAIL |
boolean | Pipeline failure |
WEBHOOK_SEND |
boolean | Webhook sent |
View project webhooks
GET /project/{ownerAlias}/{projectAlias}/setting/webhook
The request returns an array of webhooks, with the ability to configure the number of displayed objects per page
Path variable | Type | Description |
---|---|---|
ownerAlias |
String | Owner alias |
projectAlias |
String | Project alias |
Responses
STATUS 200
- JSON example:
Example response
{
"_embedded": {
"webhookList": [
{
"id": "e93b461a-aaaa-aaaa-aaaa-306c3578c989",
"url": "https://example.com",
"secret": "SOME SECRET CODE",
"events": {
"COLLABORATOR_DELETE": true,
"NEW_ISSUE_NOTE": true,
"MERGE": true,
"ISSUE_UPDATE": true,
"TAG_DELETE": true,
"MERGE_REQUEST_CREATE": true,
"BRANCH_UPDATE": true,
"WEBHOOK_SEND": false,
"MERGE_REQUEST_ACCEPT": true,
"MERGE_REQUEST_CLOSE": true,
"DISCUSSION_CREATE": true,
"BRANCH_DELETE": true,
"MERGE_REQUEST_UPDATE": true,
"PIPELINE_NEW": true,
"ISSUE_CREATE": true,
"DISCUSSION_COMMENT_CREATE": true,
"TAG_CREATE": true,
"COLLABORATOR_ADD": true,
"MERGE_REQUEST_CANCEL": true,
"PIPELINE_SUCCESS": true,
"COLLABORATOR_UPDATE": true,
"BRANCH_CREATE": true,
"PIPELINE_FAIL": true
},
"projectId": "c94aedd2-aaaa-aaaa-aaaa-67fbf1112a82",
"createdAt": "2024-03-19T09:56:16.376885Z",
"updatedAt": "2024-03-21T10:10:07.336450Z"
},
{
"id": "e93b461a-aaaa-aaaa-aaaa-306c3578c989",
"url": "https://example.com",
"secret": "SOME SECRET CODE",
"events": {
"COLLABORATOR_DELETE": true,
"NEW_ISSUE_NOTE": true,
"MERGE": true,
"ISSUE_UPDATE": true,
"TAG_DELETE": true,
"WEBHOOK_SEND": false,
"MERGE_REQUEST_CREATE": true,
"BRANCH_UPDATE": true,
"MERGE_REQUEST_CLOSE": true,
"MERGE_REQUEST_ACCEPT": true,
"DISCUSSION_CREATE": true,
"BRANCH_DELETE": true,
"MERGE_REQUEST_UPDATE": true,
"PIPELINE_NEW": true,
"DISCUSSION_COMMENT_CREATE": true,
"ISSUE_CREATE": true,
"TAG_CREATE": true,
"COLLABORATOR_ADD": true,
"MERGE_REQUEST_CANCEL": true,
"PIPELINE_SUCCESS": true,
"COLLABORATOR_UPDATE": true,
"PIPELINE_FAIL": true,
"BRANCH_CREATE": true
},
"projectId": "c94aedd2-aaaa-aaaa-aaaa-67fbf1112a82",
"createdAt": "2024-03-19T09:56:16.376885Z",
"updatedAt": "2024-03-21T10:10:07.336450Z"
}
]
},
"page": {
"size": 10,
"totalElements": 2,
"totalPages": 1,
"number": 0
}
}
STATUS 403
- No access rights.
STATUS 404
- No data found for the request.
View webhook by id
GET /project/{ownerAlias}/{projectAlias}/setting/webhook/{id}
The request returns a webhook
Path variable | Type | Description |
---|---|---|
ownerAlias |
String | Owner alias |
projectAlias |
String | Project alias |
id |
String | Webhook ID |
Responses
STATUS 200
- JSON example:
Example response
{
"id": "e93b461a-aaaa-aaaa-aaaa-306c3578c989",
"url": "https://example.com",
"secret": "SOME SECRET CODE",
"events": {
"COLLABORATOR_DELETE": true,
"NEW_ISSUE_NOTE": true,
"MERGE": true,
"ISSUE_UPDATE": true,
"TAG_DELETE": true,
"WEBHOOK_SEND": false,
"MERGE_REQUEST_CREATE": true,
"BRANCH_UPDATE": true,
"MERGE_REQUEST_CLOSE": true,
"MERGE_REQUEST_ACCEPT": true,
"DISCUSSION_CREATE": true,
"BRANCH_DELETE": true,
"MERGE_REQUEST_UPDATE": true,
"PIPELINE_NEW": true,
"DISCUSSION_COMMENT_CREATE": true,
"ISSUE_CREATE": true,
"TAG_CREATE": true,
"COLLABORATOR_ADD": true,
"MERGE_REQUEST_CANCEL": true,
"PIPELINE_SUCCESS": true,
"COLLABORATOR_UPDATE": true,
"PIPELINE_FAIL": true,
"BRANCH_CREATE": true
},
"projectId": "c94aedd2-aaaa-aaaa-aaaa-67fbf1112a82",
"createdAt": "2024-03-19T09:56:16.376885Z",
"updatedAt": "2024-03-21T10:10:07.336450Z"
}
STATUS 403
- No access rights.
STATUS 404
- No data found for the request.
Create webhook
POST /project/{ownerAlias}/{projectAlias}/setting/webhook
The request creates a webhook
Path variable | Type | Description |
---|---|---|
ownerAlias |
String | Owner alias |
projectAlias |
String | Project alias |
Request
Supported format: application/json
Note: You can skip some events by specifying only those you need.
POST request body structure:
{
"url": "https://example.com",
"secret": "SOME SECRET CODE",
"events": {
"COLLABORATOR_DELETE": true,
"NEW_ISSUE_NOTE": true,
"MERGE": true,
"ISSUE_UPDATE": true,
"TAG_DELETE": true,
"WEBHOOK_SEND": false,
"MERGE_REQUEST_CREATE": true,
"BRANCH_UPDATE": true,
"MERGE_REQUEST_CLOSE": true,
"MERGE_REQUEST_ACCEPT": true,
"DISCUSSION_CREATE": true,
"BRANCH_DELETE": true,
"MERGE_REQUEST_UPDATE": true,
"PIPELINE_NEW": true,
"DISCUSSION_COMMENT_CREATE": true,
"ISSUE_CREATE": true,
"TAG_CREATE": true,
"COLLABORATOR_ADD": true,
"MERGE_REQUEST_CANCEL": true,
"PIPELINE_SUCCESS": true,
"COLLABORATOR_UPDATE": true,
"PIPELINE_FAIL": true,
"BRANCH_CREATE": true
}
}
Responses
STATUS 200
- JSON example:
Example response
{
"id": "28209e4d-aaaa-aaaa-aaaa-5ef23f559530",
"url": "https://example.com",
"secret": "SOME SECRET CODE",
"events": {
"COLLABORATOR_DELETE": true,
"NEW_ISSUE_NOTE": true,
"MERGE": true,
"ISSUE_UPDATE": true,
"TAG_DELETE": true,
"WEBHOOK_SEND": false,
"MERGE_REQUEST_CREATE": true,
"BRANCH_UPDATE": true,
"MERGE_REQUEST_CLOSE": true,
"MERGE_REQUEST_ACCEPT": true,
"DISCUSSION_CREATE": true,
"BRANCH_DELETE": true,
"MERGE_REQUEST_UPDATE": true,
"PIPELINE_NEW": true,
"DISCUSSION_COMMENT_CREATE": true,
"ISSUE_CREATE": true,
"TAG_CREATE": true,
"COLLABORATOR_ADD": true,
"MERGE_REQUEST_CANCEL": true,
"PIPELINE_SUCCESS": true,
"COLLABORATOR_UPDATE": true,
"PIPELINE_FAIL": true,
"BRANCH_CREATE": true
},
"projectId": "c94aedd2-aaaa-aaaa-aaaa-67fbf1112a82",
"createdAt": "2024-05-03T20:35:35.895525Z",
"updatedAt": "2024-05-03T20:35:35.895526Z"
}
STATUS 403
- No access rights.
STATUS 404
- No data found for the request.
STATUS 422
- Request body failed server validation.
Update webhook by id
POST /project/{ownerAlias}/{projectAlias}/setting/webhook/{id}
The request updates a webhook by ID
Path variable | Type | Description |
---|---|---|
ownerAlias |
String | Owner alias |
projectAlias |
String | Project alias |
id |
String | Webhook ID |
Request
Supported format: application/json
Note: You can skip some events by specifying only those you need.
POST request body structure:
{
"url": "https://example.com",
"secret": "SOME SECRET CODE",
"events": {
"COLLABORATOR_DELETE": true,
"NEW_ISSUE_NOTE": true,
"MERGE": true,
"ISSUE_UPDATE": true,
"TAG_DELETE": true,
"WEBHOOK_SEND": false,
"MERGE_REQUEST_CREATE": true,
"BRANCH_UPDATE": true,
"MERGE_REQUEST_CLOSE": true,
"MERGE_REQUEST_ACCEPT": true,
"DISCUSSION_CREATE": true,
"BRANCH_DELETE": true,
"MERGE_REQUEST_UPDATE": true,
"PIPELINE_NEW": true,
"DISCUSSION_COMMENT_CREATE": true,
"ISSUE_CREATE": true,
"TAG_CREATE": true,
"COLLABORATOR_ADD": true,
"MERGE_REQUEST_CANCEL": true,
"PIPELINE_SUCCESS": true,
"COLLABORATOR_UPDATE": true,
"PIPELINE_FAIL": true,
"BRANCH_CREATE": true
}
}
Responses
STATUS 200
- JSON example:
Example response
{
"id": "28209e4d-aaaa-aaaa-aaaa-5ef23f559530",
"url": "https://example.com",
"secret": "SOME SECRET CODE",
"events": {
"COLLABORATOR_DELETE": true,
"NEW_ISSUE_NOTE": true,
"MERGE": true,
"ISSUE_UPDATE": true,
"TAG_DELETE": true,
"WEBHOOK_SEND": false,
"MERGE_REQUEST_CREATE": true,
"BRANCH_UPDATE": true,
"MERGE_REQUEST_CLOSE": true,
"MERGE_REQUEST_ACCEPT": true,
"DISCUSSION_CREATE": true,
"BRANCH_DELETE": true,
"MERGE_REQUEST_UPDATE": true,
"PIPELINE_NEW": true,
"DISCUSSION_COMMENT_CREATE": true,
"ISSUE_CREATE": true,
"TAG_CREATE": true,
"COLLABORATOR_ADD": true,
"MERGE_REQUEST_CANCEL": true,
"PIPELINE_SUCCESS": true,
"COLLABORATOR_UPDATE": true,
"PIPELINE_FAIL": true,
"BRANCH_CREATE": true
},
"projectId": "c94aedd2-aaaa-aaaa-aaaa-67fbf1112a82",
"createdAt": "2024-05-03T20:35:35.895525Z",
"updatedAt": "2024-05-03T20:35:35.895526Z"
}
STATUS 403
- No access rights.
STATUS 404
- No data found for the request.
Delete webhook
POST /project/{ownerAlias}/{projectAlias}/setting/webhook/{id}/delete
The request deletes a webhook by ID
Path variable | Type | Description |
---|---|---|
ownerAlias |
String | Owner alias |
projectAlias |
String | Project alias |
id |
String | Webhook ID |
Responses
STATUS 200
- Successfully deleted.
STATUS 403
- No access rights.
STATUS 404
- No data found for the request.
Automated translation!
This page was translated using automatic translation tools. The text may contain inaccuracies.