import os
from gcore import Gcore
client = Gcore(
api_key=os.environ.get("GCORE_API_KEY"), # This is the default and can be omitted
)
unique_viewers = client.streaming.statistics.get_unique_viewers(
date_from="date_from",
date_to="date_to",
)
print(unique_viewers.data)package main
import (
"context"
"fmt"
"github.com/G-Core/gcore-go"
"github.com/G-Core/gcore-go/option"
"github.com/G-Core/gcore-go/streaming"
)
func main() {
client := gcore.NewClient(
option.WithAPIKey("My API Key"),
)
uniqueViewers, err := client.Streaming.Statistics.GetUniqueViewers(context.TODO(), streaming.StatisticGetUniqueViewersParams{
DateFrom: "date_from",
DateTo: "date_to",
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", uniqueViewers.Data)
}
curl --request GET \
--url https://api.gcore.com/streaming/statistics/uniqs \
--header 'Authorization: <api-key>'const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.gcore.com/streaming/statistics/uniqs', 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.gcore.com/streaming/statistics/uniqs",
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;
}HttpResponse<String> response = Unirest.get("https://api.gcore.com/streaming/statistics/uniqs")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/streaming/statistics/uniqs")
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{
"data": [
{
"unique_ips": 100,
"date": "2022-10-15",
"type": "vod"
},
{
"unique_ips": 300,
"date": "2022-10-15",
"type": "live"
}
]
}{
"data": [],
"errors": [
"from: query param is not set"
]
}{
"data": [],
"errors": [
"internal server error"
]
}Get unique viewers in built-in player
Get the number of unique viewers in the built-in player.
Counts the number of unique IPs.
Allows flexible grouping and filtering. The fields in the response depend on the selected grouping.
Note. This method operates only on data collected by the built-in HTML player. It will not show statistics if you are using another player or viewing in native OS players through direct .m3u8/.mpd/.mp4 links. For such cases, use calculations through CDN (look at method /statistics/cdn/uniqs) or statistics of the players you have chosen.
import os
from gcore import Gcore
client = Gcore(
api_key=os.environ.get("GCORE_API_KEY"), # This is the default and can be omitted
)
unique_viewers = client.streaming.statistics.get_unique_viewers(
date_from="date_from",
date_to="date_to",
)
print(unique_viewers.data)package main
import (
"context"
"fmt"
"github.com/G-Core/gcore-go"
"github.com/G-Core/gcore-go/option"
"github.com/G-Core/gcore-go/streaming"
)
func main() {
client := gcore.NewClient(
option.WithAPIKey("My API Key"),
)
uniqueViewers, err := client.Streaming.Statistics.GetUniqueViewers(context.TODO(), streaming.StatisticGetUniqueViewersParams{
DateFrom: "date_from",
DateTo: "date_to",
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", uniqueViewers.Data)
}
curl --request GET \
--url https://api.gcore.com/streaming/statistics/uniqs \
--header 'Authorization: <api-key>'const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.gcore.com/streaming/statistics/uniqs', 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.gcore.com/streaming/statistics/uniqs",
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;
}HttpResponse<String> response = Unirest.get("https://api.gcore.com/streaming/statistics/uniqs")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/streaming/statistics/uniqs")
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{
"data": [
{
"unique_ips": 100,
"date": "2022-10-15",
"type": "vod"
},
{
"unique_ips": 300,
"date": "2022-10-15",
"type": "live"
}
]
}{
"data": [],
"errors": [
"from: query param is not set"
]
}{
"data": [],
"errors": [
"internal server error"
]
}Authorizations
API key for authentication. Make sure to include the word apikey, followed by a single space and then your token.
Example: apikey 1234_abcdef
Query Parameters
Start of time frame. Datetime in ISO 8601 format.
End of time frame. Datetime in ISO 8601 format.
filter by entity's type
live, vod, playlist filter by entity's id
filter by event's name
init, start, watch filter by host
filter by country
group=1,2,4 OR group=1&group=2&group=3
date, host, os, browser, platform, ip, country, event, id Response
OK
Show child attributes
Show child attributes
Was this page helpful?