curl --request GET \
--url https://www.closient.com/analytics/api/v1/exports/overview \
--header 'X-API-Key: <api-key>'import requests
url = "https://www.closient.com/analytics/api/v1/exports/overview"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://www.closient.com/analytics/api/v1/exports/overview', 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://www.closient.com/analytics/api/v1/exports/overview",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <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://www.closient.com/analytics/api/v1/exports/overview"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<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://www.closient.com/analytics/api/v1/exports/overview")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.closient.com/analytics/api/v1/exports/overview")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"conversion": {
"label": "of resolves",
"rate_pct": 25.9
},
"countries": [
{
"code": "US",
"count": 1100
}
],
"country_count": 4,
"days": 30,
"page_visits": {
"delta_pct": 7.6,
"previous_total": 290,
"total": 312
},
"period": {
"end": "2026-09-07T00:00:00Z",
"start": "2026-08-08T00:00:00Z"
},
"resolves": {
"delta_pct": 22.9,
"previous_total": 980,
"total": 1204
},
"top_gtins": [
{
"gtin": "00000000000017",
"name": "Cereal",
"resolves": 340
}
]
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}Period summary for BI integration
The same period-summary payload the Exports tab’s PDF report renders, as JSON: resolves / page-visit totals with period-over-period deltas, conversion rate, top GTINs, and country breakdown. Caller must be a member of organization_id (or hold an API key scoped to it) or a 404 is returned.
curl --request GET \
--url https://www.closient.com/analytics/api/v1/exports/overview \
--header 'X-API-Key: <api-key>'import requests
url = "https://www.closient.com/analytics/api/v1/exports/overview"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://www.closient.com/analytics/api/v1/exports/overview', 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://www.closient.com/analytics/api/v1/exports/overview",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <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://www.closient.com/analytics/api/v1/exports/overview"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<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://www.closient.com/analytics/api/v1/exports/overview")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.closient.com/analytics/api/v1/exports/overview")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"conversion": {
"label": "of resolves",
"rate_pct": 25.9
},
"countries": [
{
"code": "US",
"count": 1100
}
],
"country_count": 4,
"days": 30,
"page_visits": {
"delta_pct": 7.6,
"previous_total": 290,
"total": 312
},
"period": {
"end": "2026-09-07T00:00:00Z",
"start": "2026-08-08T00:00:00Z"
},
"resolves": {
"delta_pct": 22.9,
"previous_total": 980,
"total": 1204
},
"top_gtins": [
{
"gtin": "00000000000017",
"name": "Cereal",
"resolves": 340
}
]
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}Authorizations
Query Parameters
UUID of the organization to query (caller must be a member).
22^[23456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{22}$Window size in days, ending now. Clamped server-side to the organization's actual raw-event retention — the response may cover a shorter window than requested.
1 <= x <= 365Response
OK
Period summary — the same payload the Overview tab and PDF export render.
Backs GET /exports/overview, the JSON counterpart to the Exports
tab's PDF download, for customers integrating with their own BI tools.
Window size in days actually used (the requested value, clamped if needed).
Window covered by this summary.
Show child attributes
Show child attributes
{
"end": "2026-07-08T00:00:00Z",
"start": "2026-07-01T00:00:00Z"
}
Total resolves this period vs. the previous period.
Show child attributes
Show child attributes
{
"delta_pct": 22.9,
"previous_total": 980,
"total": 1204
}
Total page visits this period vs. the previous period.
Show child attributes
Show child attributes
{
"delta_pct": 22.9,
"previous_total": 980,
"total": 1204
}
Resolve-to-visit conversion rate.
Show child attributes
Show child attributes
{ "label": "of resolves", "rate_pct": 25.9 }
Top 5 GTINs by resolve volume.
Show child attributes
Show child attributes
Resolve counts by country, descending.
Show child attributes
Show child attributes
Number of distinct countries with at least one resolve.
x >= 0