- Aggregated: get the p99, sum, standard deviation or whatever you like from DNS times for API checks, or First Content ful Paint (FCP) score for Browser checks.
- Non-aggregated: Get the raw data points so you can aggregate yourself how you want it.
quickRange to select time window presets like last30Days or lastMonth, and group results
per location or per pageIndex. For aggregated queries you can set the aggregationInterval to get, for instance, data
aggregated per week over the last 30 days.
Dive straight into the API reference at developers.checklyhq.com
or keep reading for more examples!
Analytics API basics
There are three main endpoints.| Endpoint | Description | API Reference |
|---|---|---|
/v1/analytics/metrics/ | Returns all the available metrics for a specific check-type (API, URL, TCP or BROWSER) | Learn more |
/v1/analytics/browser-checks/{checkId} | Returns metrics for Browser checks | Learn more |
/v1/analytics/api-checks/{checkId} | Returns metrics for API checks | Learn more |
/v1/analytics/url-monitors/{checkId} | Returns metrics for URL monitors | Learn more |
/v1/analytics/tcp-checks/{checkId} | Returns metrics for TCP monitors | Learn more |
series and a metadata section where you’ll have additional information about the metrics to create rich reports.
The example below is from a Browser check that visits three pages in a typical e-commerce flow
/login/cart/cart/add
curl command like:
metrics=TTFB_avg,TTFB_p99: return average and p99 aggregate of the TTFB (Time to First Byte)groupBy=pageIndex: group by page index, i.e. the pages visited int the Browser check.quickRange=last7Days: aggregate over the last 7 days.
Using the API with Postman
Here you will see an example of a request using Postman where the/v1/analytics/browser-check endpoint returns aggregated
data (TTFB_p50 and TTFB_p90) for the last 7 days grouping by page.

You must add theX-Checkly-AccountandAuthorizationheaders to authenticate.
Creating a Grafana Dashboard
Following these instructions you’ll learn how to use the Analytics API within a Grafana dashboard:- Creating the Data Source

- Configuring a component
Checkly Analytics API data source and
setting the required HTTP header and query parameters to fetch the JSON. You’ll find detailed docs on available parameters in the API docs
In the following image you’ll see all required configuration for a component:
FieldsPathQuery parametersHeaderVariables(optional)

- Designing the dashboard
- aggregated
- non-aggregated
- and summarized grouped by location.

Creating reports with Google Sheets
You can start creating your reports by using our public Google Sheets report example template. The spreadsheet includes the=ChecklyAPI() function to consume the Checkly Public API just entering configuring your credentials.
- Make a copy of our public Google Sheets template.
- Add your
Account IdandAPI Keyin the Apps Script code (be careful if you’ll share your spreadsheet with your credentials)

- Navigate the
MetricsandCheckspages to confirmCheckly Public APIrequests are working - Go to the
Analytics Reportpage, pick a check, pick a metric and see if the chart shows the correct information

Creating report using curl and jq
You can even whip up a bash script and use curl and jq to print useful analytics to your terminal. Here is an example
script that does the following:
- It fetches your checks from the
/v1/checksendpoint. - Loops over your checks and based on the check type, calls the
v1/analytics/<checkType>endpoint to gather useful data.
analytics.sh and run it. You will get an output similar to:
