Issues
Learn more about Sentry's integration platform issue webhooks.
Sentry integrations that have subscribed to issue webhooks can receive information about an issue being created and changing state.
'Sentry-Hook-Resource': 'issue'
- type: string
- description: can be
created
,resolved
,assigned
,archived
, orunresolved
- type: object
- description: the issue
- type: string
- description: the api url for the issue
- type: string
- description: the web url for the issue
- type: string
- description: the api url to the project the issue is a part of
Payload includes additional information about the issue. Some important fields to pay attention to are:
Some issue webhooks are triggered on status change of an issue. An issue status can be resolved
, unresolved
, or ignored
(archived).
A status can mean multiple things, so substatus gives more details about the status. For example, an issue status can change to unresolved
because it is now escalating
or because a resolved issue is regressed
. Possible substatuses are: archived_until_escalating
, archived_until_condition_met
, archived_forever
, escalating
, ongoing
, regressed
and new
.
statusDetails
includes more detailed information about resolved
and archived
status changes on an issue. These details can include:
inRelease
: The release that the resolution is in (for example,latest
)inNextRelease
:True
if the resolution will be in the next releaseinCommit
: Includes information about the resolution commit (such asrepository
andcommit
)ignoreCount
: Maximum number of occurences in for an archived issue before it gets escalatedignoreWindow
: Used withignoreCount
indicating the number of minutes thatignoreCount
occurences will be ignoredignoreUserCount
: Maximun number of users who are affected by an archived issue before it gets escalatedignoreUserWindow
: Used withignoreUserCount
indicating the number of minutes thatignoreUserCount
affected users will be ignoredignoreDuration
: The duration (in minutes) that an archived issue should be ignored before it gets escalated. Increase in the number of users affected or the number of occurences will not escalate before this duration has passed unless there is a spike. To learn more about how this works, see Escalating Issues Algorithm.
{
"action": "created",
"actor": {
"id": "sentry",
"name": "Sentry",
"type": "application"
},
"data": {
"issue": {
"annotations": [],
"assignedTo": null,
"count": "1",
"culprit": "?(runner)",
"firstSeen": "2019-08-19T20:58:37.391000Z",
"hasSeen": false,
"id": "1170820242",
"isBookmarked": false,
"isPublic": false,
"isSubscribed": false,
"lastSeen": "2019-08-19T20:58:37.391000Z",
"level": "error",
"logger": null,
"metadata": {
"filename": "/runner",
"type": "ReferenceError",
"value": "blooopy is not defined"
},
"numComments": 0,
"permalink": null,
"platform": "javascript",
"project": {
"id": "1",
"name": "front-end",
"platform": "",
"slug": "front-end"
},
"shareId": null,
"shortId": "FRONT-END-9",
"status": "unresolved",
"statusDetails": {},
"subscriptionDetails": null,
"substatus": "escalating",
"title": "ReferenceError: blooopy is not defined",
"type": "error",
"userCount": 1
}
},
"installation": {
"uuid": "a8e5d37a-696c-4c54-adb5-b3f28d64c7de"
}
}
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) or suggesting an update ("yeah, this would be better").