Webhook#
get_webhook#
Code samples
# You can also use wget
curl -X GET https://PEM-SERVER-IP/api/v14/webhook/ \
-H Accept: application/json \
-H X-Auth-Token: string
import requests
headers = {
Accept: application/json,
X-Auth-Token: string
}
r = requests.get(https://PEM-SERVER-IP/api/v14/webhook/, headers = headers)
print(r.json())
const headers = {
Accept:application/json,
X-Auth-Token:string
};
fetch(https://PEM-SERVER-IP/api/v14/webhook/,
{
method: GET,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
GET /webhook/
Retrieve the webhook list.*
Parameters#
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
X-Auth-Token |
header |
string |
true |
Token of authorization |
Example responses
[
{
"id": 0,
"name": "string",
"url": "string",
"enabled": true,
"method": "POST",
"http_headers": [
{
"http_header_id": 0,
"http_header_key": "string",
"http_header_value": "string"
}
],
"payload_template": "{text: You have new alert from PEM, attachments: [{text: AlertID \n%AlertID% \nAlertName \n%AlertName%}]}",
"low_alert": true,
"med_alert": true,
"high_alert": true,
"cleared_alert": true,
"payload_type": "ALERT"
}
]
Responses#
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
Status 200 |
Inline |
Response Schema#
Status Code 200
Name |
Type |
Required |
Restrictions |
Description |
|---|---|---|---|---|
anonymous |
false |
none |
none |
|
» id |
integer |
false |
none |
Webhook ID |
» name |
string |
false |
none |
Webhook name |
» url |
string |
false |
none |
Webhook URL |
» enabled |
boolean |
false |
none |
Determines whether the webhook is enabled. |
» method |
string |
false |
none |
Request method |
» http_headers |
false |
none |
List of the HTTP header key/value pairs to be used by the webhook |
|
»» http_header_id |
integer |
false |
none |
ID of the HTTP header |
»» http_header_key |
string |
false |
none |
Name of the HTTP header key |
»» http_header_value |
string |
false |
none |
Name of the HTTP header key |
» payload_template |
string |
false |
none |
Payload template. Below is payload example for slack. |
» low_alert |
boolean |
false |
none |
Determines whether the low alert is enabled. |
» med_alert |
boolean |
false |
none |
Determines whether the medium alert is enabled. |
» high_alert |
boolean |
false |
none |
Determines whether the high alert is enabled. |
» cleared_alert |
boolean |
false |
none |
Determines whether the cleared alert is enabled. |
» payload_type |
string |
false |
none |
Payload type |
Enumerated Values#
Property |
Value |
|---|---|
method |
POST |
method |
PUT |
payload_type |
ALERT |
payload_type |
JOB |
Note
This operation does not require authentication
post_webhook#
Code samples
# You can also use wget
curl -X POST https://PEM-SERVER-IP/api/v14/webhook/ \
-H Content-Type: application/json \
-H X-Auth-Token: string
import requests
headers = {
Content-Type: application/json,
X-Auth-Token: string
}
r = requests.post(https://PEM-SERVER-IP/api/v14/webhook/, headers = headers)
print(r.json())
const inputBody = {
"name": "string",
"url": "string",
"enabled": true,
"method": "POST",
"http_headers": [
{
"http_header_key": "string",
"http_header_value": "string"
}
],
"payload_template": "{ Alert Name:%AlertName%,type:Webhook }",
"low_alert": true,
"med_alert": true,
"high_alert": true,
"cleared_alert": true,
"payload_type": "ALERT"
};
const headers = {
Content-Type:application/json,
X-Auth-Token:string
};
fetch(https://PEM-SERVER-IP/api/v14/webhook/,
{
method: POST,
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
POST /webhook/
Add a new webhook.*
Body parameter
{
"name": "string",
"url": "string",
"enabled": true,
"method": "POST",
"http_headers": [
{
"http_header_key": "string",
"http_header_value": "string"
}
],
"payload_template": "{ Alert Name:%AlertName%,type:Webhook }",
"low_alert": true,
"med_alert": true,
"high_alert": true,
"cleared_alert": true,
"payload_type": "ALERT"
}
Parameters#
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
X-Auth-Token |
header |
string |
true |
Token of authorization |
body |
body |
true |
none |
Example responses
Responses#
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
Webhook created successfully. |
None |
Response Schema#
Note
This operation does not require authentication
get_webhook{webhook_id}#
Code samples
# You can also use wget
curl -X GET https://PEM-SERVER-IP/api/v14/webhook/{webhook_id} \
-H Accept: application/json \
-H X-Auth-Token: string
import requests
headers = {
Accept: application/json,
X-Auth-Token: string
}
r = requests.get(https://PEM-SERVER-IP/api/v14/webhook/{webhook_id}, headers = headers)
print(r.json())
const headers = {
Accept:application/json,
X-Auth-Token:string
};
fetch(https://PEM-SERVER-IP/api/v14/webhook/{webhook_id},
{
method: GET,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
GET /webhook/{webhook_id}
Retrieve information for the webhook, identified by the webhook_id.*
Parameters#
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
webhook_id |
path |
string |
true |
none |
X-Auth-Token |
header |
string |
true |
Token of authorization |
Example responses
{
"id": 0,
"name": "string",
"url": "string",
"enabled": true,
"method": "POST",
"http_headers": [
{
"http_header_id": 0,
"http_header_key": "string",
"http_header_value": "string"
}
],
"payload_template": "{text: You have new alert from PEM, attachments: [{text: AlertID \n%AlertID% \nAlertName \n%AlertName%}]}",
"low_alert": true,
"med_alert": true,
"high_alert": true,
"cleared_alert": true,
"payload_type": "ALERT"
}
Responses#
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
Status 200 |
Note
This operation does not require authentication
put_webhook{webhook_id}#
Code samples
# You can also use wget
curl -X PUT https://PEM-SERVER-IP/api/v14/webhook/{webhook_id} \
-H Content-Type: application/json \
-H X-Auth-Token: string
import requests
headers = {
Content-Type: application/json,
X-Auth-Token: string
}
r = requests.put(https://PEM-SERVER-IP/api/v14/webhook/{webhook_id}, headers = headers)
print(r.json())
const inputBody = {
"name": "string",
"url": "string",
"enabled": true,
"method": "POST",
"http_headers": {
"added": [
{
"http_header_key": "string",
"http_header_value": "string"
}
],
"changed": [
{
"http_header_id": 0,
"http_header_key": "string",
"http_header_value": "string"
}
],
"deleted": [
{
"http_header_id": 0
}
],
"payload_type": "ALERT"
},
"payload_template": "{text: You have new alert from PEM, attachments: [{text: AlertID \n%AlertID% \nAlertName \n%AlertName%}]}",
"low_alert": true,
"med_alert": true,
"high_alert": true,
"cleared_alert": true
};
const headers = {
Content-Type:application/json,
X-Auth-Token:string
};
fetch(https://PEM-SERVER-IP/api/v14/webhook/{webhook_id},
{
method: PUT,
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
PUT /webhook/{webhook_id}
Update the webhook information.*
Body parameter
{
"name": "string",
"url": "string",
"enabled": true,
"method": "POST",
"http_headers": {
"added": [
{
"http_header_key": "string",
"http_header_value": "string"
}
],
"changed": [
{
"http_header_id": 0,
"http_header_key": "string",
"http_header_value": "string"
}
],
"deleted": [
{
"http_header_id": 0
}
],
"payload_type": "ALERT"
},
"payload_template": "{text: You have new alert from PEM, attachments: [{text: AlertID \n%AlertID% \nAlertName \n%AlertName%}]}",
"low_alert": true,
"med_alert": true,
"high_alert": true,
"cleared_alert": true
}
Parameters#
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
webhook_id |
path |
string |
true |
none |
X-Auth-Token |
header |
string |
true |
Token of authorization |
body |
body |
true |
none |
Example responses
Responses#
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
Webhook updated successfully. |
None |
Response Schema#
Note
This operation does not require authentication
delete_webhook{webhook_id}#
Code samples
# You can also use wget
curl -X DELETE https://PEM-SERVER-IP/api/v14/webhook/{webhook_id} \
-H X-Auth-Token: string
import requests
headers = {
X-Auth-Token: string
}
r = requests.delete(https://PEM-SERVER-IP/api/v14/webhook/{webhook_id}, headers = headers)
print(r.json())
const headers = {
X-Auth-Token:string
};
fetch(https://PEM-SERVER-IP/api/v14/webhook/{webhook_id},
{
method: DELETE,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});
DELETE /webhook/{webhook_id}
Delete the webhook.*
Parameters#
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
webhook_id |
path |
string |
true |
none |
X-Auth-Token |
header |
string |
true |
Token of authorization |
Example responses
Responses#
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
Webhook deleted successfully |
None |
Response Schema#
Note
This operation does not require authentication