Sign up for free

Analytics

Retrieve aggregated metrics

Retrieve time-based and countable metrics like average watch time or the number of impressions over a certain period of time.

get /data/metrics/{metric}/{aggregation}
from string

Use this query parameter to define the starting date-time of the period you want analytics for.

  • If you do not set a value for from, the default assigned value is 1 day ago, based on the to parameter.
  • The maximum value is 30 days ago.
  • The value you provide should follow the ATOM date-time format: 2024-02-05T00:00:00+01:00
  • The API ignores this parameter when you call /data/metrics/play/total.
Format
date-time
Example
"2024-02-05T00:00:00+01:00"
to string

Use this query parameter to define the ending date-time of the period you want analytics for.

  • If you do not set a value for to, the default assigned value is now.
  • The API ignores this parameter when you call /data/metrics/play/total.
  • The value for to is a non-inclusive value: the API returns data before the date-time that you set.
Format
date-time
Example
"2024-02-06T00:00:00+01:00"
filterBy string

Use this parameter to filter the API's response based on different data dimensions. You can serialize filters in your query to receive more detailed breakdowns of your analytics.

  • If you do not set a value for filterBy, the API returns the full dataset for your project.
  • The API only accepts the mediaId and mediaType filters when you call /data/metrics/play/total.

These are the available breakdown dimensions:

  • mediaId: Returns analytics based on the unique identifiers of a video or a live stream.
  • mediaType: Returns analytics based on the type of content. Possible values: video and live-stream.
  • continent: Returns analytics based on the viewers' continent. The list of supported continents names are based on the GeoNames public database. Possible values are: AS, AF, NA, SA, AN, EU, AZ.
  • country: Returns analytics based on the viewers' country. The list of supported country names are based on the GeoNames public database.
  • deviceType: Returns analytics based on the type of device used by the viewers. Possible response values are: computer, phone, tablet, tv, console, wearable, unknown.
  • operatingSystem: Returns analytics based on the operating system used by the viewers. Response values include windows, mac osx, android, ios, linux.
  • browser: Returns analytics based on the browser used by the viewers. Response values include chrome, firefox, edge, opera.
Example
"filterBy[continent]=EU&filterBy[country]=FR&filterBy[browser]=Safari&filterBy[browser]=Firefox"

Responses

ExamplesSchema

Success

{
  "context": {
    "metric": "impression",
    "aggregation": "count",
    "timeframe": {
      "from": "2024-05-28T11:15:07+00:00",
      "to": "2024-05-29T11:15:07+00:00"
    }
  },
  "data": 346.5
}

Retrieve metrics in a breakdown of dimensions

Retrieve detailed analytics play-rate and number of impressions segmented by dimensions like country or device type.

get /data/buckets/{metric}/{breakdown}
from string

Use this query parameter to define the starting date-time of the period you want analytics for.

  • If you do not set a value for from, the default assigned value is 1 day ago, based on the to parameter.
  • The maximum value is 30 days ago.
  • The value you provide should follow the ATOM date-time format: 2024-02-05T00:00:00+01:00
Format
date-time
Example
"2024-02-05T00:00:00+01:00"
to string

Use this query parameter to define the ending date-time of the period you want analytics for.

  • If you do not set a value for to, the default assigned value is now.
  • The value for to is a non-inclusive value: the API returns data before the date-time that you set.
Format
date-time
Example
"2024-02-06T00:00:00+01:00"
filterBy string

Use this parameter to filter the API's response based on different data dimensions. You can serialize filters in your query to receive more detailed breakdowns of your analytics. You must use camelCase for query parameters.

  • If you do not set a value for filterBy, the API returns the full dataset for your project.

These are the available breakdown dimensions:

  • mediaId: Returns analytics based on the unique identifiers of a video or a live stream.
  • mediaType: Returns analytics based on the type of content. Possible values: video and live-stream.
  • continent: Returns analytics based on the viewers' continent. The list of supported continents names are based on the GeoNames public database. Possible values are: AS, AF, NA, SA, AN, EU, AZ.
  • country: Returns analytics based on the viewers' country. The list of supported country names are based on the GeoNames public database.
  • deviceType: Returns analytics based on the type of device used by the viewers. Possible response values are: computer, phone, tablet, tv, console, wearable, unknown.
  • operatingSystem: Returns analytics based on the operating system used by the viewers. Response values include windows, mac osx, android, ios, linux.
  • browser: Returns analytics based on the browser used by the viewers. Response values include chrome, firefox, edge, opera.
Example
"filterBy[continent]=EU&filterBy[country]=FR&filterBy[browser]=Safari&filterBy[browser]=Firefox"

Responses

ExamplesSchema

Success

{
  "context": {
    "metric": "play",
    "breakdown": "country",
    "timeframe": {
      "from": "2024-04-28T07:15:05+00:00",
      "to": "2024-05-29T11:25:37+00:00"
    }
  },
  "data": [
    {
      "metricValue": 7,
      "dimensionValue": "FR"
    }
  ],
  "pagination": {
    "currentPage": 1,
    "currentPageItems": 1,
    "pageSize": 25,
    "pagesTotal": 1,
    "itemsTotal": 1,
    "links": [
      {
        "rel": "self",
        "uri": "/data/buckets/play/country?from=2024-04-28T09%3A15%3A05%2B02%3A00&currentPage=1&pageSize=25"
      },
      {
        "rel": "first",
        "uri": "/data/buckets/play/country?from=2024-04-28T09%3A15%3A05%2B02%3A00&currentPage=1&pageSize=25"
      },
      {
        "rel": "last",
        "uri": "/data/buckets/play/country?from=2024-04-28T09%3A15%3A05%2B02%3A00&currentPage=1&pageSize=25"
      }
    ]
  }
}

Retrieve metrics over time

Retrieve countable metrics like the number of plays or impressions, grouped by the time at which they occurred

get /data/timeseries/{metric}
from string

Use this query parameter to define the starting date-time of the period you want analytics for.

  • If you do not set a value for from, the default assigned value is 1 day ago, based on the to parameter.
  • The maximum value is 30 days ago.
  • The value you provide should follow the ATOM date-time format: 2024-02-05T00:00:00+01:00
Format
date-time
Example
"from=2024-02-05T00:00:00+01:00"
to string

Use this query parameter to define the ending date-time of the period you want analytics for.

  • If you do not set a value for to, the default assigned value is now.
  • The value for to is a non-inclusive value: the API returns data before the date-time that you set.
Format
date-time
Example
"to=2024-02-06T00:00:00+01:00"
interval string

Use this query parameter to define how granularity of the data. Possible values: hour, day.

  • Default: If no interval specified and the period (different between from and to) โ‰ค 2 days then hour, otherwise day.

  • If you do not set a value for interval, and the period you set using the from and to parameters is less than or equals to 2 days, then the default assigned value is hour. Otherwise the API sets it to day.

Format
date-time
Example
"to=2024-02-06T00:00:00+01:00"
filterBy string

Use this parameter to filter the API's response based on different data dimensions. You can serialize filters in your query to receive more detailed breakdowns of your analytics. You must use camelCase for query parameters.

  • If you do not set a value for filterBy, the API returns the full dataset for your project.

These are the available breakdown dimensions:

  • mediaId: Returns analytics based on the unique identifiers of a video or a live stream.
  • mediaType: Returns analytics based on the type of content. Possible values: video and live-stream.
  • continent: Returns analytics based on the viewers' continent. The list of supported continents names are based on the GeoNames public database. Possible values are: AS, AF, NA, SA, AN, EU, AZ.
  • country: Returns analytics based on the viewers' country. The list of supported country names are based on the GeoNames public database.
  • deviceType: Returns analytics based on the type of device used by the viewers. Possible response values are: computer, phone, tablet, tv, console, wearable, unknown.
  • operatingSystem: Returns analytics based on the operating system used by the viewers. Response values include windows, mac osx, android, ios, linux.
  • browser: Returns analytics based on the browser used by the viewers. Response values include chrome, firefox, edge, opera.
Example
"filterBy[continent]=EU&filterBy[country]=FR&filterBy[browser]=Safari&filterBy[browser]=Firefox"

Responses

ExamplesSchema

Success

{
  "context": {
    "metric": "play",
    "interval": "hour",
    "timeframe": {
      "from": "2024-05-28T11:08:39+00:00",
      "to": "2024-05-29T11:08:39+00:00"
    }
  },
  "data": [
    {
      "emittedAt": "2024-05-29T07:00:00+00:00",
      "metricValue": 2
    },
    {
      "emittedAt": "2024-05-29T08:00:00+00:00",
      "metricValue": 1
    },
    {
      "emittedAt": "2024-05-29T09:00:00+00:00",
      "metricValue": 1
    }
  ],
  "pagination": {
    "currentPage": 1,
    "currentPageItems": 3,
    "pageSize": 25,
    "pagesTotal": 1,
    "itemsTotal": 3,
    "links": [
      {
        "rel": "self",
        "uri": "/data/timeseries/play?currentPage=1&pageSize=25"
      },
      {
        "rel": "first",
        "uri": "/data/timeseries/play?currentPage=1&pageSize=25"
      },
      {
        "rel": "last",
        "uri": "/data/timeseries/play?currentPage=1&pageSize=25"
      }
    ]
  }
}

Was this page helpful?