curl --request GET \
--url https://api.extole.io/v4/reports/performance-profiles/{report_type} \
--header 'Authorization: <api-key>'import requests
url = "https://api.extole.io/v4/reports/performance-profiles/{report_type}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.extole.io/v4/reports/performance-profiles/{report_type}', 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.extole.io/v4/reports/performance-profiles/{report_type}",
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: <api-key>"
],
]);
$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.extole.io/v4/reports/performance-profiles/{report_type}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
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.extole.io/v4/reports/performance-profiles/{report_type}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.extole.io/v4/reports/performance-profiles/{report_type}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"p90_duration_seconds": 123,
"report_type": "<string>",
"sample_count": 123,
"tier": "FAST",
"p90_duration_per_range_hour": 123
}Get report type performance profile
Returns the performance profile for a single named report type, derived from this client’s report execution history over the last three months. Tiering rules match GET /v4/reports/performance-profiles: SQL-backed types are always VERY_FAST; types with at least 3 runs and more than 30% of them failing on memory or interrupt errors are VERY_SLOW; other types are UNKNOWN below 3 completed runs, VERY_FAST outright under a minute of p90 duration, otherwise ranked relative to this client’s other report types within their range-parameterized or rangeless peer group. If the report type has never run in the window, a placeholder profile is returned with a zero sample count.
curl --request GET \
--url https://api.extole.io/v4/reports/performance-profiles/{report_type} \
--header 'Authorization: <api-key>'import requests
url = "https://api.extole.io/v4/reports/performance-profiles/{report_type}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.extole.io/v4/reports/performance-profiles/{report_type}', 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.extole.io/v4/reports/performance-profiles/{report_type}",
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: <api-key>"
],
]);
$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.extole.io/v4/reports/performance-profiles/{report_type}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
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.extole.io/v4/reports/performance-profiles/{report_type}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.extole.io/v4/reports/performance-profiles/{report_type}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"p90_duration_seconds": 123,
"report_type": "<string>",
"sample_count": 123,
"tier": "FAST",
"p90_duration_per_range_hour": 123
}Authorizations
Path Parameters
The report type name.
Response
The performance profile for the named report type.
The p90 run duration in seconds across the sampled runs. Zero when there are no measurable runs.
Name of the report type this profile describes.
Number of completed runs with a measurable duration observed in the last three months and used to compute this profile. Runs that failed or never produced a duration are excluded.
Performance tier assigned to the report type. VERY_FAST through VERY_SLOW rank measured cost; UNKNOWN means there were fewer than 3 completed runs in the window to rank.
FAST, MEDIUM, SLOW, UNKNOWN, VERY_FAST, VERY_SLOW The p90 run duration normalized to seconds per hour of the report's requested time range. Absent when the report type takes no range parameter or no range could be resolved from the sampled runs.
Was this page helpful?
