Get Performance Overview
Returns aggregate performance metrics with percentile breakdowns for all Core Web Vitals.
GET /api/sites/:site/performance/overviewReturns aggregate performance metrics with percentile breakdowns for all Core Web Vitals.
Path Parameters
Prop
Type
Query Parameters
Accepts all Common Parameters (time and filters).
Response
Prop
Type
PerformanceMetrics Object
Each metric (lcp, cls, inp, fcp, ttfb) has the fields below; LCP is shown. LCP, INP, FCP and TTFB are in milliseconds; CLS is unitless. A percentile is null when no page load in the range reported that metric.
Prop
Type
curl -X GET "https://app.rybbit.io/api/sites/1/performance/overview?start_date=2024-01-01&end_date=2024-01-31" \
-H "Authorization: Bearer your_api_key_here"const response = await fetch(
'https://app.rybbit.io/api/sites/1/performance/overview?start_date=2024-01-01&end_date=2024-01-31',
{
headers: {
'Authorization': 'Bearer your_api_key_here'
}
}
);
const data = await response.json();import requests
response = requests.get(
'https://app.rybbit.io/api/sites/1/performance/overview',
params={
'start_date': '2024-01-01',
'end_date': '2024-01-31'
},
headers={
'Authorization': 'Bearer your_api_key_here'
}
)
data = response.json()$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://app.rybbit.io/api/sites/1/performance/overview?start_date=2024-01-01&end_date=2024-01-31');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer your_api_key_here'
]);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);require 'net/http'
require 'json'
uri = URI('https://app.rybbit.io/api/sites/1/performance/overview?start_date=2024-01-01&end_date=2024-01-31')
req = Net::HTTP::Get.new(uri)
req['Authorization'] = 'Bearer your_api_key_here'
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(req) }
data = JSON.parse(res.body)req, _ := http.NewRequest("GET", "https://app.rybbit.io/api/sites/1/performance/overview?start_date=2024-01-01&end_date=2024-01-31", nil)
req.Header.Set("Authorization", "Bearer your_api_key_here")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
var data map[string]interface{}
json.NewDecoder(resp.Body).Decode(&data)let client = reqwest::Client::new();
let res = client
.get("https://app.rybbit.io/api/sites/1/performance/overview?start_date=2024-01-01&end_date=2024-01-31")
.header("Authorization", "Bearer your_api_key_here")
.send()
.await?;
let data: serde_json::Value = res.json().await?;HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://app.rybbit.io/api/sites/1/performance/overview?start_date=2024-01-01&end_date=2024-01-31"))
.header("Authorization", "Bearer your_api_key_here")
.GET()
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer your_api_key_here");
var response = await client.GetAsync("https://app.rybbit.io/api/sites/1/performance/overview?start_date=2024-01-01&end_date=2024-01-31");
var data = await response.Content.ReadAsStringAsync();{
"data": {
"lcp_p50": 1850,
"lcp_p75": 2400,
"lcp_p90": 3200,
"lcp_p99": 5100,
"lcp_count": 48210,
"lcp_good": 36150,
"lcp_poor": 4320,
"cls_p50": 0.05,
"cls_p75": 0.1,
"cls_p90": 0.18,
"cls_p99": 0.35,
"inp_p50": 120,
"inp_p75": 180,
"inp_p90": 280,
"inp_p99": 450,
"fcp_p50": 1200,
"fcp_p75": 1600,
"fcp_p90": 2100,
"fcp_p99": 3500,
"ttfb_p50": 450,
"ttfb_p75": 650,
"ttfb_p90": 950,
"ttfb_p99": 1800,
"cls_count": 47980,
"cls_good": 39870,
"cls_poor": 2110,
"inp_count": 21450,
"inp_good": 18900,
"inp_poor": 640,
"fcp_count": 48300,
"fcp_good": 41200,
"fcp_poor": 1980,
"ttfb_count": 48500,
"ttfb_good": 42100,
"ttfb_poor": 1730,
"total_performance_events": 48521
}
}Delete SegmentDELETE
Deletes a saved segment. Editors and above can delete any segment on the site; members can delete segments they created. Links that already expanded the segment's filters keep working.
Get Performance Time SeriesGET
Returns performance metrics over time, broken down by configurable time buckets. Useful for charting performance trends.