curl --request GET \
--url https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "monitorAlert_123",
"monitorId": "monitor_123",
"ruleId": "monitorAlertRule_123",
"ruleDeletedAt": "2023-11-07T05:31:56Z",
"state": "OPEN",
"openedAt": "2023-11-07T05:31:56Z",
"closedAt": "2023-11-07T05:31:56Z",
"closeReason": null,
"window": "ONE_HOUR",
"windowStart": "2023-11-07T05:31:56Z",
"windowEnd": "2023-11-07T05:31:56Z",
"metricGroupId": "metricGroup_123",
"metricId": "metric_123",
"samplingPercentage": 5,
"threshold": 10,
"clearValue": 6,
"observation": {
"type": "BAD_SESSION_COUNT",
"badSessionScore": 0.5,
"badSessionCount": 12,
"scoredSessionCount": 240
}
}{
"error": "Error type",
"message": "Error message description"
}{
"error": "Error type",
"message": "Error message description"
}{
"error": "Error type",
"message": "Error message description"
}Get a monitor alert
Returns one alert with what the check saw when it opened. 404 for an alert of another monitor.
curl --request GET \
--url https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.galtea.ai/monitors/{monitorId}/alerts/{alertId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "monitorAlert_123",
"monitorId": "monitor_123",
"ruleId": "monitorAlertRule_123",
"ruleDeletedAt": "2023-11-07T05:31:56Z",
"state": "OPEN",
"openedAt": "2023-11-07T05:31:56Z",
"closedAt": "2023-11-07T05:31:56Z",
"closeReason": null,
"window": "ONE_HOUR",
"windowStart": "2023-11-07T05:31:56Z",
"windowEnd": "2023-11-07T05:31:56Z",
"metricGroupId": "metricGroup_123",
"metricId": "metric_123",
"samplingPercentage": 5,
"threshold": 10,
"clearValue": 6,
"observation": {
"type": "BAD_SESSION_COUNT",
"badSessionScore": 0.5,
"badSessionCount": 12,
"scoredSessionCount": 240
}
}{
"error": "Error type",
"message": "Error message description"
}{
"error": "Error type",
"message": "Error message description"
}{
"error": "Error type",
"message": "Error message description"
}Authorizations
API key authorization. Pass your API key in the Authorization header as a Bearer token. Both new (gsk_*) and legacy (gsk-) API keys are accepted, e.g. Authorization: Bearer gsk_... or Authorization: Bearer gsk-....
Path Parameters
Monitor ID
"monitor_123"
Monitor alert ID
"monitorAlert_123"
Response
Alert retrieved successfully
"monitorAlert_123"
"monitor_123"
"monitorAlertRule_123"
Set when the rule that opened the alert was deleted
OPEN, CLOSED "OPEN"
RECOVERED, RULE_DELETED, RULE_EDITED, RULE_PAUSED, null null
FIFTEEN_MINUTES, ONE_HOUR, SIX_HOURS, TWENTY_FOUR_HOURS "ONE_HOUR"
Start of the window the check counted when the alert opened
End of that window
The metric family the rule watches
"metricGroup_123"
The metric revision the check counted
"metric_123"
The monitor's sampling rate
5
The threshold that opened the alert
10
The value at which an open alert closes, from the rule's current settings. Null when the alert is closed, its rule was deleted, or its rule's metric family, window or bad session score changed. After a threshold-only edit it holds the new clear value.
6
What the check saw when the alert opened. The fields depend on the rule type.
Show child attributes
Show child attributes