Alert API
Create an API Integration and obtain your apiKey to make requests listed below.
If using the EU instance of Opsgenie, the URL needs to be https://api.eu.opsgenie.com for requests to be successful.
Get Request Status
Alert creation, deletion, and action requests are processed asynchronously to provide higher availability and scalability, therefore valid requests for those endpoints are responded to with HTTP status 202 - Accepted
. The Get Request Status endpoint is used to track the status and alert details (if any) of the request whose identifier is given.
HTTP Method | URL |
---|---|
GET | https://api.opsgenie.com/v2/alerts/requests/:requestId |
In-Line Parameters
Referred Name | Description |
---|---|
requestId | Universally unique identifier of the questioned request. Please note: that ID of the request was provided within response. |
Sample Requests
curl -X GET 'https://api.opsgenie.com/v2/alerts/requests/513085b8-caf3-4f91-aa23-be5fdefc3570'
-H 'Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889'
Sample Responses
{
"data": {
"success": true,
"action": "Create",
"processedAt": "2017-05-24T14:24:20.844Z",
"integrationId": "c9cec2cb-e782-4ebb-bc1d-1b2fa703cf03",
"isSuccess": true,
"status": "Created alert",
"alertId": "8743a1b2-11da-480e-8493-744660987bef",
"alias": "8743a1b2-11da-480e-8493-744660987bef"
},
"took": 0.022,
"requestId": "ec7e1d8e-1c75-442e-a271-731070a7fa4d"
}
{
"data": {
"success": false,
"action": "Acknowledge",
"processedAt": "2017-05-24T14:41:18.185Z",
"integrationId": "c9cec2cb-e782-4ebb-bc1d-1b2fa703cf03",
"isSuccess": false,
"status": "Alert does not exist",
"alertId": "",
"alias": ""
},
"took": 0.019,
"requestId": "dc194ce3-9daf-4a19-bca3-40be91218089"
}
Create Alert
HTTP Method | URL |
---|---|
POST | https://api.opsgenie.com/v2/alerts |
JSON Body Fields
Field | Mandatory | Description | Limit |
---|---|---|---|
message | true | Message of the alert | 130 characters |
alias | false | Client-defined identifier of the alert, that is also the key element of Alert De-Duplication. | 512 characters |
description | false | Description field of the alert that is generally used to provide a detailed information about the alert. | 15000 characters |
responders | false | Teams, users, escalations and schedules that the alert will be routed to send notifications. type field is mandatory for each item, where possible values are team, user, escalation and schedule. If the API Key belongs to a team integration, this field will be overwritten with the owner team. Either id or name of each responder should be provided.You can refer below for example values. | 50 teams, users, escalations or schedules |
visibleTo | false | Teams and users that the alert will become visible to without sending any notification.type field is mandatory for each item, where possible values are team and user. In addition to the type field, either id or name should be given for teams and either id or username should be given for users. Please note: that alert will be visible to the teams that are specified withinteams field by default, so there is no need to re-specify them within visibleTo field. You can refer below for example values. | 50 teams or users in total |
actions | false | Custom actions that will be available for the alert. | 10 x 50 characters |
tags | false | Tags of the alert. | 20 x 50 characters |
details | false | Map of key-value pairs to use as custom properties of the alert. | 8000 characters in total |
entity | false | Entity field of the alert that is generally used to specify which domain alert is related to. | 512 characters |
source | false | Source field of the alert. Default value is IP address of the incoming request. | 100 characters. |
priority | false | Priority level of the alert. Possible values are P1, P2, P3, P4 and P5. Default value is P3. | |
user | false | Display name of the request owner. | 100 characters. |
note | false | Additional note that will be added while creating the alert. | 25000 characters. |
responders
field example:
{
"responders":[
{
"id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c",
"type":"team"
},
{
"name":"NOC",
"type":"team"
},
{
"id":"bb4d9938-c3c2-455d-aaab-727aa701c0d8",
"type":"user"
},
{
"username":"[email protected]",
"type":"user"
},
{
"id":"aee8a0de-c80f-4515-a232-501c0bc9d715",
"type":"escalation"
},
{
"name":"Nightwatch Escalation",
"type":"escalation"
},
{
"id":"80564037-1984-4f38-b98e-8a1f662df552",
"type":"schedule"
},
{
"name":"First Responders Schedule",
"type":"schedule"
}
]
}
visibleTo
field example:
{
"visibleTo":[
{
"id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c",
"type":"team"
},
{
"name":"rocket_team",
"type":"team"
},
{
"id":"bb4d9938-c3c2-455d-aaab-727aa701c0d8",
"type":"user"
},
{
"username":"[email protected]",
"type":"user"
}
]
}
Sample Request
curl -X POST https://api.opsgenie.com/v2/alerts
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"message": "An example alert message",
"alias": "Life is too short for no alias",
"description":"Every alert needs a description",
"responders":[
{"id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c", "type":"team"},
{"name":"NOC", "type":"team"},
{"id":"bb4d9938-c3c2-455d-aaab-727aa701c0d8", "type":"user"},
{"username":"[email protected]", "type":"user"},
{"id":"aee8a0de-c80f-4515-a232-501c0bc9d715", "type":"escalation"},
{"name":"Nightwatch Escalation", "type":"escalation"},
{"id":"80564037-1984-4f38-b98e-8a1f662df552", "type":"schedule"},
{"name":"First Responders Schedule", "type":"schedule"}
],
"visibleTo":[
{"id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c","type":"team"},
{"name":"rocket_team","type":"team"},
{"id":"bb4d9938-c3c2-455d-aaab-727aa701c0d8","type":"user"},
{"username":"[email protected]","type":"user"}
],
"actions": ["Restart", "AnExampleAction"],
"tags": ["OverwriteQuietHours","Critical"],
"details":{"key1":"value1","key2":"value2"},
"entity":"An example entity",
"priority":"P1"
}'
Sample Response
Create alert requests are processed asynchronously, therefore valid requests are responded with
HTTP status 202 - Accepted
.
{
"result": "Request will be processed",
"took": 0.302,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Delete Alert
HTTP Method | URL |
---|---|
DELETE | https://api.opsgenie.com/v2/alerts/:identifier |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
Query Parameters
Parameter | Mandatory | Description | Limit |
---|---|---|---|
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are AlertID and tinyID. | |
false | Display name of the request owner. | 100 characters. | |
source | false | Display name of the request source. | 100 characters. |
Sample Request
curl -X DELETE 'https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7?identifierType=id'
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
Sample Response
Delete alert requests are processed asynchronously, therefore valid requests are responded to with
HTTP status 202 - Accepted.
{
"result": "Request will be processed",
"took": 0.204,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Get Alert
HTTP Method | URL |
---|---|
GET | https://api.opsgenie.com/v2/alerts/:identifier |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
Query Parameters
Parameter | Mandatory | Description |
---|---|---|
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are id, tiny and alias. Default value is id. |
Sample Requests
curl -X GET -H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889" 'https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7?identifierType=id'
curl -X GET -H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889" 'https://api.opsgenie.com/v2/alerts/1905?identifierType=tiny'
curl -X GET -H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889" 'https://api.opsgenie.com/v2/alerts/life%20is%20too%20short%20for%20no%20alias?identifierType=alias'
Sample Response
{
"data": {
"id": "70413a06-38d6-4c85-92b8-5ebc900d42e2",
"tinyId": "1791",
"alias": "event_573",
"message": "Our servers are in danger",
"status": "closed",
"acknowledged": false,
"isSeen": true,
"tags": [
"OverwriteQuietHours",
"Critical"
],
"snoozed": true,
"snoozedUntil": "2017-04-03T20:32:35.143Z",
"count": 79,
"lastOccurredAt": "2017-04-03T20:05:50.894Z",
"createdAt": "2017-03-21T20:32:52.353Z",
"updatedAt": "2017-04-03T20:32:57.301Z",
"source": "Isengard",
"owner": "[email protected]",
"priority": "P5",
"responders":[
{
"id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c",
"type":"team"
},
{
"id":"bb4d9938-c3c2-455d-aaab-727aa701c0d8",
"type":"user"
},
{
"id":"aee8a0de-c80f-4515-a232-501c0bc9d715",
"type":"escalation"
},
{
"id":"80564037-1984-4f38-b98e-8a1f662df552",
"type":"schedule"
}
],
"integration": {
"id": "4513b7ea-3b91-438f-b7e4-e3e54af9147c",
"name": "Nebuchadnezzar",
"type": "API"
},
"report": {
"ackTime": 15702,
"closeTime": 60503,
"acknowledgedBy": "[email protected]",
"closedBy": "[email protected]"
},
"actions": ["Restart", "Ping"],
"entity": "EC2",
"description": "Example description",
"details": {
"serverName": "Zion",
"region": "Oregon"
}
},
"requestId": "9ae63dd7-ed00-4c81-86f0-c4ffd33142c9"
}
List Alerts
HTTP Method | URL |
---|---|
GET | https://api.opsgenie.com/v2/alerts |
Query Parameters
Provide either a query
or searchIdentifier
parameter to apply any filter. If both parameters are given, query
parameter is used. If none of the parameters are given, no filtering is applied.
Field Name | Mandatory | Value Definition |
---|---|---|
query | false | Search query to apply while filtering the alerts. You can refer Alerts Search Query Help for further information about search queries. |
searchIdentifier | false | Identifier of the saved search query to apply while filtering the alerts. |
searchIdentifierType | false | Identifier type of the saved search query. Possible values are id and name. Default value is id. If searchIdentifier is not provided, this value is ignored. |
offset | false | Start index of the result set (to apply pagination). Minimum value (and also default value) is 0. |
limit | false | Maximum number of items to provide in the result. Must be a positive integer value. Default value is 20 and maximum value is 100. |
sort | false | Name of the field that result set will be sorted by. Default value is createdAt. Possible values are specified below:createdAt updatedAt tinyId alias message status acknowledged isSeen snoozed snoozedUntil count lastOccurredAt source owner integration.name integration.type report.ackTime report.closeTime report.acknowledgedBy report.closedBy |
order | false | Sorting order of the result set. Possible values are desc and asc. Default value is desc.desc : Sort result set in descending orderasc : Sort result set in ascending order |
Sample Requests
curl -XGET -H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889" 'https://api.opsgenie.com/v2/alerts?query=status%3Aopen&offset=7&limit=10&sort=createdAt&order=desc'
curl -XGET -H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889" 'https://api.opsgenie.com/v2/alerts?searchIdentifier=70413a06-38d6-4c85-92b8-5ebc900d42e2&searchIdentifierType=id&&limit=10&sort=createdAt&order=desc'
curl -XGET -H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889" 'https://api.opsgenie.com/v2/alerts?searchIdentifier=openAlerts&searchIdentifierType=name&limit=10&sort=createdAt&order=desc'
Sample Response
If
pageField
andsort
parameters are different, URL of the next page is be provided.
{
"data": [
{
"id": "70413a06-38d6-4c85-92b8-5ebc900d42e2",
"tinyId": "1791",
"alias": "event_573",
"message": "Our servers are in danger",
"status": "closed",
"acknowledged": false,
"isSeen": true,
"tags": [
"OverwriteQuietHours",
"Critical"
],
"snoozed": true,
"snoozedUntil": "2017-04-03T20:32:35.143Z",
"count": 79,
"lastOccurredAt": "2017-04-03T20:05:50.894Z",
"createdAt": "2017-03-21T20:32:52.353Z",
"updatedAt": "2017-04-03T20:32:57.301Z",
"source": "Isengard",
"owner": "[email protected]",
"priority": "P4",
"responders":[
{
"id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c",
"type":"team"
},
{
"id":"bb4d9938-c3c2-455d-aaab-727aa701c0d8",
"type":"user"
},
{
"id":"aee8a0de-c80f-4515-a232-501c0bc9d715",
"type":"escalation"
},
{
"id":"80564037-1984-4f38-b98e-8a1f662df552",
"type":"schedule"
}
],
"integration": {
"id": "4513b7ea-3b91-438f-b7e4-e3e54af9147c",
"name": "Nebuchadnezzar",
"type": "API"
},
"report": {
"ackTime": 15702,
"closeTime": 60503,
"acknowledgedBy": "[email protected]",
"closedBy": "[email protected]"
}
},
{
"id": "70413a06-38d6-4c85-92b8-5ebc900d42e2",
"tinyId": "1791",
"alias": "event_573",
"message": "Sample Message",
"status": "open",
"acknowledged": false,
"isSeen": false,
"tags": [
"RandomTag"
],
"snoozed": false,
"count": 1,
"lastOccurredAt": "2017-03-21T20:32:52.353Z",
"createdAt": "2017-03-21T20:32:52.353Z",
"updatedAt": "2017-04-03T20:32:57.301Z",
"source": "Zion",
"owner": "",
"priority": "P5",
"responders":[],
"integration": {
"id": "4513b7ea-3b91-b7e4-438f-e3e54af9147c",
"name": "My_Lovely_Amazon",
"type": "CloudWatch"
}
}
],
"paging":{
"next":"https://api.opsgenie.com/v2/alerts?query=status%3Aopen&offset=20&limit=10&sort=createdAt&order=desc",
"first":"https://api.opsgenie.com/v2/alerts?query=status%3Aopen&offset=0&limit=10&sort=createdAt&order=desc",
"last":"https://api.opsgenie.com/v2/alerts?query=status%3Aopen&offset=100&limit=10&sort=createdAt&order=desc"
},
"took": 0.605,
"requestId": "9ae63dd7-ed00-4c81-86f0-c4ffd33142c9"
}
Count Alerts
Count alerts request is used to count alerts in Opsgenie. It takes the following parameters
HTTP Method | URL |
---|---|
GET | https://api.opsgenie.com/v2/alerts/count |
Query Parameters
Provide either a query
or searchIdentifier
parameter to apply any filter. If both parameters are given, query
parameter is used. If none of the parameters are given, no filtering is applied.
Field Name | Mandatory | Value Definition |
---|---|---|
query | false | Search query to apply while filtering the alerts. You can refer Alerts Search Query Help for further information about search queries. |
searchIdentifier | false | Identifier of the saved search query to apply while filtering the alerts. |
searchIdentifierType | false | Identifier type of the saved search query. Possible values are id and name. Default value is id. If searchIdentifier is not provided, this value is ignored. |
Sample Requests
curl -XGET -H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889" 'https://api.opsgenie.com/v2/alerts/count?query=status%3Aopen'
curl -XGET -H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889" 'https://api.opsgenie.com/v2/alerts/count?searchIdentifier=70413a06-38d6-4c85-92b8-5ebc900d42e2&searchIdentifierType=id'
curl -XGET -H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889" 'https://api.opsgenie.com/v2/alerts/count?searchIdentifier=openAlerts&searchIdentifierType=name'
Sample Response
{
"data": {
"count": 7
},
"took": 0.051,
"requestId": "9ae63dd7-ed00-4c81-86f0-c4ffd33142c9"
}
Acknowledge Alert
HTTP Method | URL |
---|---|
POST | https://api.opsgenie.com/v2/alerts/:identifier/acknowledge |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
Query Parameters
Parameter | Mandatory | Description |
---|---|---|
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are id, tiny, and alias. Default value is id. |
JSON Body Fields
Field | Mandatory | Description | limit |
---|---|---|---|
user | false | Display name of the request owner. | 100 characters |
source | false | Display name of the request source. | 100 characters |
note | false | Additional alert note to add. | 25000 characters |
Sample Requests
curl -X POST https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7/acknowledge?identifierType=id
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/1905/acknowledge?identifierType=tiny
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/life%20is%20too%20short%20for%20no%20alias/acknowledge?identifierType=alias
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
Sample Response
Acknowledge alert requests are processed asynchronously, therefore valid requests are responded to with
HTTP status 202 - Accepted
.
{
"result": "Request will be processed",
"took": 0.302,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Close Alert
HTTP Method | URL |
---|---|
POST | https://api.opsgenie.com/v2/alerts/:identifier/close |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
Query Parameters
Parameter | Mandatory | Description |
---|---|---|
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are id, tiny and alias. Default value is id. |
JSON Body Fields
Field | Mandatory | Description | limit |
---|---|---|---|
user | false | Display name of the request owner. | 100 characters |
source | false | Display name of the request source. | 100 characters |
note | false | Additional alert note to add. | 25000 characters |
Sample Requests
curl -X POST https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7/close?identifierType=id
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/1905/close?identifierType=tiny
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/life%20is%20too%20short%20for%20no%20alias/close?identifierType=alias
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
Sample Response
Close alert requests are processed asynchronously, therefore valid requests are responded to with
HTTP status 202 - Accepted
.
{
"result": "Request will be processed",
"took": 0.107,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Add Note to Alert
HTTP Method | URL |
---|---|
POST | https://api.opsgenie.com/v2/alerts/:identifier/notes |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
Query Parameters
Parameter | Mandatory | Description |
---|---|---|
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are id, tiny and alias. Default value is id. |
JSON Body Fields
Field | Mandatory | Description | limit |
---|---|---|---|
user | false | Display name of the request owner. | 100 characters |
source | false | Display name of the request source. | 100 characters |
note | true | Alert note to add | 25000 characters |
Sample Requests
curl -X POST https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7/notes?identifierType=id
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/1905/notes?identifierType=tiny
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/life%20is%20too%20short%20for%20no%20alias/notes?identifierType=alias
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
Sample Response
Add note requests are processed asynchronously, therefore valid requests are responded to with
HTTP status 202 - Accepted
.
{
"result": "Request will be processed",
"took": 0.213,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Execute Custom Action
HTTP Method | URL |
---|---|
POST | https://api.opsgenie.com/v2/alerts/:identifier/actions/:action |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
action | Name of the action to execute |
Query Parameters
Parameter | Mandatory | Description |
---|---|---|
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are id, tiny and alias. Default value is id. |
JSON Body Fields
Field | Mandatory | Description | limit |
---|---|---|---|
user | false | Display name of the request owner. | 100 characters |
source | false | Display name of the request source. | 100 characters |
note | false | Alert note to add | 25000 characters |
Sample Requests
curl -X POST https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7/actions/restart?identifierType=id
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/1905/actions/restart?identifierType=tiny
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/life%20is%20too%20short%20for%20no%20alias/actions/restart?identifierType=alias
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
Sample Response
Custom action requests are processed asynchronously, therefore valid requests are responded to with
HTTP status 202 - Accepted
.
{
"result": "Request will be processed",
"took": 0.304,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Unacknowledge Alert
HTTP Method | URL |
---|---|
POST | https://api.opsgenie.com/v2/alerts/:identifier/unacknowledge |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
Query Parameters
Parameter | Mandatory | Description |
---|---|---|
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are id, tiny and alias. Default value is id. |
JSON Body Fields
Field | Mandatory | Description | limit |
---|---|---|---|
user | false | Display name of the request owner. | 100 characters |
source | false | Display name of the request source. | 100 characters |
note | false | Additional alert note to add. | 25000 characters |
Sample Requests
curl -X POST https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7/unacknowledge?identifierType=id
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/1905/unacknowledge?identifierType=tiny
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/life%20is%20too%20short%20for%20no%20alias/unacknowledge?identifierType=alias
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
Sample Response
Unacknowledge alert requests are processed asynchronously, therefore valid requests are responded to with
HTTP status 202 - Accepted
.
{
"result": "Request will be processed",
"took": 0.202,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Snooze Alert
HTTP Method | URL |
---|---|
POST | https://api.opsgenie.com/v2/alerts/:identifier/snooze |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
Query Parameters
Parameter | Mandatory | Description |
---|---|---|
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are id, tiny and alias. Default value is id. |
JSON Body Fields
Field | Mandatory | Description | limit |
---|---|---|---|
endTime | true | Date and time that snooze will lose effect. Provided value should be in ISO 8061 format. | |
user | false | Display name of the request owner. | 100 characters |
source | false | Display name of the request source. | 100 characters |
note | false | Additional alert note to add. | 25000 characters |
Sample Requests
curl -X POST https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7/snooze?identifierType=id
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"endTime":"2017-04-03T20:05:50.894Z",
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/1905/snooze?identifierType=tiny
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"endTime":"2017-04-03T20:05:50.894Z",
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/life%20is%20too%20short%20for%20no%20alias/snooze?identifierType=alias
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"endTime":"2017-04-03T20:05:50.894Z",
"user":"Monitoring Script"
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
Sample Response
Snooze alert requests are processed asynchronously, therefore valid requests are responded to with
HTTP status 202 - Accepted
.
{
"result": "Request will be processed",
"took": 0.109,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Escalate Alert to Next
HTTP Method | URL |
---|---|
POST | https://api.opsgenie.com/v2/alerts/:identifier/escalate |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
Query Parameters
Parameter | Mandatory | Description |
---|---|---|
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are id, tiny and alias. Default value is id. |
JSON Body Fields
Field | Mandatory | Description | limit |
---|---|---|---|
escalation | true | Escalation that the alert will be escalated. Either id or name of the escalation should be provided. You can refer below for example values. | |
user | false | Display name of the request owner. | 100 characters |
source | false | Display name of the request source. | 100 characters |
note | false | Additional alert note to add. | 25000 characters |
escalation
field examples:
{
"escalation": {
"id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c"
}
}
{
"escalation": {
"name":"Operations_Escalation"
}
}
Sample Requests
curl -X POST https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7/escalate?identifierType=id
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"escalation":{"id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c"},
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/1905/escalate?identifierType=tiny
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"escalation":{"name":"Operations_Escalation"},
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/life%20is%20too%20short%20for%20no%20alias/escalate?identifierType=alias
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-H "Content-Type: application/json"
-d
'{
"escalation":{"id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c"},
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
Sample Response
Escalate alert requests are processed asynchronously, therefore valid requests are responded to with
HTTP status 202 - Accepted
.
{
"result": "Request will be processed",
"took": 0.456,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Assign Alert
HTTP Method | URL |
---|---|
POST | https://api.opsgenie.com/v2/alerts/:identifier/assign |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
Query Parameters
Parameter | Mandatory | Description |
---|---|---|
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are id , `tiny and alias. Default value is id**. |
JSON Body Fields
Field | Mandatory | Description | limit |
---|---|---|---|
owner | true | User that the alert will be assigned to. Either id or username of the user should be provided. You can refer below for example values. | |
user | false | Display name of the request owner. | 100 characters |
source | false | Display name of the request source. | 100 characters |
note | false | Additional alert note to add. | 25000 characters |
owner
field examples:
{
"owner": {
"id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c"
}
}
{
"owner": {
"username":"[email protected]"
}
}
Sample Requests
curl -X POST https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7/escalate?identifierType=id
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"owner": { "id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c" },
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/1905/escalate?identifierType=tiny
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"owner":{ "username":"[email protected]"},
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/life%20is%20too%20short%20for%20no%20alias/escalate?identifierType=alias
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"owner": { "id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c" },
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
Sample Response
Assign alert requests are processed asynchronously, therefore valid requests are responded to with
HTTP status 202 - Accepted
.
{
"result": "Request will be processed",
"took": 0.202,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Add Team to Alert
HTTP Method | URL |
---|---|
POST | https://api.opsgenie.com/v2/alerts/:identifier/teams |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
Query Parameters
Parameter | Mandatory | Description |
---|---|---|
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are id, tiny and alias. Default value is id. |
JSON Body Fields
Field | Mandatory | Description | limit |
---|---|---|---|
team | true | Team to route the alert. Either id or name of the team should be provided. You can refer below for example values. | |
user | false | Display name of the request owner. | 100 characters |
source | false | Display name of the request source. | 100 characters |
note | false | Additional alert note to add. | 25000 characters |
team
field examples:
{
"team": {
"id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c"
}
}
{
"team": {
"name":"operations"
}
}
Sample Requests
curl -X POST https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7/teams?identifierType=id
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"team": { "id": "4513b7ea-3b91-438f-b7e4-e3e54af9147c" },
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/1905/teams?identifierType=tiny
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"team": { "name": "operations" },
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/life%20is%20too%20short%20for%20no%20alias/teams?identifierType=alias
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"team": { "id": "4513b7ea-3b91-438f-b7e4-e3e54af9147c" },
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
Sample Response
Add team to alert requests are processed asynchronously, therefore valid requests are responded to with
HTTP status 202 - Accepted
.
{
"result": "Request will be processed",
"took": 0.333,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Add Responder to Alert
HTTP Method | URL |
---|---|
POST | https://api.opsgenie.com/v2/alerts/:identifier/responders |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
Query Parameters
Parameter | Mandatory | Description |
---|---|---|
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are id, tiny and alias. Default value is id. |
JSON Body Fields
Field | Mandatory | Description | limit |
---|---|---|---|
responder | true | Team or user that the alert will be routed to. type field is mandatory for item, where possible values are team and user. In addition to the type field id should be given. You can refer below for example values. | |
user | false | Display name of the request owner. | 100 characters |
source | false | Display name of the request source. | 100 characters |
note | false | Additional alert note to add. | 25000 characters |
responder
field examples:
{
"responder": {
"type":"team",
"id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c"
}
}
{
"responder":[
{
"username":"[email protected]",
"type":"user"
}
]
}
Sample Requests
curl -X POST https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7/responders?identifierType=id
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"responder": {"id":"4513b7ea-3b91-438f-b7e4-e3e54af9147c","type":"team"},
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
Sample Response
Add responder to alert requests are processed asynchronously, therefore valid requests are responded to with
HTTP status 202 - Accepted
.
{
"result": "Request will be processed",
"took": 0.333,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Add Tags to Alert
HTTP Method | URL |
---|---|
POST | https://api.opsgenie.com/v2/alerts/:identifier/tags |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
Query Parameters
Parameter | Mandatory | Description |
---|---|---|
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are id, tiny and alias. Default value is id. |
JSON Body Fields
tags | true | List of tags to add into alert. You can refer below for example values. | 20 x 50 characters |
user | false | Display name of the request owner. | 100 characters |
source | false | Display name of the request source. | 100 characters |
note | false | Additional alert note to add. | 25000 characters |
tags
field examples:
{
"tags": ["OverwriteQuietHours","Critical"]
}
Sample Requests
curl -X POST https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7/tags?identifierType=id
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"tags": ["OverwriteQuietHours","Critical"],
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/1905/tags?identifierType=tiny
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"tags": ["OverwriteQuietHours","Critical"],
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
curl -X POST https://api.opsgenie.com/v2/alerts/life%20is%20too%20short%20for%20no%20alias/tags?identifierType=alias
-H "Content-Type: application/json"
-H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889"
-d
'{
"tags": ["OverwriteQuietHours","Critical"],
"user":"Monitoring Script",
"source":"AWS Lambda",
"note":"Action executed via Alert API"
}'
Sample Response
Add tags to alert requests are processed asynchronously, therefore valid requests are responded to with HTTP status
202 - Accepted
.
{
"result": "Request will be processed",
"took": 0.206,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Remove Tags from Alert
HTTP Method | URL |
---|---|
DELETE | https://api.opsgenie.com/v2/alerts/:identifier/tags |
In-Line Parameters
Referred Name | Description |
---|---|
identifier | Identifier of the alert |
Query Parameters
Parameter | Mandatory | Description | Limit |
---|---|---|---|
tags | true | Comma separated list of tags to remove from alert. | 20 x 50 characters |
identifierType | false | Type of the identifier that is provided as an in-line parameter. Possible values are id, tiny and alias. Default value is id. | |
user | false | Display name of the request owner. | 100 characters |
source | false | Display name of the request source. | 100 characters |
note | false | Additional alert note to add. | 25000 characters |
Sample Requests
curl -X DELETE -H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889" 'https://api.opsgenie.com/v2/alerts/8418d193-2dab-4490-b331-8c02cdd196b7/tags?identifierType=id&tags=OverwriteQuietHours,Critical'
curl -X DELETE -H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889" 'https://api.opsgenie.com/v2/alerts/1905/tags?identifierType=tiny&tags=OverwriteQuietHours,Critical'
curl -X DELETE -H "Authorization: GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889" 'https://api.opsgenie.com/v2/alerts/life%20is%20too%20short%20for%20no%20alias/tags?identifierType=alias&tags=OverwriteQuietHours,Critical'
Sample Response
Remove tags from alert requests are processed asynchronously, therefore valid requests are responded to with HTTP
status 202 - Accepted
.
{
"result": "Request will be processed",
"took": 0.195,
"requestId": "43a29c5c-3dbf-4fa4-9c26-f4f71023e120"
}
Updated over 5 years ago