curl --request GET \
--url https://api.snowseo.com/v3/integrations/snow-analytics/chart \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.snowseo.com/v3/integrations/snow-analytics/chart"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.snowseo.com/v3/integrations/snow-analytics/chart', 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.snowseo.com/v3/integrations/snow-analytics/chart",
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: Bearer <token>"
],
]);
$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.snowseo.com/v3/integrations/snow-analytics/chart"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.snowseo.com/v3/integrations/snow-analytics/chart")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.snowseo.com/v3/integrations/snow-analytics/chart")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"chartData": [
{
"date": "<string>",
"users": 123,
"pageviews": 123,
"sessions": 123,
"bounceRate": 123
}
],
"totals": {
"users": 123,
"sessions": 123,
"pageviews": 123,
"bounceRate": 123,
"avgDuration": 123
},
"incompleteFrom": "<string>"
}Analytics (SnowAnalytics)
Pull your website visitor data from SnowAnalytics - users, pageviews, sessions, sources, and devices.
curl --request GET \
--url https://api.snowseo.com/v3/integrations/snow-analytics/chart \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.snowseo.com/v3/integrations/snow-analytics/chart"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.snowseo.com/v3/integrations/snow-analytics/chart', 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.snowseo.com/v3/integrations/snow-analytics/chart",
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: Bearer <token>"
],
]);
$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.snowseo.com/v3/integrations/snow-analytics/chart"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.snowseo.com/v3/integrations/snow-analytics/chart")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.snowseo.com/v3/integrations/snow-analytics/chart")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"chartData": [
{
"date": "<string>",
"users": 123,
"pageviews": 123,
"sessions": 123,
"bounceRate": 123
}
],
"totals": {
"users": 123,
"sessions": 123,
"pageviews": 123,
"bounceRate": 123,
"avgDuration": 123
},
"incompleteFrom": "<string>"
}403.
Pass startDate and endDate or days; see Date Windows.
Filters Parameter
Thefilters query parameter accepts URL-encoded JSON: an object keyed by dimension, each with a list of selected values. Dimensions: page, referrer, channel, campaign, deviceCategory, browser, os. Invalid JSON, an unknown dimension, or a value that is not a list returns 400 with code INVALID_FILTERS naming the supported dimensions.
filters={"channel":["Organic Search"],"browser":["Chrome"]}
channel and referrer share one filter. A list with more than one value, or channel and referrer together, returns 400 with code INVALID_FILTERS.
Call GET /v3/integrations/snow-analytics/filter-values for the available dimension values.
Traffic Chart
GET /v3/integrations/snow-analytics/chart
Get daily visitor, pageview, session, and bounce-rate data for the selected date range. The response also carries totals for the whole range, where visitors are counted once across the period rather than once per day. incompleteFrom is today in the site’s time zone; days from it onward are still being collected.Authorizations
Your SnowSEO API key (sk_...).
Query Parameters
Team ID
Days back from today on the team's calendar, converted to startDate/endDate. Ignored when startDate or endDate is set. Defaults to 30.
x >= 1Start date (YYYY-MM-DD)
End date (YYYY-MM-DD)
Country filter
A JSON object, sent as a string, mapping a dimension to the values to keep, e.g. {"page":["/blog/my-post"],"deviceCategory":["mobile"]}. Dimensions: page, referrer, channel, campaign, deviceCategory, browser, os. Several values for one dimension match any of them; several dimensions must all match. Use values the provider's filter_values tool returns for that dimension; page values are paths without query string or trailing slash. Filter by country with country. Invalid JSON, an unknown dimension or a non-list value returns 400 (code INVALID_FILTERS) naming the supported dimensions.
Was this page helpful?

