# Fetch viewer analytics data for the most viewed VOD streams (Available from version 1.11) This operation returns viewer data for the top 100 VOD streams in an account. Querying data To get viewer data for the top 100 streams that ran previously, send from and to values. If you do not send from and to values, the last five minutes' worth of VOD stream viewer data is returned. If the time range between from and to query parameters is: Less than 60 minutes, the cache time between responses is 10 seconds. More than 60 minutes, the cache time between responses is 60 seconds. Endpoint: GET /analytics/viewers/vod_streams Version: v2.0 ## Query parameters: - `from` (string) Use this parameter, along with to, to return historic viewer data. The start of the range of time you want to view. Specify YYYY-DD-MMT HH:MM:SSZ where HH is a 24-hour clock in UTC. The range queried is rounded to the nearest second. If you set the from query parameter without setting the to query parameter, the data returned will reflect 30 days starting at the from date, or data up to to the current day, whichever is shorter. Example: 2023-01-14T10:31:54.486Z - `to` (string) Use this parameter, along with from, to return historic viewer data. The end of the range of time you want to view. Specify YYYY-DD-MMT HH:MM:SSZ where HH is a 24-hour clock in UTC. The range queried is rounded to the nearest second. If you set the to query parameter without setting the from query parameter, the data returned will be from the past 30 days or from your last invoice date, whichever is shorter. Example: 2023-02-14T10:31:54.486Z ## Response 200 fields (application/json): - `vod_streams` (array, required) Example: [{"id":"4Jjzstdt","viewers":3},{"id":"fFWxVsyj","viewers":4}] - `vod_streams.id` (string) The unique alphanumeric string that identifies the VOD stream. Example: "4Jjzstdt" - `vod_streams.viewers` (integer) The total number of unique viewers to download at least one chunk of the stream. A unique viewer is a single IP address; multiple users that share the same IP address are counted once. Example: 3 - `limits` (object) The time frame represented in the response. Example: {"from":"2023-04-14T10:31:54.000Z","to":"2023-07-13T10:31:54.000Z"} - `limits.from` (string) The start of the range of time represented in the response. Example: "2023-04-14T10:31:54.000Z" - `limits.to` (string) The end of the range of time represented in the response. Example: "2023-07-13T10:31:54.000Z" ## Response 401 fields (application/json): - `meta` (object, required) - `meta.status` (integer) - `meta.code` (string) - `meta.title` (string) - `meta.message` (string) - `meta.description` (string) - `meta.links` (array) ## Response 403 fields (application/json): - `meta` (object, required) - `meta.status` (integer) - `meta.code` (string) - `meta.title` (string) - `meta.message` (string) - `meta.description` (string) - `meta.links` (array) ## Response 404 fields (application/json): - `meta` (object, required) - `meta.status` (integer) - `meta.code` (string) - `meta.title` (string) - `meta.message` (string) - `meta.description` (string) - `meta.links` (array) ## Response 410 fields (application/json): - `meta` (object, required) - `meta.status` (integer) - `meta.code` (string) - `meta.title` (string) - `meta.message` (string) - `meta.description` (string) - `meta.links` (array) ## Response 422 fields (application/json): - `meta` (object, required) - `meta.status` (integer) - `meta.code` (string) - `meta.title` (string) - `meta.message` (string) - `meta.description` (string) - `meta.links` (array)