cURL
curl --request GET \
--url https://api.staging.qyl.dev/api/v1/alerts/rules/{ruleId}import requests
url = "https://api.staging.qyl.dev/api/v1/alerts/rules/{ruleId}"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.staging.qyl.dev/api/v1/alerts/rules/{ruleId}', 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.staging.qyl.dev/api/v1/alerts/rules/{ruleId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.staging.qyl.dev/api/v1/alerts/rules/{ruleId}"
req, _ := http.NewRequest("GET", url, nil)
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.staging.qyl.dev/api/v1/alerts/rules/{ruleId}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.staging.qyl.dev/api/v1/alerts/rules/{ruleId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"id": "<string>",
"project_id": "<string>",
"name": "<string>",
"rule_type": "threshold",
"condition_json": "<string>",
"target_type": "<string>",
"severity": "critical",
"cooldown_seconds": 123,
"enabled": true,
"trigger_count": 123,
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"description": "<string>",
"threshold_json": "<string>",
"target_filter_json": "<string>",
"notification_channels_json": "<string>",
"last_triggered_at": "2023-11-07T05:31:56Z"
}{
"type": "about:blank",
"title": "Not Found",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"resource_type": "<string>",
"resource_id": "<string>"
}{
"type": "about:blank",
"title": "Internal Server Error",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"error_code": "<string>"
}Alerts
Get apiv1alertsrules 1
Get alert rule by ID
GET
/
api
/
v1
/
alerts
/
rules
/
{ruleId}
cURL
curl --request GET \
--url https://api.staging.qyl.dev/api/v1/alerts/rules/{ruleId}import requests
url = "https://api.staging.qyl.dev/api/v1/alerts/rules/{ruleId}"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.staging.qyl.dev/api/v1/alerts/rules/{ruleId}', 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.staging.qyl.dev/api/v1/alerts/rules/{ruleId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.staging.qyl.dev/api/v1/alerts/rules/{ruleId}"
req, _ := http.NewRequest("GET", url, nil)
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.staging.qyl.dev/api/v1/alerts/rules/{ruleId}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.staging.qyl.dev/api/v1/alerts/rules/{ruleId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"id": "<string>",
"project_id": "<string>",
"name": "<string>",
"rule_type": "threshold",
"condition_json": "<string>",
"target_type": "<string>",
"severity": "critical",
"cooldown_seconds": 123,
"enabled": true,
"trigger_count": 123,
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"description": "<string>",
"threshold_json": "<string>",
"target_filter_json": "<string>",
"notification_channels_json": "<string>",
"last_triggered_at": "2023-11-07T05:31:56Z"
}{
"type": "about:blank",
"title": "Not Found",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"resource_type": "<string>",
"resource_id": "<string>"
}{
"type": "about:blank",
"title": "Internal Server Error",
"status": 123,
"detail": "<string>",
"instance": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"error_code": "<string>"
}Path Parameters
Response
The request has succeeded.
Alert rule definition
Rule ID
Owning project
Rule name
Rule type
Available options:
threshold, error_rate, new_issue, regression, burn_rate, anomaly, custom Condition definition
Target type for evaluation
Alert severity
Available options:
critical, warning, info Cooldown between firings in seconds
Whether rule is enabled
Total trigger count
Creation timestamp
Last update timestamp
Rule description
Threshold definition
Target filter
Notification channels
Last trigger timestamp
Was this page helpful?
