diff --git a/CHANGELOG.md b/CHANGELOG.md
index f905665..1a5db85 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,9 @@
# Changelog
All changes to this project will be documented in this file.
+## [1.4.1] - 2024-09-05
+- Add sort parameters in analytics endpoints
+
## [1.4.0] - 2024-07-29
- Add new analytics methods
- Add livestream complete() method
diff --git a/README.md b/README.md
index 6fc94cc..9bf7b5c 100644
--- a/README.md
+++ b/README.md
@@ -68,7 +68,7 @@ Add this dependency to your project's POM:
video.api
java-api-client
- 1.4.0
+ 1.4.1
compile
```
@@ -78,7 +78,7 @@ Add this dependency to your project's POM:
Add this dependency to your project's build file:
```groovy
-implementation "video.api:java-api-client:1.4.0"
+implementation "video.api:java-api-client:1.4.1"
```
#### Others
@@ -91,7 +91,7 @@ mvn clean package
Then manually install the following JARs:
-* `target/java-api-client-1.4.0.jar`
+* `target/java-api-client-1.4.1.jar`
* `target/lib/*.jar`
### Code sample
diff --git a/api/openapi.yaml b/api/openapi.yaml
index 117fa4c..c819591 100644
--- a/api/openapi.yaml
+++ b/api/openapi.yaml
@@ -11324,30 +11324,29 @@ paths:
\ detailed breakdowns of your analytics.\n\n- If you do not set a value\
\ for `filterBy`, the API returns the full dataset for your project.\n-\
\ The API only accepts the `mediaId` and `mediaType` filters when you call\
- \ `/data/metrics/play/total`.\n\nThese are the available breakdown dimensions:\n\
- \n- `mediaId`: Returns analytics based on the unique identifiers of a video\
- \ or a live stream.\n- `mediaType`: Returns analytics based on the type\
- \ of content. Possible values: `video` and `live-stream`. \n- `continent`:\
- \ Returns analytics based on the viewers' continent. The list of supported\
- \ continents names are based on the [GeoNames public database](https://www.geonames.org/countries/).\
- \ You must use the ISO-3166 alpha2 format, for example `EU`. Possible values\
- \ are: `AS`, `AF`, `NA`, `SA`, `AN`, `EU`, `AZ`. \n- `country`: Returns\
- \ analytics based on the viewers' country. The list of supported country\
- \ names are based on the [GeoNames public database](https://www.geonames.org/countries/).\
- \ You must use the ISO-3166 alpha2 format, for example `FR`.\n- `deviceType`:\
- \ Returns analytics based on the type of device used by the viewers. Possible\
- \ response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`,\
+ \ `/data/metrics/play/total` or `/data/buckets/play-total/media-id`.\n\n\
+ These are the available breakdown dimensions:\n\n- `mediaId`: Returns analytics\
+ \ based on the unique identifiers of a video or a live stream.\n- `mediaType`:\
+ \ Returns analytics based on the type of content. Possible values: `video`\
+ \ and `live-stream`. \n- `continent`: Returns analytics based on the viewers'\
+ \ continent. The list of supported continents names are based on the [GeoNames\
+ \ public database](https://www.geonames.org/countries/). You must use the\
+ \ ISO-3166 alpha2 format, for example `EU`. Possible values are: `AS`, `AF`,\
+ \ `NA`, `SA`, `AN`, `EU`, `AZ`. \n- `country`: Returns analytics based on\
+ \ the viewers' country. The list of supported country names are based on\
+ \ the [GeoNames public database](https://www.geonames.org/countries/). You\
+ \ must use the ISO-3166 alpha2 format, for example `FR`.\n- `deviceType`:\
+ \ Returns analytics based on the type of device used by the viewers. Response\
+ \ values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`,\
\ `unknown`.\n- `operatingSystem`: Returns analytics based on the operating\
- \ system used by the viewers. Response values include `windows`, `mac osx`,\
- \ `android`, `ios`, `linux`.\n- `browser`: Returns analytics based on the\
- \ browser used by the viewers. Response values include `chrome`, `firefox`,\
- \ `edge`, `opera`.\n- `tag`: Returns analytics for videos using this tag.\
- \ This filter only accepts a single value and is case sensitive. Read more\
- \ about tagging your videos [here](https://docs.api.video/vod/tags-metadata).\n"
- example:
- mediaType: video
- continent: EU
- country: FR
+ \ system used by the viewers. Response values can include `windows`, `mac\
+ \ osx`, `android`, `ios`, `linux`.\n- `browser`: Returns analytics based\
+ \ on the browser used by the viewers. Response values can include `chrome`,\
+ \ `firefox`, `edge`, `opera`.\n- `tag`: Returns analytics for videos using\
+ \ this tag. This filter only accepts a single value and is case sensitive.\
+ \ Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata).\n"
+ example: filterBy[country]=FR&filterBy[operatingSystem]=windows&filterBy[browser][]=firefox&filterBy[browser][]=chrome&filterBy[tag]=Cool
+ videos
explode: true
in: query
name: filterBy
@@ -11357,8 +11356,11 @@ paths:
mediaId:
description: Returns analytics based on the unique identifiers of a
video or a live stream.
- example: vi4blUQJFrYWbaG44NChkH27
- type: string
+ example:
+ - vi4blUQJFrYWbaG44NChkH27
+ items:
+ type: string
+ type: array
mediaType:
enum:
- video
@@ -11370,39 +11372,54 @@ paths:
list of supported continents names are based on the [GeoNames public
database](https://www.geonames.org/countries/). You must use the ISO-3166
alpha2 format, for example `EU`.
- enum:
- - AS
- - AF
- - NA
- - SA
- - AN
+ example:
- EU
- - AZ
- example: EU
- type: string
+ items:
+ enum:
+ - AS
+ - AF
+ - NA
+ - SA
+ - AN
+ - EU
+ - AZ
+ type: string
+ type: array
country:
description: Returns analytics based on the viewers' country. The list
of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/).
You must use the ISO-3166 alpha2 format, for example `FR`.
- example: FR
- type: string
+ example:
+ - FR
+ items:
+ type: string
+ type: array
deviceType:
description: 'Returns analytics based on the type of device used by
- the viewers. Possible response values are: `computer`, `phone`, `tablet`,
+ the viewers. Response values can include: `computer`, `phone`, `tablet`,
`tv`, `console`, `wearable`, `unknown`.'
- example: computer
- type: string
+ example:
+ - computer
+ items:
+ type: string
+ type: array
operatingSystem:
description: Returns analytics based on the operating system used by
- the viewers. Response values include `windows`, `mac osx`, `android`,
+ the viewers. Response values can include `windows`, `mac osx`, `android`,
`ios`, `linux`.
- example: windows
- type: string
+ example:
+ - windows
+ items:
+ type: string
+ type: array
browser:
description: Returns analytics based on the browser used by the viewers.
- Response values include `chrome`, `firefox`, `edge`, `opera`.
- example: firefox
- type: string
+ Response values can include `chrome`, `firefox`, `edge`, `opera`.
+ example:
+ - firefox
+ items:
+ type: string
+ type: array
tag:
description: Returns analytics for videos using this tag. This filter
only accepts a single value and is case sensitive. Read more about
@@ -11410,7 +11427,9 @@ paths:
example: Cool videos
type: string
type: object
+ x-is-deep-object: true
style: deepObject
+ x-is-deep-object: true
responses:
"200":
content:
@@ -11570,7 +11589,70 @@ paths:
- Analytics
x-client-action: getAggregatedMetrics
x-group-parameters: true
- x-doctave: {}
+ x-doctave:
+ code-samples:
+ - language: java
+ code: |
+ FilterBy2 filterBy = new FilterBy2();
+
+ filterBy.setBrowser(Collections.singletonList("Chrome"));
+ filterBy.setContinent(Arrays.asList(FilterBy2.ContinentEnum.NA, FilterBy2.ContinentEnum.EU));
+ filterBy.setMediaType(FilterBy2.MediaTypeEnum.VIDEO);
+ filterBy.setTag("test");
+
+
+ AnalyticsAggregatedMetricsResponse res = apiClient.analytics().getAggregatedMetrics("play", "total").filterBy(filterBy).execute();
+ System.out.println(res.getData());
+ - language: node
+ code: |
+ const res = await client.analytics.getAggregatedMetrics({
+ aggregation: 'total',
+ metric: 'play',
+ filterBy: {
+ browser: ['chrome', 'firefox'],
+ continent: ['EU', 'AF'],
+ tag: 'test',
+ },
+ });
+ console.log(res.data);
+ - language: csharp
+ code: |
+ FilterBy2 filterBy = new FilterBy2
+ {
+ continent = new List { "EU", "US" },
+ devicetype = new List { "phone" },
+ tag = "test"
+ };
+ AnalyticsAggregatedMetricsResponse res = apiClient.Analytics()
+ .getAggregatedMetrics("play", "total").From(new DateTime(2024, 7, 1)).FilterBy(filterBy).execute();
+ - language: go
+ code: |
+ res, err := cl.Analytics.GetAggregatedMetrics("play", "day", AnalyticsApiGetAggregatedMetricsRequest{
+ filterBy: &FilterBy2{
+ Continent: &[]string{"EU", "AA"},
+ DeviceType: &[]string{"computer", "phone"},
+ Tag: PtrString("tag"),
+ },
+ })
+ - language: python
+ code: |
+ res = self.api.get_aggregated_metrics(metric='play', aggregation='count', filter_by=FilterBy2(
+ device_type=["computer", "phone"],
+ tag="test",
+ ),
+ )
+ - language: swift
+ code: |
+ AnalyticsAPI.getAggregatedMetrics(
+ metric: .play,
+ aggregation: .total,
+ filterBy: FilterBy2(
+ continent: [.an, .eu],
+ tag: "test"
+ )
+ ) { analytics, error in
+ // ...
+ }
x-accepts: application/json
/data/buckets/{metric}/{breakdown}:
get:
@@ -11613,12 +11695,12 @@ paths:
\ analytics based on the viewers' country. The list of supported country\
\ names are based on the [GeoNames public database](https://www.geonames.org/countries/).\n\
- `device-type`: Returns analytics based on the type of device used by the\
- \ viewers. Possible response values are: `computer`, `phone`, `tablet`,\
- \ `tv`, `console`, `wearable`, `unknown`.\n- `operating-system`: Returns\
- \ analytics based on the operating system used by the viewers. Response\
- \ values include `windows`, `mac osx`, `android`, `ios`, `linux`.\n- `browser`:\
+ \ viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`,\
+ \ `console`, `wearable`, `unknown`.\n- `operating-system`: Returns analytics\
+ \ based on the operating system used by the viewers. Response values can\
+ \ include `windows`, `mac osx`, `android`, `ios`, `linux`.\n- `browser`:\
\ Returns analytics based on the browser used by the viewers. Response values\
- \ include `chrome`, `firefox`, `edge`, `opera`.\n"
+ \ can include `chrome`, `firefox`, `edge`, `opera`.\n"
explode: false
in: path
name: breakdown
@@ -11663,36 +11745,71 @@ paths:
format: date-time
type: string
style: form
+ - description: |
+ Use this parameter to choose which field the API will use to sort the analytics data.
+
+ These are the available fields to sort by:
+
+ - `metricValue`: Sorts the results based on the **metric** you selected in your request.
+ - `dimensionValue`: Sorts the results based on the **dimension** you selected in your request.
+ example: metricValue
+ explode: false
+ in: query
+ name: sortBy
+ required: false
+ schema:
+ enum:
+ - metricValue
+ - dimensionValue
+ type: string
+ style: form
+ - description: |
+ Use this parameter to define the sort order of results.
+
+ These are the available sort orders:
+
+ - `asc`: Sorts the results in ascending order: `A to Z` and `0 to 9`.
+ - `desc`: Sorts the results in descending order: `Z to A` and `9 to 0`.
+ example: asc
+ explode: false
+ in: query
+ name: sortOrder
+ required: false
+ schema:
+ enum:
+ - asc
+ - desc
+ type: string
+ style: form
- $ref: '#/components/parameters/filterBy_2'
description: "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.\n\n- If you do not set a value\
\ for `filterBy`, the API returns the full dataset for your project.\n-\
\ The API only accepts the `mediaId` and `mediaType` filters when you call\
- \ `/data/metrics/play/total`.\n\nThese are the available breakdown dimensions:\n\
- \n- `mediaId`: Returns analytics based on the unique identifiers of a video\
- \ or a live stream.\n- `mediaType`: Returns analytics based on the type\
- \ of content. Possible values: `video` and `live-stream`. \n- `continent`:\
- \ Returns analytics based on the viewers' continent. The list of supported\
- \ continents names are based on the [GeoNames public database](https://www.geonames.org/countries/).\
- \ You must use the ISO-3166 alpha2 format, for example `EU`. Possible values\
- \ are: `AS`, `AF`, `NA`, `SA`, `AN`, `EU`, `AZ`. \n- `country`: Returns\
- \ analytics based on the viewers' country. The list of supported country\
- \ names are based on the [GeoNames public database](https://www.geonames.org/countries/).\
- \ You must use the ISO-3166 alpha2 format, for example `FR`.\n- `deviceType`:\
- \ Returns analytics based on the type of device used by the viewers. Possible\
- \ response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`,\
+ \ `/data/metrics/play/total` or `/data/buckets/play-total/media-id`.\n\n\
+ These are the available breakdown dimensions:\n\n- `mediaId`: Returns analytics\
+ \ based on the unique identifiers of a video or a live stream.\n- `mediaType`:\
+ \ Returns analytics based on the type of content. Possible values: `video`\
+ \ and `live-stream`. \n- `continent`: Returns analytics based on the viewers'\
+ \ continent. The list of supported continents names are based on the [GeoNames\
+ \ public database](https://www.geonames.org/countries/). You must use the\
+ \ ISO-3166 alpha2 format, for example `EU`. Possible values are: `AS`, `AF`,\
+ \ `NA`, `SA`, `AN`, `EU`, `AZ`. \n- `country`: Returns analytics based on\
+ \ the viewers' country. The list of supported country names are based on\
+ \ the [GeoNames public database](https://www.geonames.org/countries/). You\
+ \ must use the ISO-3166 alpha2 format, for example `FR`.\n- `deviceType`:\
+ \ Returns analytics based on the type of device used by the viewers. Response\
+ \ values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`,\
\ `unknown`.\n- `operatingSystem`: Returns analytics based on the operating\
- \ system used by the viewers. Response values include `windows`, `mac osx`,\
- \ `android`, `ios`, `linux`.\n- `browser`: Returns analytics based on the\
- \ browser used by the viewers. Response values include `chrome`, `firefox`,\
- \ `edge`, `opera`.\n- `tag`: Returns analytics for videos using this tag.\
- \ This filter only accepts a single value and is case sensitive. Read more\
- \ about tagging your videos [here](https://docs.api.video/vod/tags-metadata).\n"
- example:
- mediaType: video
- continent: EU
- country: FR
+ \ system used by the viewers. Response values can include `windows`, `mac\
+ \ osx`, `android`, `ios`, `linux`.\n- `browser`: Returns analytics based\
+ \ on the browser used by the viewers. Response values can include `chrome`,\
+ \ `firefox`, `edge`, `opera`.\n- `tag`: Returns analytics for videos using\
+ \ this tag. This filter only accepts a single value and is case sensitive.\
+ \ Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata).\n"
+ example: filterBy[country]=FR&filterBy[operatingSystem]=windows&filterBy[browser][]=firefox&filterBy[browser][]=chrome&filterBy[tag]=Cool
+ videos
explode: true
in: query
name: filterBy
@@ -11702,8 +11819,11 @@ paths:
mediaId:
description: Returns analytics based on the unique identifiers of a
video or a live stream.
- example: vi4blUQJFrYWbaG44NChkH27
- type: string
+ example:
+ - vi4blUQJFrYWbaG44NChkH27
+ items:
+ type: string
+ type: array
mediaType:
enum:
- video
@@ -11715,39 +11835,54 @@ paths:
list of supported continents names are based on the [GeoNames public
database](https://www.geonames.org/countries/). You must use the ISO-3166
alpha2 format, for example `EU`.
- enum:
- - AS
- - AF
- - NA
- - SA
- - AN
+ example:
- EU
- - AZ
- example: EU
- type: string
+ items:
+ enum:
+ - AS
+ - AF
+ - NA
+ - SA
+ - AN
+ - EU
+ - AZ
+ type: string
+ type: array
country:
description: Returns analytics based on the viewers' country. The list
of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/).
You must use the ISO-3166 alpha2 format, for example `FR`.
- example: FR
- type: string
+ example:
+ - FR
+ items:
+ type: string
+ type: array
deviceType:
description: 'Returns analytics based on the type of device used by
- the viewers. Possible response values are: `computer`, `phone`, `tablet`,
+ the viewers. Response values can include: `computer`, `phone`, `tablet`,
`tv`, `console`, `wearable`, `unknown`.'
- example: computer
- type: string
+ example:
+ - computer
+ items:
+ type: string
+ type: array
operatingSystem:
description: Returns analytics based on the operating system used by
- the viewers. Response values include `windows`, `mac osx`, `android`,
+ the viewers. Response values can include `windows`, `mac osx`, `android`,
`ios`, `linux`.
- example: windows
- type: string
+ example:
+ - windows
+ items:
+ type: string
+ type: array
browser:
description: Returns analytics based on the browser used by the viewers.
- Response values include `chrome`, `firefox`, `edge`, `opera`.
- example: firefox
- type: string
+ Response values can include `chrome`, `firefox`, `edge`, `opera`.
+ example:
+ - firefox
+ items:
+ type: string
+ type: array
tag:
description: Returns analytics for videos using this tag. This filter
only accepts a single value and is case sensitive. Read more about
@@ -11755,7 +11890,9 @@ paths:
example: Cool videos
type: string
type: object
+ x-is-deep-object: true
style: deepObject
+ x-is-deep-object: true
- description: 'Choose the number of search results to return per page. Minimum
value: 1'
example: 2
@@ -11952,7 +12089,67 @@ paths:
x-client-action: getMetricsBreakdown
x-group-parameters: true
x-client-paginated: true
- x-doctave: {}
+ x-doctave:
+ code-samples:
+ - language: java
+ code: |
+ FilterBy2 filterBy = new FilterBy2();
+
+ filterBy.setBrowser(Collections.singletonList("Chrome"));
+ filterBy.setContinent(Arrays.asList(FilterBy2.ContinentEnum.NA, FilterBy2.ContinentEnum.EU));
+ filterBy.setMediaType(FilterBy2.MediaTypeEnum.VIDEO);
+ filterBy.setTag("test");
+
+ Page res = apiClient.analytics().getMetricsBreakdown("play", "media-id").filterBy(filterBy).pageSize(30).execute();
+ for (AnalyticsMetricsBreakdownResponseData item : res.getItems()) {
+ System.out.println(item.getDimensionValue() + ": " + item.getMetricValue());
+ }
+ - language: node
+ code: |
+ const res = await client.analytics.getMetricsBreakdown({
+ breakdown: 'continent',
+ metric: 'play',
+ filterBy: {
+ browser: ['chrome', 'firefox'],
+ continent: ['EU', 'AF'],
+ tag: 'test',
+ },
+ });
+ console.log(res.data);
+ - language: csharp
+ code: |
+ FilterBy2 filterBy = new FilterBy2
+ {
+ continent = new List { "EU", "US" },
+ devicetype = new List { "phone" },
+ tag = "test"
+ };
+ Page page = apiClient.Analytics()
+ .getMetricsBreakdown("play", "continent").From(new DateTime(2024, 7, 1)).FilterBy(filterBy).execute();
+ - language: go
+ code: "res, err := cl.Analytics.GetMetricsBreakdown(\"play\", \"continent\"\
+ , AnalyticsApiGetMetricsBreakdownRequest{\n filterBy: &FilterBy2{\n \
+ \ Continent: &[]string{\"EU\", \"AA\"},\n DeviceType: &[]string{\"\
+ computer\", \"phone\"},\n Tag: \tPtrString(\"tag\"),\n },\n})\n"
+ - language: python
+ code: |
+ res = self.api.get_metrics_breakdown(metric='play', breakdown='continent', filter_by=FilterBy2(
+ device_type=["computer", "phone"],
+ tag="test",
+ ),
+ )
+ - language: swift
+ code: |
+ AnalyticsAPI.getMetricsBreakdown(
+ metric: .play,
+ breakdown: .browser,
+ filterBy: FilterBy2(
+ continent: [.an, .eu],
+ tag: "test"
+ )
+ ) { analytics, error in
+ // ...
+ }
x-accepts: application/json
/data/timeseries/{metric}:
get:
@@ -12027,36 +12224,71 @@ paths:
- day
type: string
style: form
+ - description: |
+ Use this parameter to choose which field the API will use to sort the analytics data.
+
+ These are the available fields to sort by:
+
+ - `metricValue`: Sorts the results based on the **metric** you selected in your request.
+ - `emittedAt`: Sorts the results based on the **timestamp** of the event in ATOM date-time format.
+ example: metricValue
+ explode: false
+ in: query
+ name: sortBy
+ required: false
+ schema:
+ enum:
+ - metricValue
+ - emittedAt
+ type: string
+ style: form
+ - description: |
+ Use this parameter to define the sort order of results.
+
+ These are the available sort orders:
+
+ - `asc`: Sorts the results in ascending order: `A to Z` and `0 to 9`.
+ - `desc`: Sorts the results in descending order: `Z to A` and `9 to 0`.
+ example: asc
+ explode: false
+ in: query
+ name: sortOrder
+ required: false
+ schema:
+ enum:
+ - asc
+ - desc
+ type: string
+ style: form
- $ref: '#/components/parameters/filterBy_2'
description: "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.\n\n- If you do not set a value\
\ for `filterBy`, the API returns the full dataset for your project.\n-\
\ The API only accepts the `mediaId` and `mediaType` filters when you call\
- \ `/data/metrics/play/total`.\n\nThese are the available breakdown dimensions:\n\
- \n- `mediaId`: Returns analytics based on the unique identifiers of a video\
- \ or a live stream.\n- `mediaType`: Returns analytics based on the type\
- \ of content. Possible values: `video` and `live-stream`. \n- `continent`:\
- \ Returns analytics based on the viewers' continent. The list of supported\
- \ continents names are based on the [GeoNames public database](https://www.geonames.org/countries/).\
- \ You must use the ISO-3166 alpha2 format, for example `EU`. Possible values\
- \ are: `AS`, `AF`, `NA`, `SA`, `AN`, `EU`, `AZ`. \n- `country`: Returns\
- \ analytics based on the viewers' country. The list of supported country\
- \ names are based on the [GeoNames public database](https://www.geonames.org/countries/).\
- \ You must use the ISO-3166 alpha2 format, for example `FR`.\n- `deviceType`:\
- \ Returns analytics based on the type of device used by the viewers. Possible\
- \ response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`,\
+ \ `/data/metrics/play/total` or `/data/buckets/play-total/media-id`.\n\n\
+ These are the available breakdown dimensions:\n\n- `mediaId`: Returns analytics\
+ \ based on the unique identifiers of a video or a live stream.\n- `mediaType`:\
+ \ Returns analytics based on the type of content. Possible values: `video`\
+ \ and `live-stream`. \n- `continent`: Returns analytics based on the viewers'\
+ \ continent. The list of supported continents names are based on the [GeoNames\
+ \ public database](https://www.geonames.org/countries/). You must use the\
+ \ ISO-3166 alpha2 format, for example `EU`. Possible values are: `AS`, `AF`,\
+ \ `NA`, `SA`, `AN`, `EU`, `AZ`. \n- `country`: Returns analytics based on\
+ \ the viewers' country. The list of supported country names are based on\
+ \ the [GeoNames public database](https://www.geonames.org/countries/). You\
+ \ must use the ISO-3166 alpha2 format, for example `FR`.\n- `deviceType`:\
+ \ Returns analytics based on the type of device used by the viewers. Response\
+ \ values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`,\
\ `unknown`.\n- `operatingSystem`: Returns analytics based on the operating\
- \ system used by the viewers. Response values include `windows`, `mac osx`,\
- \ `android`, `ios`, `linux`.\n- `browser`: Returns analytics based on the\
- \ browser used by the viewers. Response values include `chrome`, `firefox`,\
- \ `edge`, `opera`.\n- `tag`: Returns analytics for videos using this tag.\
- \ This filter only accepts a single value and is case sensitive. Read more\
- \ about tagging your videos [here](https://docs.api.video/vod/tags-metadata).\n"
- example:
- mediaType: video
- continent: EU
- country: FR
+ \ system used by the viewers. Response values can include `windows`, `mac\
+ \ osx`, `android`, `ios`, `linux`.\n- `browser`: Returns analytics based\
+ \ on the browser used by the viewers. Response values can include `chrome`,\
+ \ `firefox`, `edge`, `opera`.\n- `tag`: Returns analytics for videos using\
+ \ this tag. This filter only accepts a single value and is case sensitive.\
+ \ Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata).\n"
+ example: filterBy[country]=FR&filterBy[operatingSystem]=windows&filterBy[browser][]=firefox&filterBy[browser][]=chrome&filterBy[tag]=Cool
+ videos
explode: true
in: query
name: filterBy
@@ -12066,8 +12298,11 @@ paths:
mediaId:
description: Returns analytics based on the unique identifiers of a
video or a live stream.
- example: vi4blUQJFrYWbaG44NChkH27
- type: string
+ example:
+ - vi4blUQJFrYWbaG44NChkH27
+ items:
+ type: string
+ type: array
mediaType:
enum:
- video
@@ -12079,39 +12314,54 @@ paths:
list of supported continents names are based on the [GeoNames public
database](https://www.geonames.org/countries/). You must use the ISO-3166
alpha2 format, for example `EU`.
- enum:
- - AS
- - AF
- - NA
- - SA
- - AN
+ example:
- EU
- - AZ
- example: EU
- type: string
+ items:
+ enum:
+ - AS
+ - AF
+ - NA
+ - SA
+ - AN
+ - EU
+ - AZ
+ type: string
+ type: array
country:
description: Returns analytics based on the viewers' country. The list
of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/).
You must use the ISO-3166 alpha2 format, for example `FR`.
- example: FR
- type: string
+ example:
+ - FR
+ items:
+ type: string
+ type: array
deviceType:
description: 'Returns analytics based on the type of device used by
- the viewers. Possible response values are: `computer`, `phone`, `tablet`,
+ the viewers. Response values can include: `computer`, `phone`, `tablet`,
`tv`, `console`, `wearable`, `unknown`.'
- example: computer
- type: string
+ example:
+ - computer
+ items:
+ type: string
+ type: array
operatingSystem:
description: Returns analytics based on the operating system used by
- the viewers. Response values include `windows`, `mac osx`, `android`,
+ the viewers. Response values can include `windows`, `mac osx`, `android`,
`ios`, `linux`.
- example: windows
- type: string
+ example:
+ - windows
+ items:
+ type: string
+ type: array
browser:
description: Returns analytics based on the browser used by the viewers.
- Response values include `chrome`, `firefox`, `edge`, `opera`.
- example: firefox
- type: string
+ Response values can include `chrome`, `firefox`, `edge`, `opera`.
+ example:
+ - firefox
+ items:
+ type: string
+ type: array
tag:
description: Returns analytics for videos using this tag. This filter
only accepts a single value and is case sensitive. Read more about
@@ -12119,7 +12369,9 @@ paths:
example: Cool videos
type: string
type: object
+ x-is-deep-object: true
style: deepObject
+ x-is-deep-object: true
- description: 'Choose the number of search results to return per page. Minimum
value: 1'
example: 2
@@ -12320,7 +12572,67 @@ paths:
x-client-action: getMetricsOverTime
x-group-parameters: true
x-client-paginated: true
- x-doctave: {}
+ x-doctave:
+ code-samples:
+ - language: java
+ code: |
+ FilterBy2 filterBy = new FilterBy2();
+
+ filterBy.setBrowser(Collections.singletonList("Chrome"));
+ filterBy.setContinent(Arrays.asList(FilterBy2.ContinentEnum.NA, FilterBy2.ContinentEnum.EU));
+ filterBy.setMediaType(FilterBy2.MediaTypeEnum.VIDEO);
+ filterBy.setTag("test");
+
+ Page res = apiClient.analytics().getMetricsOverTime("play").filterBy(filterBy).pageSize(30).execute();
+ for (AnalyticsMetricsOverTimeResponseData item : res.getItems()) {
+ System.out.println(item.getEmittedAt() + ": " + item.getMetricValue());
+ }
+ - language: node
+ code: |
+ const res = await client.analytics.getMetricsOverTime({
+ metric: 'play',
+ filterBy: {
+ mediaType: 'video',
+ browser: ['chrome', 'firefox'],
+ continent: ['EU', 'AF'],
+ tag: "test",
+ },
+ });
+
+ console.log(res);
+ - language: csharp
+ code: |
+ FilterBy2 filterBy = new FilterBy2
+ {
+ continent = new List { "EU", "US" },
+ devicetype = new List { "phone" },
+ tag = "test"
+ };
+ Page res = apiClient.Analytics()
+ .getMetricsOverTime("play").From(new DateTime(2024, 7, 1)).FilterBy(filterBy).execute();
+ - language: go
+ code: "res, err := cl.Analytics.GetMetricsOverTime(\"play\", AnalyticsApiGetMetricsOverTimeRequest{\n\
+ \ filterBy: &FilterBy2{\n Continent: &[]string{\"EU\", \"AA\"},\n\
+ \ DeviceType: &[]string{\"computer\", \"phone\"},\n Tag: \tPtrString(\"\
+ tag\"),\n },\n})\n"
+ - language: python
+ code: |
+ res = self.api.get_metrics_over_time(metric='play', filter_by=FilterBy2(
+ device_type=["computer", "phone"],
+ tag="test",
+ ),
+ )
+ - language: swift
+ code: |
+ AnalyticsAPI.getMetricsOverTime(
+ metric: .play,
+ filterBy: FilterBy2(
+ continent: [.an, .eu],
+ tag: "test"
+ )
+ ) { analytics, error in
+ // ...
+ }
x-accepts: application/json
/webhooks:
get:
@@ -13279,31 +13591,29 @@ components:
\ data dimensions. You can serialize filters in your query to receive more\
\ detailed breakdowns of your analytics.\n\n- If you do not set a value for\
\ `filterBy`, the API returns the full dataset for your project.\n- The API\
- \ only accepts the `mediaId` and `mediaType` filters when you call `/data/metrics/play/total`.\n\
- \nThese are the available breakdown dimensions:\n\n- `mediaId`: Returns analytics\
- \ based on the unique identifiers of a video or a live stream.\n- `mediaType`:\
- \ Returns analytics based on the type of content. Possible values: `video`\
- \ and `live-stream`. \n- `continent`: Returns analytics based on the viewers'\
- \ continent. The list of supported continents names are based on the [GeoNames\
- \ public database](https://www.geonames.org/countries/). You must use the\
- \ ISO-3166 alpha2 format, for example `EU`. Possible values are: `AS`, `AF`,\
- \ `NA`, `SA`, `AN`, `EU`, `AZ`. \n- `country`: Returns analytics based on\
- \ the viewers' country. The list of supported country names are based on the\
- \ [GeoNames public database](https://www.geonames.org/countries/). You must\
- \ use the ISO-3166 alpha2 format, for example `FR`.\n- `deviceType`: Returns\
- \ analytics based on the type of device used by the viewers. Possible response\
- \ values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`,\
+ \ only accepts the `mediaId` and `mediaType` filters when you call `/data/metrics/play/total`\
+ \ or `/data/buckets/play-total/media-id`.\n\nThese are the available breakdown\
+ \ dimensions:\n\n- `mediaId`: Returns analytics based on the unique identifiers\
+ \ of a video or a live stream.\n- `mediaType`: Returns analytics based on\
+ \ the type of content. Possible values: `video` and `live-stream`. \n- `continent`:\
+ \ Returns analytics based on the viewers' continent. The list of supported\
+ \ continents names are based on the [GeoNames public database](https://www.geonames.org/countries/).\
+ \ You must use the ISO-3166 alpha2 format, for example `EU`. Possible values\
+ \ are: `AS`, `AF`, `NA`, `SA`, `AN`, `EU`, `AZ`. \n- `country`: Returns analytics\
+ \ based on the viewers' country. The list of supported country names are based\
+ \ on the [GeoNames public database](https://www.geonames.org/countries/).\
+ \ You must use the ISO-3166 alpha2 format, for example `FR`.\n- `deviceType`:\
+ \ Returns analytics based on the type of device used by the viewers. Response\
+ \ values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`,\
\ `unknown`.\n- `operatingSystem`: Returns analytics based on the operating\
- \ system used by the viewers. Response values include `windows`, `mac osx`,\
- \ `android`, `ios`, `linux`.\n- `browser`: Returns analytics based on the\
- \ browser used by the viewers. Response values include `chrome`, `firefox`,\
+ \ system used by the viewers. Response values can include `windows`, `mac\
+ \ osx`, `android`, `ios`, `linux`.\n- `browser`: Returns analytics based on\
+ \ the browser used by the viewers. Response values can include `chrome`, `firefox`,\
\ `edge`, `opera`.\n- `tag`: Returns analytics for videos using this tag.\
\ This filter only accepts a single value and is case sensitive. Read more\
\ about tagging your videos [here](https://docs.api.video/vod/tags-metadata).\n"
- example:
- mediaType: video
- continent: EU
- country: FR
+ example: filterBy[country]=FR&filterBy[operatingSystem]=windows&filterBy[browser][]=firefox&filterBy[browser][]=chrome&filterBy[tag]=Cool
+ videos
explode: true
in: query
name: filterBy
@@ -13313,8 +13623,11 @@ components:
mediaId:
description: Returns analytics based on the unique identifiers of a video
or a live stream.
- example: vi4blUQJFrYWbaG44NChkH27
- type: string
+ example:
+ - vi4blUQJFrYWbaG44NChkH27
+ items:
+ type: string
+ type: array
mediaType:
enum:
- video
@@ -13325,39 +13638,54 @@ components:
description: Returns analytics based on the viewers' continent. The list
of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/).
You must use the ISO-3166 alpha2 format, for example `EU`.
- enum:
- - AS
- - AF
- - NA
- - SA
- - AN
+ example:
- EU
- - AZ
- example: EU
- type: string
+ items:
+ enum:
+ - AS
+ - AF
+ - NA
+ - SA
+ - AN
+ - EU
+ - AZ
+ type: string
+ type: array
country:
description: Returns analytics based on the viewers' country. The list
of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/).
You must use the ISO-3166 alpha2 format, for example `FR`.
- example: FR
- type: string
+ example:
+ - FR
+ items:
+ type: string
+ type: array
deviceType:
description: 'Returns analytics based on the type of device used by the
- viewers. Possible response values are: `computer`, `phone`, `tablet`,
+ viewers. Response values can include: `computer`, `phone`, `tablet`,
`tv`, `console`, `wearable`, `unknown`.'
- example: computer
- type: string
+ example:
+ - computer
+ items:
+ type: string
+ type: array
operatingSystem:
description: Returns analytics based on the operating system used by the
- viewers. Response values include `windows`, `mac osx`, `android`, `ios`,
- `linux`.
- example: windows
- type: string
+ viewers. Response values can include `windows`, `mac osx`, `android`,
+ `ios`, `linux`.
+ example:
+ - windows
+ items:
+ type: string
+ type: array
browser:
description: Returns analytics based on the browser used by the viewers.
- Response values include `chrome`, `firefox`, `edge`, `opera`.
- example: firefox
- type: string
+ Response values can include `chrome`, `firefox`, `edge`, `opera`.
+ example:
+ - firefox
+ items:
+ type: string
+ type: array
tag:
description: Returns analytics for videos using this tag. This filter
only accepts a single value and is case sensitive. Read more about tagging
@@ -13365,7 +13693,9 @@ components:
example: Cool videos
type: string
type: object
+ x-is-deep-object: true
style: deepObject
+ x-is-deep-object: true
current-page:
description: 'Choose the number of search results to return per page. Minimum
value: 1'
@@ -15097,7 +15427,6 @@ components:
required:
- context
- data
- - pagination
title: Analytics response for aggregated metrics
type: object
analytics-metrics-breakdown-response:
@@ -15547,8 +15876,11 @@ components:
mediaId:
description: Returns analytics based on the unique identifiers of a video
or a live stream.
- example: vi4blUQJFrYWbaG44NChkH27
- type: string
+ example:
+ - vi4blUQJFrYWbaG44NChkH27
+ items:
+ type: string
+ type: array
mediaType:
enum:
- video
@@ -15559,39 +15891,54 @@ components:
description: Returns analytics based on the viewers' continent. The list
of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/).
You must use the ISO-3166 alpha2 format, for example `EU`.
- enum:
- - AS
- - AF
- - NA
- - SA
- - AN
+ example:
- EU
- - AZ
- example: EU
- type: string
+ items:
+ enum:
+ - AS
+ - AF
+ - NA
+ - SA
+ - AN
+ - EU
+ - AZ
+ type: string
+ type: array
country:
description: Returns analytics based on the viewers' country. The list of
supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/).
You must use the ISO-3166 alpha2 format, for example `FR`.
- example: FR
- type: string
+ example:
+ - FR
+ items:
+ type: string
+ type: array
deviceType:
description: 'Returns analytics based on the type of device used by the
- viewers. Possible response values are: `computer`, `phone`, `tablet`,
- `tv`, `console`, `wearable`, `unknown`.'
- example: computer
- type: string
+ viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`,
+ `console`, `wearable`, `unknown`.'
+ example:
+ - computer
+ items:
+ type: string
+ type: array
operatingSystem:
description: Returns analytics based on the operating system used by the
- viewers. Response values include `windows`, `mac osx`, `android`, `ios`,
- `linux`.
- example: windows
- type: string
+ viewers. Response values can include `windows`, `mac osx`, `android`,
+ `ios`, `linux`.
+ example:
+ - windows
+ items:
+ type: string
+ type: array
browser:
description: Returns analytics based on the browser used by the viewers.
- Response values include `chrome`, `firefox`, `edge`, `opera`.
- example: firefox
- type: string
+ Response values can include `chrome`, `firefox`, `edge`, `opera`.
+ example:
+ - firefox
+ items:
+ type: string
+ type: array
tag:
description: Returns analytics for videos using this tag. This filter only
accepts a single value and is case sensitive. Read more about tagging
@@ -15599,13 +15946,17 @@ components:
example: Cool videos
type: string
type: object
+ x-is-deep-object: true
filterBy_1:
properties:
mediaId:
description: Returns analytics based on the unique identifiers of a video
or a live stream.
- example: vi4blUQJFrYWbaG44NChkH27
- type: string
+ example:
+ - vi4blUQJFrYWbaG44NChkH27
+ items:
+ type: string
+ type: array
mediaType:
enum:
- video
@@ -15616,39 +15967,54 @@ components:
description: Returns analytics based on the viewers' continent. The list
of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/).
You must use the ISO-3166 alpha2 format, for example `EU`.
- enum:
- - AS
- - AF
- - NA
- - SA
- - AN
+ example:
- EU
- - AZ
- example: EU
- type: string
+ items:
+ enum:
+ - AS
+ - AF
+ - NA
+ - SA
+ - AN
+ - EU
+ - AZ
+ type: string
+ type: array
country:
description: Returns analytics based on the viewers' country. The list of
supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/).
You must use the ISO-3166 alpha2 format, for example `FR`.
- example: FR
- type: string
+ example:
+ - FR
+ items:
+ type: string
+ type: array
deviceType:
description: 'Returns analytics based on the type of device used by the
- viewers. Possible response values are: `computer`, `phone`, `tablet`,
- `tv`, `console`, `wearable`, `unknown`.'
- example: computer
- type: string
+ viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`,
+ `console`, `wearable`, `unknown`.'
+ example:
+ - computer
+ items:
+ type: string
+ type: array
operatingSystem:
description: Returns analytics based on the operating system used by the
- viewers. Response values include `windows`, `mac osx`, `android`, `ios`,
- `linux`.
- example: windows
- type: string
+ viewers. Response values can include `windows`, `mac osx`, `android`,
+ `ios`, `linux`.
+ example:
+ - windows
+ items:
+ type: string
+ type: array
browser:
description: Returns analytics based on the browser used by the viewers.
- Response values include `chrome`, `firefox`, `edge`, `opera`.
- example: firefox
- type: string
+ Response values can include `chrome`, `firefox`, `edge`, `opera`.
+ example:
+ - firefox
+ items:
+ type: string
+ type: array
tag:
description: Returns analytics for videos using this tag. This filter only
accepts a single value and is case sensitive. Read more about tagging
@@ -15656,13 +16022,17 @@ components:
example: Cool videos
type: string
type: object
+ x-is-deep-object: true
filterBy_2:
properties:
mediaId:
description: Returns analytics based on the unique identifiers of a video
or a live stream.
- example: vi4blUQJFrYWbaG44NChkH27
- type: string
+ example:
+ - vi4blUQJFrYWbaG44NChkH27
+ items:
+ type: string
+ type: array
mediaType:
enum:
- video
@@ -15673,39 +16043,54 @@ components:
description: Returns analytics based on the viewers' continent. The list
of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/).
You must use the ISO-3166 alpha2 format, for example `EU`.
- enum:
- - AS
- - AF
- - NA
- - SA
- - AN
+ example:
- EU
- - AZ
- example: EU
- type: string
+ items:
+ enum:
+ - AS
+ - AF
+ - NA
+ - SA
+ - AN
+ - EU
+ - AZ
+ type: string
+ type: array
country:
description: Returns analytics based on the viewers' country. The list of
supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/).
You must use the ISO-3166 alpha2 format, for example `FR`.
- example: FR
- type: string
+ example:
+ - FR
+ items:
+ type: string
+ type: array
deviceType:
description: 'Returns analytics based on the type of device used by the
- viewers. Possible response values are: `computer`, `phone`, `tablet`,
- `tv`, `console`, `wearable`, `unknown`.'
- example: computer
- type: string
+ viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`,
+ `console`, `wearable`, `unknown`.'
+ example:
+ - computer
+ items:
+ type: string
+ type: array
operatingSystem:
description: Returns analytics based on the operating system used by the
- viewers. Response values include `windows`, `mac osx`, `android`, `ios`,
- `linux`.
- example: windows
- type: string
+ viewers. Response values can include `windows`, `mac osx`, `android`,
+ `ios`, `linux`.
+ example:
+ - windows
+ items:
+ type: string
+ type: array
browser:
description: Returns analytics based on the browser used by the viewers.
- Response values include `chrome`, `firefox`, `edge`, `opera`.
- example: firefox
- type: string
+ Response values can include `chrome`, `firefox`, `edge`, `opera`.
+ example:
+ - firefox
+ items:
+ type: string
+ type: array
tag:
description: Returns analytics for videos using this tag. This filter only
accepts a single value and is case sensitive. Read more about tagging
@@ -15713,6 +16098,7 @@ components:
example: Cool videos
type: string
type: object
+ x-is-deep-object: true
player_theme_assets:
example:
link: path/to/my/logo/mylogo.jpg
diff --git a/build.gradle b/build.gradle
index 24c30fb..dcfaf1c 100644
--- a/build.gradle
+++ b/build.gradle
@@ -4,7 +4,7 @@ apply plugin: 'com.diffplug.spotless'
apply plugin: 'maven-publish'
group = 'video.api'
-version = '1.4.0'
+version = '1.4.1'
buildscript {
repositories {
diff --git a/docs/AccessToken.md b/docs/AccessToken.md
index b3aef04..f40327d 100644
--- a/docs/AccessToken.md
+++ b/docs/AccessToken.md
@@ -15,5 +15,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AdditionalBadRequestErrors.md b/docs/AdditionalBadRequestErrors.md
index ff266cb..ea8fc33 100644
--- a/docs/AdditionalBadRequestErrors.md
+++ b/docs/AdditionalBadRequestErrors.md
@@ -15,5 +15,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AnalyticsAggregatedMetricsResponse.md b/docs/AnalyticsAggregatedMetricsResponse.md
index e3805de..6a638b1 100644
--- a/docs/AnalyticsAggregatedMetricsResponse.md
+++ b/docs/AnalyticsAggregatedMetricsResponse.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AnalyticsAggregatedMetricsResponseContext.md b/docs/AnalyticsAggregatedMetricsResponseContext.md
index c991a0b..812f89b 100644
--- a/docs/AnalyticsAggregatedMetricsResponseContext.md
+++ b/docs/AnalyticsAggregatedMetricsResponseContext.md
@@ -39,5 +39,6 @@ SUM | "sum"
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AnalyticsAggregatedMetricsResponseContextTimeframe.md b/docs/AnalyticsAggregatedMetricsResponseContextTimeframe.md
index 3184f36..9ea5454 100644
--- a/docs/AnalyticsAggregatedMetricsResponseContextTimeframe.md
+++ b/docs/AnalyticsAggregatedMetricsResponseContextTimeframe.md
@@ -14,5 +14,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AnalyticsApi.md b/docs/AnalyticsApi.md
index fa02e3f..443c116 100644
--- a/docs/AnalyticsApi.md
+++ b/docs/AnalyticsApi.md
@@ -40,14 +40,14 @@ public class Example {
String aggregation = "count"; // Use this path parameter to define a way of collecting data for the metric that you want analytics for. - `count` returns the overall number of events for the `play` metric. - `rate` returns the ratio that calculates the number of plays your content receives divided by its impressions. This aggregation can be used only with the `play` metric. - `total` calculates the total number of events for the `play` metric. - `average` calculates an average value for the selected metric. - `sum` adds up the total value of the select metric.
OffsetDateTime from = OffsetDateTime.parse("2024-02-05T00:00:00+01:00"); // 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`.
OffsetDateTime to = OffsetDateTime.parse("2024-02-06T00:00:00+01:00"); // 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.
- FilterBy2 filterBy = new HashMap(); // 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. - `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`. - `tag`: Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata).
- filterBy.setMediaId("""vi4blUQJFrYWbaG44NChkH27"""); // Returns analytics based on the unique identifiers of a video or a live stream.
+ FilterBy2 filterBy = new HashMap(); // 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` or `/data/buckets/play-total/media-id`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. - `deviceType`: Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. - `operatingSystem`: Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`. - `browser`: Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`. - `tag`: Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata).
+ filterBy.setMediaId(Arrays.asList(Arrays.asList(Arrays.asList("vi4blUQJFrYWbaG44NChkH27")))); // Returns analytics based on the unique identifiers of a video or a live stream.
filterBy.setMediaType("""video"""); //
- filterBy.setContinent("""EU"""); // Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`.
- filterBy.setCountry("""FR"""); // Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`.
- filterBy.setDeviceType("""computer"""); // Returns analytics based on the type of device used by the viewers. Possible response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`.
- filterBy.setOperatingSystem("""windows"""); // Returns analytics based on the operating system used by the viewers. Response values include `windows`, `mac osx`, `android`, `ios`, `linux`.
- filterBy.setBrowser("""firefox"""); // Returns analytics based on the browser used by the viewers. Response values include `chrome`, `firefox`, `edge`, `opera`.
+ filterBy.setContinent(Arrays.asList(Arrays.asList(Arrays.asList("EU")))); // Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`.
+ filterBy.setCountry(Arrays.asList(Arrays.asList(Arrays.asList("FR")))); // Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`.
+ filterBy.setDeviceType(Arrays.asList(Arrays.asList(Arrays.asList("computer")))); // Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`.
+ filterBy.setOperatingSystem(Arrays.asList(Arrays.asList(Arrays.asList("windows")))); // Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`.
+ filterBy.setBrowser(Arrays.asList(Arrays.asList(Arrays.asList("firefox")))); // Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`.
filterBy.setTag("""Cool videos"""); // Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata).
@@ -77,7 +77,7 @@ Name | Type | Description | Notes
**aggregation** | **String**| Use this path parameter to define a way of collecting data for the metric that you want analytics for. - `count` returns the overall number of events for the `play` metric. - `rate` returns the ratio that calculates the number of plays your content receives divided by its impressions. This aggregation can be used only with the `play` metric. - `total` calculates the total number of events for the `play` metric. - `average` calculates an average value for the selected metric. - `sum` adds up the total value of the select metric. | [enum: count, rate, total, average, sum]
**from** | **OffsetDateTime**| 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`. | [optional]
**to** | **OffsetDateTime**| 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. | [optional]
- **filterBy** | [**FilterBy2**](.md)| 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. - `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`. - `tag`: Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata). | [optional]
+ **filterBy** | [**FilterBy2**](.md)| 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` or `/data/buckets/play-total/media-id`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. - `deviceType`: Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. - `operatingSystem`: Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`. - `browser`: Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`. - `tag`: Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata). | [optional]
### Return type
@@ -103,7 +103,7 @@ Name | Type | Description | Notes
# **getMetricsBreakdown**
-> AnalyticsMetricsBreakdownResponse getMetricsBreakdown(metric, breakdown).from(from).to(to).filterBy(filterBy).currentPage(currentPage).pageSize(pageSize).execute()
+> AnalyticsMetricsBreakdownResponse getMetricsBreakdown(metric, breakdown).from(from).to(to).sortBy(sortBy).sortOrder(sortOrder).filterBy(filterBy).currentPage(currentPage).pageSize(pageSize).execute()
> okhttp3.Call executeAsync(callback)
> ApiResponse executeWithHttpInfo()
@@ -129,17 +129,19 @@ public class Example {
AnalyticsApi apiInstance = client.analytics();
String metric = "play"; // Use this path parameter to select a metric that you want analytics for. - `play` is the number of times your content has been played. - `play-rate` is the ratio that calculates the number of plays your content receives divided by its impressions. - `play-total` is the total number of times a specific content has been played. You can only use the `media-id` breakdown with this metric. - `start` is the number of times playback was started. - `end` is the number of times playback has ended with the content watch until the end. - `impression` is the number of times your content has been loaded and was ready for playback.
- String breakdown = "media-id"; // Use this path parameter to define a dimension for segmenting analytics data. You must use `kebab-case` for path parameters. These are the available dimensions: - `media-id`: Returns analytics based on the unique identifiers of a video or a live stream. - `media-type`: 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](https://www.geonames.org/countries/). 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](https://www.geonames.org/countries/). - `device-type`: Returns analytics based on the type of device used by the viewers. Possible response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. - `operating-system`: 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`.
+ String breakdown = "media-id"; // Use this path parameter to define a dimension for segmenting analytics data. You must use `kebab-case` for path parameters. These are the available dimensions: - `media-id`: Returns analytics based on the unique identifiers of a video or a live stream. - `media-type`: 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](https://www.geonames.org/countries/). 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](https://www.geonames.org/countries/). - `device-type`: Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. - `operating-system`: Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`. - `browser`: Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`.
OffsetDateTime from = OffsetDateTime.parse("2024-02-05T00:00:00+01:00"); // 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`
OffsetDateTime to = OffsetDateTime.parse("2024-02-06T00:00:00+01:00"); // 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.
- FilterBy2 filterBy = new HashMap(); // 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. - `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`. - `tag`: Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata).
- filterBy.setMediaId("""vi4blUQJFrYWbaG44NChkH27"""); // Returns analytics based on the unique identifiers of a video or a live stream.
+ String sortBy = "metricValue"; // Use this parameter to choose which field the API will use to sort the analytics data. These are the available fields to sort by: - `metricValue`: Sorts the results based on the **metric** you selected in your request. - `dimensionValue`: Sorts the results based on the **dimension** you selected in your request.
+ String sortOrder = "asc"; // Use this parameter to define the sort order of results. These are the available sort orders: - `asc`: Sorts the results in ascending order: `A to Z` and `0 to 9`. - `desc`: Sorts the results in descending order: `Z to A` and `9 to 0`.
+ FilterBy2 filterBy = new HashMap(); // 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` or `/data/buckets/play-total/media-id`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. - `deviceType`: Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. - `operatingSystem`: Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`. - `browser`: Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`. - `tag`: Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata).
+ filterBy.setMediaId(Arrays.asList(Arrays.asList(Arrays.asList("vi4blUQJFrYWbaG44NChkH27")))); // Returns analytics based on the unique identifiers of a video or a live stream.
filterBy.setMediaType("""video"""); //
- filterBy.setContinent("""EU"""); // Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`.
- filterBy.setCountry("""FR"""); // Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`.
- filterBy.setDeviceType("""computer"""); // Returns analytics based on the type of device used by the viewers. Possible response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`.
- filterBy.setOperatingSystem("""windows"""); // Returns analytics based on the operating system used by the viewers. Response values include `windows`, `mac osx`, `android`, `ios`, `linux`.
- filterBy.setBrowser("""firefox"""); // Returns analytics based on the browser used by the viewers. Response values include `chrome`, `firefox`, `edge`, `opera`.
+ filterBy.setContinent(Arrays.asList(Arrays.asList(Arrays.asList("EU")))); // Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`.
+ filterBy.setCountry(Arrays.asList(Arrays.asList(Arrays.asList("FR")))); // Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`.
+ filterBy.setDeviceType(Arrays.asList(Arrays.asList(Arrays.asList("computer")))); // Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`.
+ filterBy.setOperatingSystem(Arrays.asList(Arrays.asList(Arrays.asList("windows")))); // Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`.
+ filterBy.setBrowser(Arrays.asList(Arrays.asList(Arrays.asList("firefox")))); // Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`.
filterBy.setTag("""Cool videos"""); // Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata).
Integer currentPage = 1; // Choose the number of search results to return per page. Minimum value: 1
@@ -149,6 +151,8 @@ public class Example {
Page result = apiInstance.getMetricsBreakdown(metric, breakdown)
.from(from)
.to(to)
+ .sortBy(sortBy)
+ .sortOrder(sortOrder)
.filterBy(filterBy)
.currentPage(currentPage)
.pageSize(pageSize)
@@ -170,10 +174,12 @@ public class Example {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**metric** | **String**| Use this path parameter to select a metric that you want analytics for. - `play` is the number of times your content has been played. - `play-rate` is the ratio that calculates the number of plays your content receives divided by its impressions. - `play-total` is the total number of times a specific content has been played. You can only use the `media-id` breakdown with this metric. - `start` is the number of times playback was started. - `end` is the number of times playback has ended with the content watch until the end. - `impression` is the number of times your content has been loaded and was ready for playback. | [enum: play, play-rate, play-total, start, end, impression]
- **breakdown** | **String**| Use this path parameter to define a dimension for segmenting analytics data. You must use `kebab-case` for path parameters. These are the available dimensions: - `media-id`: Returns analytics based on the unique identifiers of a video or a live stream. - `media-type`: 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](https://www.geonames.org/countries/). 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](https://www.geonames.org/countries/). - `device-type`: Returns analytics based on the type of device used by the viewers. Possible response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. - `operating-system`: 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`. | [enum: media-id, media-type, continent, country, device-type, operating-system, browser]
+ **breakdown** | **String**| Use this path parameter to define a dimension for segmenting analytics data. You must use `kebab-case` for path parameters. These are the available dimensions: - `media-id`: Returns analytics based on the unique identifiers of a video or a live stream. - `media-type`: 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](https://www.geonames.org/countries/). 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](https://www.geonames.org/countries/). - `device-type`: Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. - `operating-system`: Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`. - `browser`: Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`. | [enum: media-id, media-type, continent, country, device-type, operating-system, browser]
**from** | **OffsetDateTime**| 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` | [optional]
**to** | **OffsetDateTime**| 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. | [optional]
- **filterBy** | [**FilterBy2**](.md)| 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. - `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`. - `tag`: Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata). | [optional]
+ **sortBy** | **String**| Use this parameter to choose which field the API will use to sort the analytics data. These are the available fields to sort by: - `metricValue`: Sorts the results based on the **metric** you selected in your request. - `dimensionValue`: Sorts the results based on the **dimension** you selected in your request. | [optional] [enum: metricValue, dimensionValue]
+ **sortOrder** | **String**| Use this parameter to define the sort order of results. These are the available sort orders: - `asc`: Sorts the results in ascending order: `A to Z` and `0 to 9`. - `desc`: Sorts the results in descending order: `Z to A` and `9 to 0`. | [optional] [enum: asc, desc]
+ **filterBy** | [**FilterBy2**](.md)| 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` or `/data/buckets/play-total/media-id`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. - `deviceType`: Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. - `operatingSystem`: Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`. - `browser`: Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`. - `tag`: Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata). | [optional]
**currentPage** | **Integer**| Choose the number of search results to return per page. Minimum value: 1 | [optional] [default to 1]
**pageSize** | **Integer**| Results per page. Allowed values 1-100, default is 25. | [optional] [default to 25]
@@ -201,7 +207,7 @@ Name | Type | Description | Notes
# **getMetricsOverTime**
-> AnalyticsMetricsOverTimeResponse getMetricsOverTime(metric).from(from).to(to).interval(interval).filterBy(filterBy).currentPage(currentPage).pageSize(pageSize).execute()
+> AnalyticsMetricsOverTimeResponse getMetricsOverTime(metric).from(from).to(to).interval(interval).sortBy(sortBy).sortOrder(sortOrder).filterBy(filterBy).currentPage(currentPage).pageSize(pageSize).execute()
> okhttp3.Call executeAsync(callback)
> ApiResponse executeWithHttpInfo()
@@ -230,14 +236,16 @@ public class Example {
OffsetDateTime from = OffsetDateTime.parse("2024-02-05T00:00:00+01:00"); // 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`
OffsetDateTime to = OffsetDateTime.parse("2024-02-06T00:00:00+01:00"); // 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.
String interval = "hour"; // 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`.
- FilterBy2 filterBy = new HashMap(); // 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. - `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`. - `tag`: Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata).
- filterBy.setMediaId("""vi4blUQJFrYWbaG44NChkH27"""); // Returns analytics based on the unique identifiers of a video or a live stream.
+ String sortBy = "metricValue"; // Use this parameter to choose which field the API will use to sort the analytics data. These are the available fields to sort by: - `metricValue`: Sorts the results based on the **metric** you selected in your request. - `emittedAt`: Sorts the results based on the **timestamp** of the event in ATOM date-time format.
+ String sortOrder = "asc"; // Use this parameter to define the sort order of results. These are the available sort orders: - `asc`: Sorts the results in ascending order: `A to Z` and `0 to 9`. - `desc`: Sorts the results in descending order: `Z to A` and `9 to 0`.
+ FilterBy2 filterBy = new HashMap(); // 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` or `/data/buckets/play-total/media-id`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. - `deviceType`: Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. - `operatingSystem`: Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`. - `browser`: Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`. - `tag`: Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata).
+ filterBy.setMediaId(Arrays.asList(Arrays.asList(Arrays.asList("vi4blUQJFrYWbaG44NChkH27")))); // Returns analytics based on the unique identifiers of a video or a live stream.
filterBy.setMediaType("""video"""); //
- filterBy.setContinent("""EU"""); // Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`.
- filterBy.setCountry("""FR"""); // Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`.
- filterBy.setDeviceType("""computer"""); // Returns analytics based on the type of device used by the viewers. Possible response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`.
- filterBy.setOperatingSystem("""windows"""); // Returns analytics based on the operating system used by the viewers. Response values include `windows`, `mac osx`, `android`, `ios`, `linux`.
- filterBy.setBrowser("""firefox"""); // Returns analytics based on the browser used by the viewers. Response values include `chrome`, `firefox`, `edge`, `opera`.
+ filterBy.setContinent(Arrays.asList(Arrays.asList(Arrays.asList("EU")))); // Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`.
+ filterBy.setCountry(Arrays.asList(Arrays.asList(Arrays.asList("FR")))); // Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`.
+ filterBy.setDeviceType(Arrays.asList(Arrays.asList(Arrays.asList("computer")))); // Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`.
+ filterBy.setOperatingSystem(Arrays.asList(Arrays.asList(Arrays.asList("windows")))); // Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`.
+ filterBy.setBrowser(Arrays.asList(Arrays.asList(Arrays.asList("firefox")))); // Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`.
filterBy.setTag("""Cool videos"""); // Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata).
Integer currentPage = 1; // Choose the number of search results to return per page. Minimum value: 1
@@ -248,6 +256,8 @@ public class Example {
.from(from)
.to(to)
.interval(interval)
+ .sortBy(sortBy)
+ .sortOrder(sortOrder)
.filterBy(filterBy)
.currentPage(currentPage)
.pageSize(pageSize)
@@ -272,7 +282,9 @@ Name | Type | Description | Notes
**from** | **OffsetDateTime**| 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` | [optional]
**to** | **OffsetDateTime**| 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. | [optional]
**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`. | [optional] [enum: hour, day]
- **filterBy** | [**FilterBy2**](.md)| 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. - `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`. - `tag`: Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata). | [optional]
+ **sortBy** | **String**| Use this parameter to choose which field the API will use to sort the analytics data. These are the available fields to sort by: - `metricValue`: Sorts the results based on the **metric** you selected in your request. - `emittedAt`: Sorts the results based on the **timestamp** of the event in ATOM date-time format. | [optional] [enum: metricValue, emittedAt]
+ **sortOrder** | **String**| Use this parameter to define the sort order of results. These are the available sort orders: - `asc`: Sorts the results in ascending order: `A to Z` and `0 to 9`. - `desc`: Sorts the results in descending order: `Z to A` and `9 to 0`. | [optional] [enum: asc, desc]
+ **filterBy** | [**FilterBy2**](.md)| 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` or `/data/buckets/play-total/media-id`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. - `deviceType`: Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. - `operatingSystem`: Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`. - `browser`: Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`. - `tag`: Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata). | [optional]
**currentPage** | **Integer**| Choose the number of search results to return per page. Minimum value: 1 | [optional] [default to 1]
**pageSize** | **Integer**| Results per page. Allowed values 1-100, default is 25. | [optional] [default to 25]
diff --git a/docs/AnalyticsData.md b/docs/AnalyticsData.md
index f3d0be7..aefb835 100644
--- a/docs/AnalyticsData.md
+++ b/docs/AnalyticsData.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AnalyticsMetricsBreakdownResponse.md b/docs/AnalyticsMetricsBreakdownResponse.md
index fae2983..1693d04 100644
--- a/docs/AnalyticsMetricsBreakdownResponse.md
+++ b/docs/AnalyticsMetricsBreakdownResponse.md
@@ -14,5 +14,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AnalyticsMetricsBreakdownResponseContext.md b/docs/AnalyticsMetricsBreakdownResponseContext.md
index 811184e..61d3776 100644
--- a/docs/AnalyticsMetricsBreakdownResponseContext.md
+++ b/docs/AnalyticsMetricsBreakdownResponseContext.md
@@ -40,5 +40,6 @@ BROWSER | "browser"
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AnalyticsMetricsBreakdownResponseData.md b/docs/AnalyticsMetricsBreakdownResponseData.md
index 3b8a18a..d1c1c31 100644
--- a/docs/AnalyticsMetricsBreakdownResponseData.md
+++ b/docs/AnalyticsMetricsBreakdownResponseData.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AnalyticsMetricsOverTimeResponse.md b/docs/AnalyticsMetricsOverTimeResponse.md
index a7b74c1..e61a6cd 100644
--- a/docs/AnalyticsMetricsOverTimeResponse.md
+++ b/docs/AnalyticsMetricsOverTimeResponse.md
@@ -14,5 +14,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AnalyticsMetricsOverTimeResponseContext.md b/docs/AnalyticsMetricsOverTimeResponseContext.md
index 117eb1d..ea7032e 100644
--- a/docs/AnalyticsMetricsOverTimeResponseContext.md
+++ b/docs/AnalyticsMetricsOverTimeResponseContext.md
@@ -35,5 +35,6 @@ DAY | "day"
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AnalyticsMetricsOverTimeResponseData.md b/docs/AnalyticsMetricsOverTimeResponseData.md
index 937fac8..ce10a90 100644
--- a/docs/AnalyticsMetricsOverTimeResponseData.md
+++ b/docs/AnalyticsMetricsOverTimeResponseData.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AnalyticsPlays400Error.md b/docs/AnalyticsPlays400Error.md
index 9127581..aba5488 100644
--- a/docs/AnalyticsPlays400Error.md
+++ b/docs/AnalyticsPlays400Error.md
@@ -16,5 +16,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AnalyticsPlaysResponse.md b/docs/AnalyticsPlaysResponse.md
index ec62d20..ca910c2 100644
--- a/docs/AnalyticsPlaysResponse.md
+++ b/docs/AnalyticsPlaysResponse.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/AuthenticatePayload.md b/docs/AuthenticatePayload.md
index 23b19db..6a58229 100644
--- a/docs/AuthenticatePayload.md
+++ b/docs/AuthenticatePayload.md
@@ -12,5 +12,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/BadRequest.md b/docs/BadRequest.md
index c96c26a..1d8283e 100644
--- a/docs/BadRequest.md
+++ b/docs/BadRequest.md
@@ -16,5 +16,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/BytesRange.md b/docs/BytesRange.md
index 5442457..9c8da22 100644
--- a/docs/BytesRange.md
+++ b/docs/BytesRange.md
@@ -14,5 +14,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/Caption.md b/docs/Caption.md
index e07ac70..0c72ee0 100644
--- a/docs/Caption.md
+++ b/docs/Caption.md
@@ -16,5 +16,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/CaptionsListResponse.md b/docs/CaptionsListResponse.md
index f8c2df3..07279f8 100644
--- a/docs/CaptionsListResponse.md
+++ b/docs/CaptionsListResponse.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/CaptionsUpdatePayload.md b/docs/CaptionsUpdatePayload.md
index 9cd5c72..d6a014d 100644
--- a/docs/CaptionsUpdatePayload.md
+++ b/docs/CaptionsUpdatePayload.md
@@ -12,5 +12,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/Chapter.md b/docs/Chapter.md
index 5a740fd..5f9d6b9 100644
--- a/docs/Chapter.md
+++ b/docs/Chapter.md
@@ -14,5 +14,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/ChaptersListResponse.md b/docs/ChaptersListResponse.md
index d02b00a..c07fd55 100644
--- a/docs/ChaptersListResponse.md
+++ b/docs/ChaptersListResponse.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/FilterBy.md b/docs/FilterBy.md
index 3151acc..218c7af 100644
--- a/docs/FilterBy.md
+++ b/docs/FilterBy.md
@@ -6,13 +6,13 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**mediaId** | **String** | Returns analytics based on the unique identifiers of a video or a live stream. | [optional]
+**mediaId** | **List<String>** | Returns analytics based on the unique identifiers of a video or a live stream. | [optional]
**mediaType** | [**MediaTypeEnum**](#MediaTypeEnum) | | [optional]
-**continent** | [**ContinentEnum**](#ContinentEnum) | Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. | [optional]
-**country** | **String** | Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. | [optional]
-**deviceType** | **String** | Returns analytics based on the type of device used by the viewers. Possible response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. | [optional]
-**operatingSystem** | **String** | Returns analytics based on the operating system used by the viewers. Response values include `windows`, `mac osx`, `android`, `ios`, `linux`. | [optional]
-**browser** | **String** | Returns analytics based on the browser used by the viewers. Response values include `chrome`, `firefox`, `edge`, `opera`. | [optional]
+**continent** | [**List<ContinentEnum>**](#List<ContinentEnum>) | Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. | [optional]
+**country** | **List<String>** | Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. | [optional]
+**deviceType** | **List<String>** | Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. | [optional]
+**operatingSystem** | **List<String>** | Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`. | [optional]
+**browser** | **List<String>** | Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`. | [optional]
**tag** | **String** | Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata). | [optional]
@@ -26,7 +26,7 @@ LIVE_STREAM | "live-stream"
-## Enum: ContinentEnum
+## Enum: List<ContinentEnum>
Name | Value
---- | -----
@@ -42,5 +42,6 @@ AZ | "AZ"
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/FilterBy1.md b/docs/FilterBy1.md
index 7692676..907e328 100644
--- a/docs/FilterBy1.md
+++ b/docs/FilterBy1.md
@@ -6,13 +6,13 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**mediaId** | **String** | Returns analytics based on the unique identifiers of a video or a live stream. | [optional]
+**mediaId** | **List<String>** | Returns analytics based on the unique identifiers of a video or a live stream. | [optional]
**mediaType** | [**MediaTypeEnum**](#MediaTypeEnum) | | [optional]
-**continent** | [**ContinentEnum**](#ContinentEnum) | Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. | [optional]
-**country** | **String** | Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. | [optional]
-**deviceType** | **String** | Returns analytics based on the type of device used by the viewers. Possible response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. | [optional]
-**operatingSystem** | **String** | Returns analytics based on the operating system used by the viewers. Response values include `windows`, `mac osx`, `android`, `ios`, `linux`. | [optional]
-**browser** | **String** | Returns analytics based on the browser used by the viewers. Response values include `chrome`, `firefox`, `edge`, `opera`. | [optional]
+**continent** | [**List<ContinentEnum>**](#List<ContinentEnum>) | Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. | [optional]
+**country** | **List<String>** | Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. | [optional]
+**deviceType** | **List<String>** | Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. | [optional]
+**operatingSystem** | **List<String>** | Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`. | [optional]
+**browser** | **List<String>** | Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`. | [optional]
**tag** | **String** | Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata). | [optional]
@@ -26,7 +26,7 @@ LIVE_STREAM | "live-stream"
-## Enum: ContinentEnum
+## Enum: List<ContinentEnum>
Name | Value
---- | -----
@@ -42,5 +42,6 @@ AZ | "AZ"
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/FilterBy2.md b/docs/FilterBy2.md
index 8016b0a..b83e5cd 100644
--- a/docs/FilterBy2.md
+++ b/docs/FilterBy2.md
@@ -6,13 +6,13 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**mediaId** | **String** | Returns analytics based on the unique identifiers of a video or a live stream. | [optional]
+**mediaId** | **List<String>** | Returns analytics based on the unique identifiers of a video or a live stream. | [optional]
**mediaType** | [**MediaTypeEnum**](#MediaTypeEnum) | | [optional]
-**continent** | [**ContinentEnum**](#ContinentEnum) | Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. | [optional]
-**country** | **String** | Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. | [optional]
-**deviceType** | **String** | Returns analytics based on the type of device used by the viewers. Possible response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. | [optional]
-**operatingSystem** | **String** | Returns analytics based on the operating system used by the viewers. Response values include `windows`, `mac osx`, `android`, `ios`, `linux`. | [optional]
-**browser** | **String** | Returns analytics based on the browser used by the viewers. Response values include `chrome`, `firefox`, `edge`, `opera`. | [optional]
+**continent** | [**List<ContinentEnum>**](#List<ContinentEnum>) | Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`. | [optional]
+**country** | **List<String>** | Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`. | [optional]
+**deviceType** | **List<String>** | Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`. | [optional]
+**operatingSystem** | **List<String>** | Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`. | [optional]
+**browser** | **List<String>** | Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`. | [optional]
**tag** | **String** | Returns analytics for videos using this tag. This filter only accepts a single value and is case sensitive. Read more about tagging your videos [here](https://docs.api.video/vod/tags-metadata). | [optional]
@@ -26,7 +26,7 @@ LIVE_STREAM | "live-stream"
-## Enum: ContinentEnum
+## Enum: List<ContinentEnum>
Name | Value
---- | -----
@@ -42,5 +42,6 @@ AZ | "AZ"
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/Link.md b/docs/Link.md
index dfbc44c..cfdfc2a 100644
--- a/docs/Link.md
+++ b/docs/Link.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/LiveStream.md b/docs/LiveStream.md
index 8b3dfe3..a38d380 100644
--- a/docs/LiveStream.md
+++ b/docs/LiveStream.md
@@ -21,5 +21,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/LiveStreamAssets.md b/docs/LiveStreamAssets.md
index dbb6465..8e16588 100644
--- a/docs/LiveStreamAssets.md
+++ b/docs/LiveStreamAssets.md
@@ -15,5 +15,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/LiveStreamCreationPayload.md b/docs/LiveStreamCreationPayload.md
index 52e0cde..1d6cbef 100644
--- a/docs/LiveStreamCreationPayload.md
+++ b/docs/LiveStreamCreationPayload.md
@@ -15,5 +15,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/LiveStreamListResponse.md b/docs/LiveStreamListResponse.md
index 33dc259..3506a4a 100644
--- a/docs/LiveStreamListResponse.md
+++ b/docs/LiveStreamListResponse.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/LiveStreamUpdatePayload.md b/docs/LiveStreamUpdatePayload.md
index bd8b5d3..d51f6f1 100644
--- a/docs/LiveStreamUpdatePayload.md
+++ b/docs/LiveStreamUpdatePayload.md
@@ -15,5 +15,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/Metadata.md b/docs/Metadata.md
index f00e040..0108d67 100644
--- a/docs/Metadata.md
+++ b/docs/Metadata.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/Model403ErrorSchema.md b/docs/Model403ErrorSchema.md
index de99aed..5a61344 100644
--- a/docs/Model403ErrorSchema.md
+++ b/docs/Model403ErrorSchema.md
@@ -15,5 +15,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/NotFound.md b/docs/NotFound.md
index ee795dd..f9862fd 100644
--- a/docs/NotFound.md
+++ b/docs/NotFound.md
@@ -15,5 +15,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/PaginationLink.md b/docs/PaginationLink.md
index 73da383..a2f8702 100644
--- a/docs/PaginationLink.md
+++ b/docs/PaginationLink.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/PlayerSessionEvent.md b/docs/PlayerSessionEvent.md
index efeba8b..fa58f27 100644
--- a/docs/PlayerSessionEvent.md
+++ b/docs/PlayerSessionEvent.md
@@ -16,5 +16,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/PlayerTheme.md b/docs/PlayerTheme.md
index 2e9e2ae..df036a5 100644
--- a/docs/PlayerTheme.md
+++ b/docs/PlayerTheme.md
@@ -31,5 +31,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/PlayerThemeAssets.md b/docs/PlayerThemeAssets.md
index a1cfd69..1a65565 100644
--- a/docs/PlayerThemeAssets.md
+++ b/docs/PlayerThemeAssets.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/PlayerThemeCreationPayload.md b/docs/PlayerThemeCreationPayload.md
index dd85e41..6e9ff2b 100644
--- a/docs/PlayerThemeCreationPayload.md
+++ b/docs/PlayerThemeCreationPayload.md
@@ -27,5 +27,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/PlayerThemeUpdatePayload.md b/docs/PlayerThemeUpdatePayload.md
index c3bec4b..7407665 100644
--- a/docs/PlayerThemeUpdatePayload.md
+++ b/docs/PlayerThemeUpdatePayload.md
@@ -27,5 +27,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/PlayerThemesListResponse.md b/docs/PlayerThemesListResponse.md
index 16a26ca..aa06045 100644
--- a/docs/PlayerThemesListResponse.md
+++ b/docs/PlayerThemesListResponse.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/Quality.md b/docs/Quality.md
index c51fcce..359f651 100644
--- a/docs/Quality.md
+++ b/docs/Quality.md
@@ -47,5 +47,6 @@ FAILED | "failed"
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/RefreshTokenPayload.md b/docs/RefreshTokenPayload.md
index d874151..e4fdfff 100644
--- a/docs/RefreshTokenPayload.md
+++ b/docs/RefreshTokenPayload.md
@@ -12,5 +12,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/RestreamsRequestObject.md b/docs/RestreamsRequestObject.md
index babe265..d2ddfad 100644
--- a/docs/RestreamsRequestObject.md
+++ b/docs/RestreamsRequestObject.md
@@ -15,5 +15,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/RestreamsResponseObject.md b/docs/RestreamsResponseObject.md
index 0e100fb..0dc63ae 100644
--- a/docs/RestreamsResponseObject.md
+++ b/docs/RestreamsResponseObject.md
@@ -14,5 +14,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/TokenCreationPayload.md b/docs/TokenCreationPayload.md
index 0eadb21..7dac438 100644
--- a/docs/TokenCreationPayload.md
+++ b/docs/TokenCreationPayload.md
@@ -12,5 +12,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/TokenListResponse.md b/docs/TokenListResponse.md
index bf6f6dc..3505a87 100644
--- a/docs/TokenListResponse.md
+++ b/docs/TokenListResponse.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/TooManyRequests.md b/docs/TooManyRequests.md
index 643afd9..0f3785b 100644
--- a/docs/TooManyRequests.md
+++ b/docs/TooManyRequests.md
@@ -14,5 +14,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/UnrecognizedRequestUrl.md b/docs/UnrecognizedRequestUrl.md
index 1f08819..d9ccf5a 100644
--- a/docs/UnrecognizedRequestUrl.md
+++ b/docs/UnrecognizedRequestUrl.md
@@ -14,5 +14,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/UploadToken.md b/docs/UploadToken.md
index ba943c5..69201b0 100644
--- a/docs/UploadToken.md
+++ b/docs/UploadToken.md
@@ -15,5 +15,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/Video.md b/docs/Video.md
index 899d016..070f2bb 100644
--- a/docs/Video.md
+++ b/docs/Video.md
@@ -25,5 +25,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoAssets.md b/docs/VideoAssets.md
index bc4ae86..9d98104 100644
--- a/docs/VideoAssets.md
+++ b/docs/VideoAssets.md
@@ -17,5 +17,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoClip.md b/docs/VideoClip.md
index daf5896..29f2003 100644
--- a/docs/VideoClip.md
+++ b/docs/VideoClip.md
@@ -14,5 +14,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoCreationPayload.md b/docs/VideoCreationPayload.md
index d12a827..5437297 100644
--- a/docs/VideoCreationPayload.md
+++ b/docs/VideoCreationPayload.md
@@ -22,5 +22,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoSource.md b/docs/VideoSource.md
index 993df1d..26f27aa 100644
--- a/docs/VideoSource.md
+++ b/docs/VideoSource.md
@@ -15,5 +15,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoSourceLiveStream.md b/docs/VideoSourceLiveStream.md
index 63da1de..482ae4a 100644
--- a/docs/VideoSourceLiveStream.md
+++ b/docs/VideoSourceLiveStream.md
@@ -14,5 +14,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoSourceLiveStreamLink.md b/docs/VideoSourceLiveStreamLink.md
index 9cb50eb..bbcdb1a 100644
--- a/docs/VideoSourceLiveStreamLink.md
+++ b/docs/VideoSourceLiveStreamLink.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoStatus.md b/docs/VideoStatus.md
index 9a73f4d..d20b495 100644
--- a/docs/VideoStatus.md
+++ b/docs/VideoStatus.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoStatusEncoding.md b/docs/VideoStatusEncoding.md
index 33ae740..f841dd9 100644
--- a/docs/VideoStatusEncoding.md
+++ b/docs/VideoStatusEncoding.md
@@ -14,5 +14,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoStatusEncodingMetadata.md b/docs/VideoStatusEncodingMetadata.md
index 5b1504b..ace8077 100644
--- a/docs/VideoStatusEncodingMetadata.md
+++ b/docs/VideoStatusEncodingMetadata.md
@@ -20,5 +20,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoStatusIngest.md b/docs/VideoStatusIngest.md
index cf818ad..55d9dbd 100644
--- a/docs/VideoStatusIngest.md
+++ b/docs/VideoStatusIngest.md
@@ -27,5 +27,6 @@ INGESTED | "ingested"
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoStatusIngestReceivedParts.md b/docs/VideoStatusIngestReceivedParts.md
index 878063c..15e2d0e 100644
--- a/docs/VideoStatusIngestReceivedParts.md
+++ b/docs/VideoStatusIngestReceivedParts.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoThumbnailPickPayload.md b/docs/VideoThumbnailPickPayload.md
index e103519..8b48cbe 100644
--- a/docs/VideoThumbnailPickPayload.md
+++ b/docs/VideoThumbnailPickPayload.md
@@ -12,5 +12,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoUpdatePayload.md b/docs/VideoUpdatePayload.md
index 4d2b1da..159889f 100644
--- a/docs/VideoUpdatePayload.md
+++ b/docs/VideoUpdatePayload.md
@@ -19,5 +19,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideoWatermark.md b/docs/VideoWatermark.md
index 5e13b5b..3dd5715 100644
--- a/docs/VideoWatermark.md
+++ b/docs/VideoWatermark.md
@@ -19,5 +19,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/VideosListResponse.md b/docs/VideosListResponse.md
index 8b24f48..746368b 100644
--- a/docs/VideosListResponse.md
+++ b/docs/VideosListResponse.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/Watermark.md b/docs/Watermark.md
index d9a2666..c0cf62d 100644
--- a/docs/Watermark.md
+++ b/docs/Watermark.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/WatermarksListResponse.md b/docs/WatermarksListResponse.md
index 264dafe..1e6e56e 100644
--- a/docs/WatermarksListResponse.md
+++ b/docs/WatermarksListResponse.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/Webhook.md b/docs/Webhook.md
index cda41f7..a630065 100644
--- a/docs/Webhook.md
+++ b/docs/Webhook.md
@@ -15,5 +15,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/WebhooksCreationPayload.md b/docs/WebhooksCreationPayload.md
index 651fee8..659b6ac 100644
--- a/docs/WebhooksCreationPayload.md
+++ b/docs/WebhooksCreationPayload.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/docs/WebhooksListResponse.md b/docs/WebhooksListResponse.md
index 766b023..1d00b98 100644
--- a/docs/WebhooksListResponse.md
+++ b/docs/WebhooksListResponse.md
@@ -13,5 +13,6 @@ Name | Type | Description | Notes
## Implemented Interfaces
* Serializable
+* DeepObject
diff --git a/pom.xml b/pom.xml
index a0eca62..91cd0ec 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
java-api-client
jar
${project.groupId}:${project.artifactId}
- 1.4.0
+ 1.4.1
https://github.com/apivideo/api.video-java-client
api.video Java API client
diff --git a/src/main/java/video/api/client/api/ApiClient.java b/src/main/java/video/api/client/api/ApiClient.java
index e4cdae8..984197e 100644
--- a/src/main/java/video/api/client/api/ApiClient.java
+++ b/src/main/java/video/api/client/api/ApiClient.java
@@ -12,6 +12,7 @@
package video.api.client.api;
import video.api.client.api.auth.ApiVideoAuthInterceptor;
+import video.api.client.api.models.DeepObject;
import video.api.client.api.upload.UploadChunkRequestBody;
import okhttp3.*;
import okhttp3.internal.http.HttpMethod;
@@ -38,8 +39,8 @@
import java.text.DateFormat;
import java.time.LocalDate;
import java.time.OffsetDateTime;
-import java.time.format.DateTimeFormatter;
import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.Map.Entry;
import java.util.concurrent.TimeUnit;
@@ -119,7 +120,7 @@ private OkHttpClient initHttpClient(List interceptors) {
private void init() {
verifyingSsl = true;
json = new JSON();
- addDefaultHeader("AV-Origin-Client", "java:1.4.0");
+ addDefaultHeader("AV-Origin-Client", "java:1.4.1");
}
private boolean isValid(String regex, String field) {
@@ -510,6 +511,25 @@ public List parameterToPair(String name, Object value) {
return params;
}
+ if (value instanceof DeepObject) {
+ Map map = json.deserialize(json.serialize(value), Map.class);
+ map.forEach((k, v) -> {
+ if (k != null) {
+ if (v instanceof List) {
+ List list = (List) v;
+ for (int i = 0; i < list.size(); i++) {
+ Object item = list.get(i);
+ params.add(
+ new Pair(name + "[" + k + "][" + i + "]", item == null ? null : item.toString()));
+ }
+ } else {
+ params.add(new Pair(name + "[" + k + "]", v == null ? null : v.toString()));
+ }
+ }
+ });
+ return params;
+ }
+
params.add(new Pair(name, parameterToString(value)));
return params;
}
diff --git a/src/main/java/video/api/client/api/clients/AnalyticsApi.java b/src/main/java/video/api/client/api/clients/AnalyticsApi.java
index c6159f6..42da972 100644
--- a/src/main/java/video/api/client/api/clients/AnalyticsApi.java
+++ b/src/main/java/video/api/client/api/clients/AnalyticsApi.java
@@ -235,23 +235,24 @@ public APIgetAggregatedMetricsRequest to(OffsetDateTime to) {
* 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format,
- * for example `EU`. Possible values are: `AS`, `AF`, `NA`,
+ * `/data/metrics/play/total` or `/data/buckets/play-total/media-id`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for
+ * example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2
* format, for example `FR`. - `deviceType`: Returns analytics based on the type
- * of device used by the viewers. Possible response values are: `computer`,
+ * of device used by the viewers. Response values can include: `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`,
+ * system used by the viewers. Response values can include `windows`, `mac osx`,
* `android`, `ios`, `linux`. - `browser`: Returns analytics
- * based on the browser used by the viewers. Response values include `chrome`,
+ * based on the browser used by the viewers. Response values can include `chrome`,
* `firefox`, `edge`, `opera`. - `tag`: Returns analytics for
* videos using this tag. This filter only accepts a single value and is case sensitive. Read more
* about tagging your videos [here](https://docs.api.video/vod/tags-metadata). (optional)
@@ -610,8 +611,8 @@ public APIgetAggregatedMetricsRequest getAggregatedMetrics(String metric, String
}
private okhttp3.Call getMetricsBreakdownCall(String metric, String breakdown, OffsetDateTime from,
- OffsetDateTime to, FilterBy2 filterBy, Integer currentPage, Integer pageSize, final ApiCallback _callback)
- throws ApiException {
+ OffsetDateTime to, String sortBy, String sortOrder, FilterBy2 filterBy, Integer currentPage,
+ Integer pageSize, final ApiCallback _callback) throws ApiException {
Object localVarPostBody = null;
// create path and map variables
@@ -633,6 +634,14 @@ private okhttp3.Call getMetricsBreakdownCall(String metric, String breakdown, Of
localVarQueryParams.addAll(localVarApiClient.parameterToPair("to", to));
}
+ if (sortBy != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortBy", sortBy));
+ }
+
+ if (sortOrder != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortOrder", sortOrder));
+ }
+
if (filterBy != null) {
localVarQueryParams.addAll(localVarApiClient.parameterToPair("filterBy", filterBy));
}
@@ -663,8 +672,8 @@ private okhttp3.Call getMetricsBreakdownCall(String metric, String breakdown, Of
@SuppressWarnings("rawtypes")
private okhttp3.Call getMetricsBreakdownValidateBeforeCall(String metric, String breakdown, OffsetDateTime from,
- OffsetDateTime to, FilterBy2 filterBy, Integer currentPage, Integer pageSize, final ApiCallback _callback)
- throws ApiException {
+ OffsetDateTime to, String sortBy, String sortOrder, FilterBy2 filterBy, Integer currentPage,
+ Integer pageSize, final ApiCallback _callback) throws ApiException {
// verify the required parameter 'metric' is set
if (metric == null) {
@@ -676,26 +685,26 @@ private okhttp3.Call getMetricsBreakdownValidateBeforeCall(String metric, String
throw new ApiException("Missing the required parameter 'breakdown' when calling getMetricsBreakdown");
}
- okhttp3.Call localVarCall = getMetricsBreakdownCall(metric, breakdown, from, to, filterBy, currentPage,
- pageSize, _callback);
+ okhttp3.Call localVarCall = getMetricsBreakdownCall(metric, breakdown, from, to, sortBy, sortOrder, filterBy,
+ currentPage, pageSize, _callback);
return localVarCall;
}
private ApiResponse getMetricsBreakdownWithHttpInfo(String metric,
- String breakdown, OffsetDateTime from, OffsetDateTime to, FilterBy2 filterBy, Integer currentPage,
- Integer pageSize) throws ApiException {
- okhttp3.Call localVarCall = getMetricsBreakdownValidateBeforeCall(metric, breakdown, from, to, filterBy,
- currentPage, pageSize, null);
+ String breakdown, OffsetDateTime from, OffsetDateTime to, String sortBy, String sortOrder,
+ FilterBy2 filterBy, Integer currentPage, Integer pageSize) throws ApiException {
+ okhttp3.Call localVarCall = getMetricsBreakdownValidateBeforeCall(metric, breakdown, from, to, sortBy,
+ sortOrder, filterBy, currentPage, pageSize, null);
Type localVarReturnType = new TypeToken() {
}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
}
private okhttp3.Call getMetricsBreakdownAsync(String metric, String breakdown, OffsetDateTime from,
- OffsetDateTime to, FilterBy2 filterBy, Integer currentPage, Integer pageSize,
- final ApiCallback _callback) throws ApiException {
- okhttp3.Call localVarCall = getMetricsBreakdownValidateBeforeCall(metric, breakdown, from, to, filterBy,
- currentPage, pageSize, _callback);
+ OffsetDateTime to, String sortBy, String sortOrder, FilterBy2 filterBy, Integer currentPage,
+ Integer pageSize, final ApiCallback _callback) throws ApiException {
+ okhttp3.Call localVarCall = getMetricsBreakdownValidateBeforeCall(metric, breakdown, from, to, sortBy,
+ sortOrder, filterBy, currentPage, pageSize, _callback);
Type localVarReturnType = new TypeToken() {
}.getType();
localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
@@ -707,6 +716,8 @@ public class APIgetMetricsBreakdownRequest {
private final String breakdown;
private OffsetDateTime from;
private OffsetDateTime to;
+ private String sortBy;
+ private String sortOrder;
private FilterBy2 filterBy;
private Integer currentPage;
private Integer pageSize;
@@ -748,6 +759,38 @@ public APIgetMetricsBreakdownRequest to(OffsetDateTime to) {
return this;
}
+ /**
+ * Set sortBy
+ *
+ * @param sortBy
+ * Use this parameter to choose which field the API will use to sort the analytics data. These are
+ * the available fields to sort by: - `metricValue`: Sorts the results based on the
+ * **metric** you selected in your request. - `dimensionValue`: Sorts the results based on
+ * the **dimension** you selected in your request. (optional)
+ *
+ * @return APIgetMetricsBreakdownRequest
+ */
+ public APIgetMetricsBreakdownRequest sortBy(String sortBy) {
+ this.sortBy = sortBy;
+ return this;
+ }
+
+ /**
+ * Set sortOrder
+ *
+ * @param sortOrder
+ * Use this parameter to define the sort order of results. These are the available sort orders: -
+ * `asc`: Sorts the results in ascending order: `A to Z` and `0 to 9`.
+ * - `desc`: Sorts the results in descending order: `Z to A` and `9 to
+ * 0`. (optional)
+ *
+ * @return APIgetMetricsBreakdownRequest
+ */
+ public APIgetMetricsBreakdownRequest sortOrder(String sortOrder) {
+ this.sortOrder = sortOrder;
+ return this;
+ }
+
/**
* Set filterBy
*
@@ -756,23 +799,24 @@ public APIgetMetricsBreakdownRequest to(OffsetDateTime to) {
* 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format,
- * for example `EU`. Possible values are: `AS`, `AF`, `NA`,
+ * `/data/metrics/play/total` or `/data/buckets/play-total/media-id`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for
+ * example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2
* format, for example `FR`. - `deviceType`: Returns analytics based on the type
- * of device used by the viewers. Possible response values are: `computer`,
+ * of device used by the viewers. Response values can include: `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`,
+ * system used by the viewers. Response values can include `windows`, `mac osx`,
* `android`, `ios`, `linux`. - `browser`: Returns analytics
- * based on the browser used by the viewers. Response values include `chrome`,
+ * based on the browser used by the viewers. Response values can include `chrome`,
* `firefox`, `edge`, `opera`. - `tag`: Returns analytics for
* videos using this tag. This filter only accepts a single value and is case sensitive. Read more
* about tagging your videos [here](https://docs.api.video/vod/tags-metadata). (optional)
@@ -871,7 +915,8 @@ public APIgetMetricsBreakdownRequest pageSize(Integer pageSize) {
*
*/
public okhttp3.Call buildCall(final ApiCallback _callback) throws ApiException {
- return getMetricsBreakdownCall(metric, breakdown, from, to, filterBy, currentPage, pageSize, _callback);
+ return getMetricsBreakdownCall(metric, breakdown, from, to, sortBy, sortOrder, filterBy, currentPage,
+ pageSize, _callback);
}
/**
@@ -933,7 +978,7 @@ public okhttp3.Call buildCall(final ApiCallback _callback) throws ApiException {
*/
public Page execute() throws ApiException {
ApiResponse localVarResp = getMetricsBreakdownWithHttpInfo(metric,
- breakdown, from, to, filterBy, currentPage, pageSize);
+ breakdown, from, to, sortBy, sortOrder, filterBy, currentPage, pageSize);
return new Page<>(localVarResp.getData().getData(), localVarResp.getData().getPagination(), () -> {
try {
return copy().currentPage((currentPage == null ? 1 : currentPage) + 1).execute();
@@ -947,6 +992,8 @@ private APIgetMetricsBreakdownRequest copy() {
APIgetMetricsBreakdownRequest copy = new APIgetMetricsBreakdownRequest(metric, breakdown);
copy.from(from);
copy.to(to);
+ copy.sortBy(sortBy);
+ copy.sortOrder(sortOrder);
copy.filterBy(filterBy);
copy.currentPage(currentPage);
copy.pageSize(pageSize);
@@ -1011,7 +1058,8 @@ private APIgetMetricsBreakdownRequest copy() {
*
*/
public ApiResponse executeWithHttpInfo() throws ApiException {
- return getMetricsBreakdownWithHttpInfo(metric, breakdown, from, to, filterBy, currentPage, pageSize);
+ return getMetricsBreakdownWithHttpInfo(metric, breakdown, from, to, sortBy, sortOrder, filterBy,
+ currentPage, pageSize);
}
/**
@@ -1105,7 +1153,8 @@ public void onDownloadProgress(long bytesRead, long contentLength, boolean done)
_callback.onDownloadProgress(bytesRead, contentLength, done);
}
};
- return getMetricsBreakdownAsync(metric, breakdown, from, to, filterBy, currentPage, pageSize, apiCallback);
+ return getMetricsBreakdownAsync(metric, breakdown, from, to, sortBy, sortOrder, filterBy, currentPage,
+ pageSize, apiCallback);
}
}
@@ -1135,12 +1184,12 @@ public void onDownloadProgress(long bytesRead, long contentLength, boolean done)
* `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](https://www.geonames.org/countries/). - `device-type`:
- * Returns analytics based on the type of device used by the viewers. Possible response values are:
+ * Returns analytics based on the type of device used by the viewers. Response values can include:
* `computer`, `phone`, `tablet`, `tv`, `console`,
* `wearable`, `unknown`. - `operating-system`: Returns analytics based on
- * the operating system used by the viewers. Response values include `windows`, `mac
+ * the operating system used by the viewers. Response values can include `windows`, `mac
* osx`, `android`, `ios`, `linux`. - `browser`: Returns
- * analytics based on the browser used by the viewers. Response values include `chrome`,
+ * analytics based on the browser used by the viewers. Response values can include `chrome`,
* `firefox`, `edge`, `opera`. (required)
*
* @return APIgetMetricsBreakdownRequest
@@ -1199,8 +1248,8 @@ public APIgetMetricsBreakdownRequest getMetricsBreakdown(String metric, String b
}
private okhttp3.Call getMetricsOverTimeCall(String metric, OffsetDateTime from, OffsetDateTime to, String interval,
- FilterBy2 filterBy, Integer currentPage, Integer pageSize, final ApiCallback _callback)
- throws ApiException {
+ String sortBy, String sortOrder, FilterBy2 filterBy, Integer currentPage, Integer pageSize,
+ final ApiCallback _callback) throws ApiException {
Object localVarPostBody = null;
// create path and map variables
@@ -1225,6 +1274,14 @@ private okhttp3.Call getMetricsOverTimeCall(String metric, OffsetDateTime from,
localVarQueryParams.addAll(localVarApiClient.parameterToPair("interval", interval));
}
+ if (sortBy != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortBy", sortBy));
+ }
+
+ if (sortOrder != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortOrder", sortOrder));
+ }
+
if (filterBy != null) {
localVarQueryParams.addAll(localVarApiClient.parameterToPair("filterBy", filterBy));
}
@@ -1255,34 +1312,34 @@ private okhttp3.Call getMetricsOverTimeCall(String metric, OffsetDateTime from,
@SuppressWarnings("rawtypes")
private okhttp3.Call getMetricsOverTimeValidateBeforeCall(String metric, OffsetDateTime from, OffsetDateTime to,
- String interval, FilterBy2 filterBy, Integer currentPage, Integer pageSize, final ApiCallback _callback)
- throws ApiException {
+ String interval, String sortBy, String sortOrder, FilterBy2 filterBy, Integer currentPage, Integer pageSize,
+ final ApiCallback _callback) throws ApiException {
// verify the required parameter 'metric' is set
if (metric == null) {
throw new ApiException("Missing the required parameter 'metric' when calling getMetricsOverTime");
}
- okhttp3.Call localVarCall = getMetricsOverTimeCall(metric, from, to, interval, filterBy, currentPage, pageSize,
- _callback);
+ okhttp3.Call localVarCall = getMetricsOverTimeCall(metric, from, to, interval, sortBy, sortOrder, filterBy,
+ currentPage, pageSize, _callback);
return localVarCall;
}
private ApiResponse getMetricsOverTimeWithHttpInfo(String metric,
- OffsetDateTime from, OffsetDateTime to, String interval, FilterBy2 filterBy, Integer currentPage,
- Integer pageSize) throws ApiException {
- okhttp3.Call localVarCall = getMetricsOverTimeValidateBeforeCall(metric, from, to, interval, filterBy,
- currentPage, pageSize, null);
+ OffsetDateTime from, OffsetDateTime to, String interval, String sortBy, String sortOrder,
+ FilterBy2 filterBy, Integer currentPage, Integer pageSize) throws ApiException {
+ okhttp3.Call localVarCall = getMetricsOverTimeValidateBeforeCall(metric, from, to, interval, sortBy, sortOrder,
+ filterBy, currentPage, pageSize, null);
Type localVarReturnType = new TypeToken() {
}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
}
private okhttp3.Call getMetricsOverTimeAsync(String metric, OffsetDateTime from, OffsetDateTime to, String interval,
- FilterBy2 filterBy, Integer currentPage, Integer pageSize,
+ String sortBy, String sortOrder, FilterBy2 filterBy, Integer currentPage, Integer pageSize,
final ApiCallback _callback) throws ApiException {
- okhttp3.Call localVarCall = getMetricsOverTimeValidateBeforeCall(metric, from, to, interval, filterBy,
- currentPage, pageSize, _callback);
+ okhttp3.Call localVarCall = getMetricsOverTimeValidateBeforeCall(metric, from, to, interval, sortBy, sortOrder,
+ filterBy, currentPage, pageSize, _callback);
Type localVarReturnType = new TypeToken() {
}.getType();
localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
@@ -1294,6 +1351,8 @@ public class APIgetMetricsOverTimeRequest {
private OffsetDateTime from;
private OffsetDateTime to;
private String interval;
+ private String sortBy;
+ private String sortOrder;
private FilterBy2 filterBy;
private Integer currentPage;
private Integer pageSize;
@@ -1352,6 +1411,38 @@ public APIgetMetricsOverTimeRequest interval(String interval) {
return this;
}
+ /**
+ * Set sortBy
+ *
+ * @param sortBy
+ * Use this parameter to choose which field the API will use to sort the analytics data. These are
+ * the available fields to sort by: - `metricValue`: Sorts the results based on the
+ * **metric** you selected in your request. - `emittedAt`: Sorts the results based on the
+ * **timestamp** of the event in ATOM date-time format. (optional)
+ *
+ * @return APIgetMetricsOverTimeRequest
+ */
+ public APIgetMetricsOverTimeRequest sortBy(String sortBy) {
+ this.sortBy = sortBy;
+ return this;
+ }
+
+ /**
+ * Set sortOrder
+ *
+ * @param sortOrder
+ * Use this parameter to define the sort order of results. These are the available sort orders: -
+ * `asc`: Sorts the results in ascending order: `A to Z` and `0 to 9`.
+ * - `desc`: Sorts the results in descending order: `Z to A` and `9 to
+ * 0`. (optional)
+ *
+ * @return APIgetMetricsOverTimeRequest
+ */
+ public APIgetMetricsOverTimeRequest sortOrder(String sortOrder) {
+ this.sortOrder = sortOrder;
+ return this;
+ }
+
/**
* Set filterBy
*
@@ -1360,23 +1451,24 @@ public APIgetMetricsOverTimeRequest interval(String interval) {
* 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format,
- * for example `EU`. Possible values are: `AS`, `AF`, `NA`,
+ * `/data/metrics/play/total` or `/data/buckets/play-total/media-id`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for
+ * example `EU`. 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](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2
* format, for example `FR`. - `deviceType`: Returns analytics based on the type
- * of device used by the viewers. Possible response values are: `computer`,
+ * of device used by the viewers. Response values can include: `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`,
+ * system used by the viewers. Response values can include `windows`, `mac osx`,
* `android`, `ios`, `linux`. - `browser`: Returns analytics
- * based on the browser used by the viewers. Response values include `chrome`,
+ * based on the browser used by the viewers. Response values can include `chrome`,
* `firefox`, `edge`, `opera`. - `tag`: Returns analytics for
* videos using this tag. This filter only accepts a single value and is case sensitive. Read more
* about tagging your videos [here](https://docs.api.video/vod/tags-metadata). (optional)
@@ -1475,7 +1567,8 @@ public APIgetMetricsOverTimeRequest pageSize(Integer pageSize) {
*
*/
public okhttp3.Call buildCall(final ApiCallback _callback) throws ApiException {
- return getMetricsOverTimeCall(metric, from, to, interval, filterBy, currentPage, pageSize, _callback);
+ return getMetricsOverTimeCall(metric, from, to, interval, sortBy, sortOrder, filterBy, currentPage,
+ pageSize, _callback);
}
/**
@@ -1537,7 +1630,7 @@ public okhttp3.Call buildCall(final ApiCallback _callback) throws ApiException {
*/
public Page execute() throws ApiException {
ApiResponse localVarResp = getMetricsOverTimeWithHttpInfo(metric, from,
- to, interval, filterBy, currentPage, pageSize);
+ to, interval, sortBy, sortOrder, filterBy, currentPage, pageSize);
return new Page<>(localVarResp.getData().getData(), localVarResp.getData().getPagination(), () -> {
try {
return copy().currentPage((currentPage == null ? 1 : currentPage) + 1).execute();
@@ -1552,6 +1645,8 @@ private APIgetMetricsOverTimeRequest copy() {
copy.from(from);
copy.to(to);
copy.interval(interval);
+ copy.sortBy(sortBy);
+ copy.sortOrder(sortOrder);
copy.filterBy(filterBy);
copy.currentPage(currentPage);
copy.pageSize(pageSize);
@@ -1616,7 +1711,8 @@ private APIgetMetricsOverTimeRequest copy() {
*
*/
public ApiResponse executeWithHttpInfo() throws ApiException {
- return getMetricsOverTimeWithHttpInfo(metric, from, to, interval, filterBy, currentPage, pageSize);
+ return getMetricsOverTimeWithHttpInfo(metric, from, to, interval, sortBy, sortOrder, filterBy, currentPage,
+ pageSize);
}
/**
@@ -1710,7 +1806,8 @@ public void onDownloadProgress(long bytesRead, long contentLength, boolean done)
_callback.onDownloadProgress(bytesRead, contentLength, done);
}
};
- return getMetricsOverTimeAsync(metric, from, to, interval, filterBy, currentPage, pageSize, apiCallback);
+ return getMetricsOverTimeAsync(metric, from, to, interval, sortBy, sortOrder, filterBy, currentPage,
+ pageSize, apiCallback);
}
}
diff --git a/src/main/java/video/api/client/api/models/AccessToken.java b/src/main/java/video/api/client/api/models/AccessToken.java
index ee88ce6..72d0810 100644
--- a/src/main/java/video/api/client/api/models/AccessToken.java
+++ b/src/main/java/video/api/client/api/models/AccessToken.java
@@ -27,7 +27,7 @@
* AccessToken
*/
-public class AccessToken implements Serializable {
+public class AccessToken implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_ACCESS_TOKEN = "access_token";
diff --git a/src/main/java/video/api/client/api/models/AdditionalBadRequestErrors.java b/src/main/java/video/api/client/api/models/AdditionalBadRequestErrors.java
index a09e632..6239bfa 100644
--- a/src/main/java/video/api/client/api/models/AdditionalBadRequestErrors.java
+++ b/src/main/java/video/api/client/api/models/AdditionalBadRequestErrors.java
@@ -27,7 +27,7 @@
* AdditionalBadRequestErrors
*/
-public class AdditionalBadRequestErrors implements Serializable {
+public class AdditionalBadRequestErrors implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_TYPE = "type";
diff --git a/src/main/java/video/api/client/api/models/AnalyticsAggregatedMetricsResponse.java b/src/main/java/video/api/client/api/models/AnalyticsAggregatedMetricsResponse.java
index 06f3132..9beb890 100644
--- a/src/main/java/video/api/client/api/models/AnalyticsAggregatedMetricsResponse.java
+++ b/src/main/java/video/api/client/api/models/AnalyticsAggregatedMetricsResponse.java
@@ -28,7 +28,7 @@
* AnalyticsAggregatedMetricsResponse
*/
-public class AnalyticsAggregatedMetricsResponse implements Serializable {
+public class AnalyticsAggregatedMetricsResponse implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_CONTEXT = "context";
diff --git a/src/main/java/video/api/client/api/models/AnalyticsAggregatedMetricsResponseContext.java b/src/main/java/video/api/client/api/models/AnalyticsAggregatedMetricsResponseContext.java
index c86de95..87a0b6e 100644
--- a/src/main/java/video/api/client/api/models/AnalyticsAggregatedMetricsResponseContext.java
+++ b/src/main/java/video/api/client/api/models/AnalyticsAggregatedMetricsResponseContext.java
@@ -28,7 +28,7 @@
* AnalyticsAggregatedMetricsResponseContext
*/
-public class AnalyticsAggregatedMetricsResponseContext implements Serializable {
+public class AnalyticsAggregatedMetricsResponseContext implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
/**
diff --git a/src/main/java/video/api/client/api/models/AnalyticsAggregatedMetricsResponseContextTimeframe.java b/src/main/java/video/api/client/api/models/AnalyticsAggregatedMetricsResponseContextTimeframe.java
index e58b434..43e75ca 100644
--- a/src/main/java/video/api/client/api/models/AnalyticsAggregatedMetricsResponseContextTimeframe.java
+++ b/src/main/java/video/api/client/api/models/AnalyticsAggregatedMetricsResponseContextTimeframe.java
@@ -29,7 +29,7 @@
*/
@ApiModel(description = "Returns the starting and ending date-times of the period you want analytics for.")
-public class AnalyticsAggregatedMetricsResponseContextTimeframe implements Serializable {
+public class AnalyticsAggregatedMetricsResponseContextTimeframe implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_FROM = "from";
diff --git a/src/main/java/video/api/client/api/models/AnalyticsData.java b/src/main/java/video/api/client/api/models/AnalyticsData.java
index b2485d4..ad905a9 100644
--- a/src/main/java/video/api/client/api/models/AnalyticsData.java
+++ b/src/main/java/video/api/client/api/models/AnalyticsData.java
@@ -27,7 +27,7 @@
* AnalyticsData
*/
-public class AnalyticsData implements Serializable {
+public class AnalyticsData implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_VALUE = "value";
diff --git a/src/main/java/video/api/client/api/models/AnalyticsMetricsBreakdownResponse.java b/src/main/java/video/api/client/api/models/AnalyticsMetricsBreakdownResponse.java
index 79938a6..9b46fec 100644
--- a/src/main/java/video/api/client/api/models/AnalyticsMetricsBreakdownResponse.java
+++ b/src/main/java/video/api/client/api/models/AnalyticsMetricsBreakdownResponse.java
@@ -32,7 +32,7 @@
* AnalyticsMetricsBreakdownResponse
*/
-public class AnalyticsMetricsBreakdownResponse implements Serializable {
+public class AnalyticsMetricsBreakdownResponse implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_CONTEXT = "context";
diff --git a/src/main/java/video/api/client/api/models/AnalyticsMetricsBreakdownResponseContext.java b/src/main/java/video/api/client/api/models/AnalyticsMetricsBreakdownResponseContext.java
index e76b75c..6fc3e24 100644
--- a/src/main/java/video/api/client/api/models/AnalyticsMetricsBreakdownResponseContext.java
+++ b/src/main/java/video/api/client/api/models/AnalyticsMetricsBreakdownResponseContext.java
@@ -28,7 +28,7 @@
* AnalyticsMetricsBreakdownResponseContext
*/
-public class AnalyticsMetricsBreakdownResponseContext implements Serializable {
+public class AnalyticsMetricsBreakdownResponseContext implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
/**
diff --git a/src/main/java/video/api/client/api/models/AnalyticsMetricsBreakdownResponseData.java b/src/main/java/video/api/client/api/models/AnalyticsMetricsBreakdownResponseData.java
index abbe3c5..ca9563f 100644
--- a/src/main/java/video/api/client/api/models/AnalyticsMetricsBreakdownResponseData.java
+++ b/src/main/java/video/api/client/api/models/AnalyticsMetricsBreakdownResponseData.java
@@ -27,7 +27,7 @@
* AnalyticsMetricsBreakdownResponseData
*/
-public class AnalyticsMetricsBreakdownResponseData implements Serializable {
+public class AnalyticsMetricsBreakdownResponseData implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_DIMENSION_VALUE = "dimensionValue";
diff --git a/src/main/java/video/api/client/api/models/AnalyticsMetricsOverTimeResponse.java b/src/main/java/video/api/client/api/models/AnalyticsMetricsOverTimeResponse.java
index cb3cc12..1c929f2 100644
--- a/src/main/java/video/api/client/api/models/AnalyticsMetricsOverTimeResponse.java
+++ b/src/main/java/video/api/client/api/models/AnalyticsMetricsOverTimeResponse.java
@@ -32,7 +32,7 @@
* AnalyticsMetricsOverTimeResponse
*/
-public class AnalyticsMetricsOverTimeResponse implements Serializable {
+public class AnalyticsMetricsOverTimeResponse implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_CONTEXT = "context";
diff --git a/src/main/java/video/api/client/api/models/AnalyticsMetricsOverTimeResponseContext.java b/src/main/java/video/api/client/api/models/AnalyticsMetricsOverTimeResponseContext.java
index 2a5831a..5ecca68 100644
--- a/src/main/java/video/api/client/api/models/AnalyticsMetricsOverTimeResponseContext.java
+++ b/src/main/java/video/api/client/api/models/AnalyticsMetricsOverTimeResponseContext.java
@@ -28,7 +28,7 @@
* AnalyticsMetricsOverTimeResponseContext
*/
-public class AnalyticsMetricsOverTimeResponseContext implements Serializable {
+public class AnalyticsMetricsOverTimeResponseContext implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
/**
diff --git a/src/main/java/video/api/client/api/models/AnalyticsMetricsOverTimeResponseData.java b/src/main/java/video/api/client/api/models/AnalyticsMetricsOverTimeResponseData.java
index f4676a7..4c28b51 100644
--- a/src/main/java/video/api/client/api/models/AnalyticsMetricsOverTimeResponseData.java
+++ b/src/main/java/video/api/client/api/models/AnalyticsMetricsOverTimeResponseData.java
@@ -27,7 +27,7 @@
* AnalyticsMetricsOverTimeResponseData
*/
-public class AnalyticsMetricsOverTimeResponseData implements Serializable {
+public class AnalyticsMetricsOverTimeResponseData implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_EMITTED_AT = "emittedAt";
diff --git a/src/main/java/video/api/client/api/models/AnalyticsPlays400Error.java b/src/main/java/video/api/client/api/models/AnalyticsPlays400Error.java
index babd941..13e7996 100644
--- a/src/main/java/video/api/client/api/models/AnalyticsPlays400Error.java
+++ b/src/main/java/video/api/client/api/models/AnalyticsPlays400Error.java
@@ -27,7 +27,7 @@
* AnalyticsPlays400Error
*/
-public class AnalyticsPlays400Error implements Serializable {
+public class AnalyticsPlays400Error implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_TYPE = "type";
diff --git a/src/main/java/video/api/client/api/models/AnalyticsPlaysResponse.java b/src/main/java/video/api/client/api/models/AnalyticsPlaysResponse.java
index 72a8a53..ada8dc9 100644
--- a/src/main/java/video/api/client/api/models/AnalyticsPlaysResponse.java
+++ b/src/main/java/video/api/client/api/models/AnalyticsPlaysResponse.java
@@ -31,7 +31,7 @@
* AnalyticsPlaysResponse
*/
-public class AnalyticsPlaysResponse implements Serializable {
+public class AnalyticsPlaysResponse implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_DATA = "data";
diff --git a/src/main/java/video/api/client/api/models/AuthenticatePayload.java b/src/main/java/video/api/client/api/models/AuthenticatePayload.java
index 75349cf..14e831b 100644
--- a/src/main/java/video/api/client/api/models/AuthenticatePayload.java
+++ b/src/main/java/video/api/client/api/models/AuthenticatePayload.java
@@ -27,7 +27,7 @@
* AuthenticatePayload
*/
-public class AuthenticatePayload implements Serializable {
+public class AuthenticatePayload implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_API_KEY = "apiKey";
diff --git a/src/main/java/video/api/client/api/models/BadRequest.java b/src/main/java/video/api/client/api/models/BadRequest.java
index 520d92a..56bd6a7 100644
--- a/src/main/java/video/api/client/api/models/BadRequest.java
+++ b/src/main/java/video/api/client/api/models/BadRequest.java
@@ -31,7 +31,7 @@
* BadRequest
*/
-public class BadRequest implements Serializable {
+public class BadRequest implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_TYPE = "type";
diff --git a/src/main/java/video/api/client/api/models/BytesRange.java b/src/main/java/video/api/client/api/models/BytesRange.java
index 30fedec..d551583 100644
--- a/src/main/java/video/api/client/api/models/BytesRange.java
+++ b/src/main/java/video/api/client/api/models/BytesRange.java
@@ -27,7 +27,7 @@
* BytesRange
*/
-public class BytesRange implements Serializable {
+public class BytesRange implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_FROM = "from";
diff --git a/src/main/java/video/api/client/api/models/Caption.java b/src/main/java/video/api/client/api/models/Caption.java
index 476e331..0862ca6 100644
--- a/src/main/java/video/api/client/api/models/Caption.java
+++ b/src/main/java/video/api/client/api/models/Caption.java
@@ -27,7 +27,7 @@
* Caption
*/
-public class Caption implements Serializable {
+public class Caption implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_URI = "uri";
diff --git a/src/main/java/video/api/client/api/models/CaptionsListResponse.java b/src/main/java/video/api/client/api/models/CaptionsListResponse.java
index c84ee00..8bad54d 100644
--- a/src/main/java/video/api/client/api/models/CaptionsListResponse.java
+++ b/src/main/java/video/api/client/api/models/CaptionsListResponse.java
@@ -31,7 +31,7 @@
* CaptionsListResponse
*/
-public class CaptionsListResponse implements Serializable {
+public class CaptionsListResponse implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_DATA = "data";
diff --git a/src/main/java/video/api/client/api/models/CaptionsUpdatePayload.java b/src/main/java/video/api/client/api/models/CaptionsUpdatePayload.java
index 07bb498..3907a35 100644
--- a/src/main/java/video/api/client/api/models/CaptionsUpdatePayload.java
+++ b/src/main/java/video/api/client/api/models/CaptionsUpdatePayload.java
@@ -27,7 +27,7 @@
* CaptionsUpdatePayload
*/
-public class CaptionsUpdatePayload implements Serializable {
+public class CaptionsUpdatePayload implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_DEFAULT = "default";
diff --git a/src/main/java/video/api/client/api/models/Chapter.java b/src/main/java/video/api/client/api/models/Chapter.java
index 177f1cb..2a75216 100644
--- a/src/main/java/video/api/client/api/models/Chapter.java
+++ b/src/main/java/video/api/client/api/models/Chapter.java
@@ -27,7 +27,7 @@
* Chapter
*/
-public class Chapter implements Serializable {
+public class Chapter implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_URI = "uri";
diff --git a/src/main/java/video/api/client/api/models/ChaptersListResponse.java b/src/main/java/video/api/client/api/models/ChaptersListResponse.java
index 6d34aca..bdcccec 100644
--- a/src/main/java/video/api/client/api/models/ChaptersListResponse.java
+++ b/src/main/java/video/api/client/api/models/ChaptersListResponse.java
@@ -31,7 +31,7 @@
* ChaptersListResponse
*/
-public class ChaptersListResponse implements Serializable {
+public class ChaptersListResponse implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_DATA = "data";
diff --git a/src/main/java/video/api/client/api/models/DeepObject.java b/src/main/java/video/api/client/api/models/DeepObject.java
new file mode 100644
index 0000000..eed8c2c
--- /dev/null
+++ b/src/main/java/video/api/client/api/models/DeepObject.java
@@ -0,0 +1,4 @@
+package video.api.client.api.models;
+
+public interface DeepObject {
+}
diff --git a/src/main/java/video/api/client/api/models/FilterBy.java b/src/main/java/video/api/client/api/models/FilterBy.java
index 6c27a1f..6ba7791 100644
--- a/src/main/java/video/api/client/api/models/FilterBy.java
+++ b/src/main/java/video/api/client/api/models/FilterBy.java
@@ -21,18 +21,20 @@
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
import java.io.Serializable;
/**
* FilterBy
*/
-public class FilterBy implements Serializable {
+public class FilterBy implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_MEDIA_ID = "mediaId";
@SerializedName(SERIALIZED_NAME_MEDIA_ID)
- private String mediaId;
+ private List mediaId = null;
/**
* Gets or Sets mediaType
@@ -86,9 +88,7 @@ public MediaTypeEnum read(final JsonReader jsonReader) throws IOException {
private MediaTypeEnum mediaType;
/**
- * Returns analytics based on the viewers' continent. The list of supported continents names are based on the
- * [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for
- * example `EU`.
+ * Gets or Sets continent
*/
@JsonAdapter(ContinentEnum.Adapter.class)
public enum ContinentEnum {
@@ -146,46 +146,54 @@ public ContinentEnum read(final JsonReader jsonReader) throws IOException {
public static final String SERIALIZED_NAME_CONTINENT = "continent";
@SerializedName(SERIALIZED_NAME_CONTINENT)
- private ContinentEnum continent;
+ private List continent = null;
public static final String SERIALIZED_NAME_COUNTRY = "country";
@SerializedName(SERIALIZED_NAME_COUNTRY)
- private String country;
+ private List country = null;
public static final String SERIALIZED_NAME_DEVICE_TYPE = "deviceType";
@SerializedName(SERIALIZED_NAME_DEVICE_TYPE)
- private String deviceType;
+ private List deviceType = null;
public static final String SERIALIZED_NAME_OPERATING_SYSTEM = "operatingSystem";
@SerializedName(SERIALIZED_NAME_OPERATING_SYSTEM)
- private String operatingSystem;
+ private List operatingSystem = null;
public static final String SERIALIZED_NAME_BROWSER = "browser";
@SerializedName(SERIALIZED_NAME_BROWSER)
- private String browser;
+ private List browser = null;
public static final String SERIALIZED_NAME_TAG = "tag";
@SerializedName(SERIALIZED_NAME_TAG)
private String tag;
- public FilterBy mediaId(String mediaId) {
+ public FilterBy mediaId(List mediaId) {
this.mediaId = mediaId;
return this;
}
+ public FilterBy addMediaIdItem(String mediaIdItem) {
+ if (this.mediaId == null) {
+ this.mediaId = new ArrayList<>();
+ }
+ this.mediaId.add(mediaIdItem);
+ return this;
+ }
+
/**
* Returns analytics based on the unique identifiers of a video or a live stream.
*
* @return mediaId
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "vi4blUQJFrYWbaG44NChkH27", value = "Returns analytics based on the unique identifiers of a video or a live stream.")
+ @ApiModelProperty(example = "[\"vi4blUQJFrYWbaG44NChkH27\"]", value = "Returns analytics based on the unique identifiers of a video or a live stream.")
- public String getMediaId() {
+ public List getMediaId() {
return mediaId;
}
- public void setMediaId(String mediaId) {
+ public void setMediaId(List mediaId) {
this.mediaId = mediaId;
}
@@ -210,11 +218,19 @@ public void setMediaType(MediaTypeEnum mediaType) {
this.mediaType = mediaType;
}
- public FilterBy continent(ContinentEnum continent) {
+ public FilterBy continent(List continent) {
this.continent = continent;
return this;
}
+ public FilterBy addContinentItem(ContinentEnum continentItem) {
+ if (this.continent == null) {
+ this.continent = new ArrayList<>();
+ }
+ this.continent.add(continentItem);
+ return this;
+ }
+
/**
* Returns analytics based on the viewers' continent. The list of supported continents names are based on the
* [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for
@@ -223,21 +239,29 @@ public FilterBy continent(ContinentEnum continent) {
* @return continent
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "EU", value = "Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`.")
+ @ApiModelProperty(example = "[\"EU\"]", value = "Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`.")
- public ContinentEnum getContinent() {
+ public List getContinent() {
return continent;
}
- public void setContinent(ContinentEnum continent) {
+ public void setContinent(List continent) {
this.continent = continent;
}
- public FilterBy country(String country) {
+ public FilterBy country(List country) {
this.country = country;
return this;
}
+ public FilterBy addCountryItem(String countryItem) {
+ if (this.country == null) {
+ this.country = new ArrayList<>();
+ }
+ this.country.add(countryItem);
+ return this;
+ }
+
/**
* Returns analytics based on the viewers' country. The list of supported country names are based on the
* [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for
@@ -246,80 +270,104 @@ public FilterBy country(String country) {
* @return country
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "FR", value = "Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`.")
+ @ApiModelProperty(example = "[\"FR\"]", value = "Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`.")
- public String getCountry() {
+ public List getCountry() {
return country;
}
- public void setCountry(String country) {
+ public void setCountry(List country) {
this.country = country;
}
- public FilterBy deviceType(String deviceType) {
+ public FilterBy deviceType(List deviceType) {
this.deviceType = deviceType;
return this;
}
+ public FilterBy addDeviceTypeItem(String deviceTypeItem) {
+ if (this.deviceType == null) {
+ this.deviceType = new ArrayList<>();
+ }
+ this.deviceType.add(deviceTypeItem);
+ return this;
+ }
+
/**
- * Returns analytics based on the type of device used by the viewers. Possible response values are:
+ * Returns analytics based on the type of device used by the viewers. Response values can include:
* `computer`, `phone`, `tablet`, `tv`, `console`,
* `wearable`, `unknown`.
*
* @return deviceType
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "computer", value = "Returns analytics based on the type of device used by the viewers. Possible response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`.")
+ @ApiModelProperty(example = "[\"computer\"]", value = "Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`.")
- public String getDeviceType() {
+ public List getDeviceType() {
return deviceType;
}
- public void setDeviceType(String deviceType) {
+ public void setDeviceType(List deviceType) {
this.deviceType = deviceType;
}
- public FilterBy operatingSystem(String operatingSystem) {
+ public FilterBy operatingSystem(List operatingSystem) {
this.operatingSystem = operatingSystem;
return this;
}
+ public FilterBy addOperatingSystemItem(String operatingSystemItem) {
+ if (this.operatingSystem == null) {
+ this.operatingSystem = new ArrayList<>();
+ }
+ this.operatingSystem.add(operatingSystemItem);
+ return this;
+ }
+
/**
- * Returns analytics based on the operating system used by the viewers. Response values include `windows`,
- * `mac osx`, `android`, `ios`, `linux`.
+ * Returns analytics based on the operating system used by the viewers. Response values can include
+ * `windows`, `mac osx`, `android`, `ios`, `linux`.
*
* @return operatingSystem
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "windows", value = "Returns analytics based on the operating system used by the viewers. Response values include `windows`, `mac osx`, `android`, `ios`, `linux`.")
+ @ApiModelProperty(example = "[\"windows\"]", value = "Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`.")
- public String getOperatingSystem() {
+ public List getOperatingSystem() {
return operatingSystem;
}
- public void setOperatingSystem(String operatingSystem) {
+ public void setOperatingSystem(List operatingSystem) {
this.operatingSystem = operatingSystem;
}
- public FilterBy browser(String browser) {
+ public FilterBy browser(List browser) {
this.browser = browser;
return this;
}
+ public FilterBy addBrowserItem(String browserItem) {
+ if (this.browser == null) {
+ this.browser = new ArrayList<>();
+ }
+ this.browser.add(browserItem);
+ return this;
+ }
+
/**
- * Returns analytics based on the browser used by the viewers. Response values include `chrome`,
+ * Returns analytics based on the browser used by the viewers. Response values can include `chrome`,
* `firefox`, `edge`, `opera`.
*
* @return browser
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "firefox", value = "Returns analytics based on the browser used by the viewers. Response values include `chrome`, `firefox`, `edge`, `opera`.")
+ @ApiModelProperty(example = "[\"firefox\"]", value = "Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`.")
- public String getBrowser() {
+ public List getBrowser() {
return browser;
}
- public void setBrowser(String browser) {
+ public void setBrowser(List browser) {
this.browser = browser;
}
diff --git a/src/main/java/video/api/client/api/models/FilterBy1.java b/src/main/java/video/api/client/api/models/FilterBy1.java
index c36834f..3d13324 100644
--- a/src/main/java/video/api/client/api/models/FilterBy1.java
+++ b/src/main/java/video/api/client/api/models/FilterBy1.java
@@ -21,18 +21,20 @@
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
import java.io.Serializable;
/**
* FilterBy1
*/
-public class FilterBy1 implements Serializable {
+public class FilterBy1 implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_MEDIA_ID = "mediaId";
@SerializedName(SERIALIZED_NAME_MEDIA_ID)
- private String mediaId;
+ private List mediaId = null;
/**
* Gets or Sets mediaType
@@ -86,9 +88,7 @@ public MediaTypeEnum read(final JsonReader jsonReader) throws IOException {
private MediaTypeEnum mediaType;
/**
- * Returns analytics based on the viewers' continent. The list of supported continents names are based on the
- * [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for
- * example `EU`.
+ * Gets or Sets continent
*/
@JsonAdapter(ContinentEnum.Adapter.class)
public enum ContinentEnum {
@@ -146,46 +146,54 @@ public ContinentEnum read(final JsonReader jsonReader) throws IOException {
public static final String SERIALIZED_NAME_CONTINENT = "continent";
@SerializedName(SERIALIZED_NAME_CONTINENT)
- private ContinentEnum continent;
+ private List continent = null;
public static final String SERIALIZED_NAME_COUNTRY = "country";
@SerializedName(SERIALIZED_NAME_COUNTRY)
- private String country;
+ private List country = null;
public static final String SERIALIZED_NAME_DEVICE_TYPE = "deviceType";
@SerializedName(SERIALIZED_NAME_DEVICE_TYPE)
- private String deviceType;
+ private List deviceType = null;
public static final String SERIALIZED_NAME_OPERATING_SYSTEM = "operatingSystem";
@SerializedName(SERIALIZED_NAME_OPERATING_SYSTEM)
- private String operatingSystem;
+ private List operatingSystem = null;
public static final String SERIALIZED_NAME_BROWSER = "browser";
@SerializedName(SERIALIZED_NAME_BROWSER)
- private String browser;
+ private List browser = null;
public static final String SERIALIZED_NAME_TAG = "tag";
@SerializedName(SERIALIZED_NAME_TAG)
private String tag;
- public FilterBy1 mediaId(String mediaId) {
+ public FilterBy1 mediaId(List mediaId) {
this.mediaId = mediaId;
return this;
}
+ public FilterBy1 addMediaIdItem(String mediaIdItem) {
+ if (this.mediaId == null) {
+ this.mediaId = new ArrayList<>();
+ }
+ this.mediaId.add(mediaIdItem);
+ return this;
+ }
+
/**
* Returns analytics based on the unique identifiers of a video or a live stream.
*
* @return mediaId
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "vi4blUQJFrYWbaG44NChkH27", value = "Returns analytics based on the unique identifiers of a video or a live stream.")
+ @ApiModelProperty(example = "[\"vi4blUQJFrYWbaG44NChkH27\"]", value = "Returns analytics based on the unique identifiers of a video or a live stream.")
- public String getMediaId() {
+ public List getMediaId() {
return mediaId;
}
- public void setMediaId(String mediaId) {
+ public void setMediaId(List mediaId) {
this.mediaId = mediaId;
}
@@ -210,11 +218,19 @@ public void setMediaType(MediaTypeEnum mediaType) {
this.mediaType = mediaType;
}
- public FilterBy1 continent(ContinentEnum continent) {
+ public FilterBy1 continent(List continent) {
this.continent = continent;
return this;
}
+ public FilterBy1 addContinentItem(ContinentEnum continentItem) {
+ if (this.continent == null) {
+ this.continent = new ArrayList<>();
+ }
+ this.continent.add(continentItem);
+ return this;
+ }
+
/**
* Returns analytics based on the viewers' continent. The list of supported continents names are based on the
* [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for
@@ -223,21 +239,29 @@ public FilterBy1 continent(ContinentEnum continent) {
* @return continent
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "EU", value = "Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`.")
+ @ApiModelProperty(example = "[\"EU\"]", value = "Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`.")
- public ContinentEnum getContinent() {
+ public List getContinent() {
return continent;
}
- public void setContinent(ContinentEnum continent) {
+ public void setContinent(List continent) {
this.continent = continent;
}
- public FilterBy1 country(String country) {
+ public FilterBy1 country(List country) {
this.country = country;
return this;
}
+ public FilterBy1 addCountryItem(String countryItem) {
+ if (this.country == null) {
+ this.country = new ArrayList<>();
+ }
+ this.country.add(countryItem);
+ return this;
+ }
+
/**
* Returns analytics based on the viewers' country. The list of supported country names are based on the
* [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for
@@ -246,80 +270,104 @@ public FilterBy1 country(String country) {
* @return country
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "FR", value = "Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`.")
+ @ApiModelProperty(example = "[\"FR\"]", value = "Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`.")
- public String getCountry() {
+ public List getCountry() {
return country;
}
- public void setCountry(String country) {
+ public void setCountry(List country) {
this.country = country;
}
- public FilterBy1 deviceType(String deviceType) {
+ public FilterBy1 deviceType(List deviceType) {
this.deviceType = deviceType;
return this;
}
+ public FilterBy1 addDeviceTypeItem(String deviceTypeItem) {
+ if (this.deviceType == null) {
+ this.deviceType = new ArrayList<>();
+ }
+ this.deviceType.add(deviceTypeItem);
+ return this;
+ }
+
/**
- * Returns analytics based on the type of device used by the viewers. Possible response values are:
+ * Returns analytics based on the type of device used by the viewers. Response values can include:
* `computer`, `phone`, `tablet`, `tv`, `console`,
* `wearable`, `unknown`.
*
* @return deviceType
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "computer", value = "Returns analytics based on the type of device used by the viewers. Possible response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`.")
+ @ApiModelProperty(example = "[\"computer\"]", value = "Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`.")
- public String getDeviceType() {
+ public List getDeviceType() {
return deviceType;
}
- public void setDeviceType(String deviceType) {
+ public void setDeviceType(List deviceType) {
this.deviceType = deviceType;
}
- public FilterBy1 operatingSystem(String operatingSystem) {
+ public FilterBy1 operatingSystem(List operatingSystem) {
this.operatingSystem = operatingSystem;
return this;
}
+ public FilterBy1 addOperatingSystemItem(String operatingSystemItem) {
+ if (this.operatingSystem == null) {
+ this.operatingSystem = new ArrayList<>();
+ }
+ this.operatingSystem.add(operatingSystemItem);
+ return this;
+ }
+
/**
- * Returns analytics based on the operating system used by the viewers. Response values include `windows`,
- * `mac osx`, `android`, `ios`, `linux`.
+ * Returns analytics based on the operating system used by the viewers. Response values can include
+ * `windows`, `mac osx`, `android`, `ios`, `linux`.
*
* @return operatingSystem
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "windows", value = "Returns analytics based on the operating system used by the viewers. Response values include `windows`, `mac osx`, `android`, `ios`, `linux`.")
+ @ApiModelProperty(example = "[\"windows\"]", value = "Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`.")
- public String getOperatingSystem() {
+ public List getOperatingSystem() {
return operatingSystem;
}
- public void setOperatingSystem(String operatingSystem) {
+ public void setOperatingSystem(List operatingSystem) {
this.operatingSystem = operatingSystem;
}
- public FilterBy1 browser(String browser) {
+ public FilterBy1 browser(List browser) {
this.browser = browser;
return this;
}
+ public FilterBy1 addBrowserItem(String browserItem) {
+ if (this.browser == null) {
+ this.browser = new ArrayList<>();
+ }
+ this.browser.add(browserItem);
+ return this;
+ }
+
/**
- * Returns analytics based on the browser used by the viewers. Response values include `chrome`,
+ * Returns analytics based on the browser used by the viewers. Response values can include `chrome`,
* `firefox`, `edge`, `opera`.
*
* @return browser
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "firefox", value = "Returns analytics based on the browser used by the viewers. Response values include `chrome`, `firefox`, `edge`, `opera`.")
+ @ApiModelProperty(example = "[\"firefox\"]", value = "Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`.")
- public String getBrowser() {
+ public List getBrowser() {
return browser;
}
- public void setBrowser(String browser) {
+ public void setBrowser(List browser) {
this.browser = browser;
}
diff --git a/src/main/java/video/api/client/api/models/FilterBy2.java b/src/main/java/video/api/client/api/models/FilterBy2.java
index ac49ff9..49121a1 100644
--- a/src/main/java/video/api/client/api/models/FilterBy2.java
+++ b/src/main/java/video/api/client/api/models/FilterBy2.java
@@ -21,18 +21,20 @@
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
import java.io.Serializable;
/**
* FilterBy2
*/
-public class FilterBy2 implements Serializable {
+public class FilterBy2 implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_MEDIA_ID = "mediaId";
@SerializedName(SERIALIZED_NAME_MEDIA_ID)
- private String mediaId;
+ private List mediaId = null;
/**
* Gets or Sets mediaType
@@ -86,9 +88,7 @@ public MediaTypeEnum read(final JsonReader jsonReader) throws IOException {
private MediaTypeEnum mediaType;
/**
- * Returns analytics based on the viewers' continent. The list of supported continents names are based on the
- * [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for
- * example `EU`.
+ * Gets or Sets continent
*/
@JsonAdapter(ContinentEnum.Adapter.class)
public enum ContinentEnum {
@@ -146,46 +146,54 @@ public ContinentEnum read(final JsonReader jsonReader) throws IOException {
public static final String SERIALIZED_NAME_CONTINENT = "continent";
@SerializedName(SERIALIZED_NAME_CONTINENT)
- private ContinentEnum continent;
+ private List continent = null;
public static final String SERIALIZED_NAME_COUNTRY = "country";
@SerializedName(SERIALIZED_NAME_COUNTRY)
- private String country;
+ private List country = null;
public static final String SERIALIZED_NAME_DEVICE_TYPE = "deviceType";
@SerializedName(SERIALIZED_NAME_DEVICE_TYPE)
- private String deviceType;
+ private List deviceType = null;
public static final String SERIALIZED_NAME_OPERATING_SYSTEM = "operatingSystem";
@SerializedName(SERIALIZED_NAME_OPERATING_SYSTEM)
- private String operatingSystem;
+ private List operatingSystem = null;
public static final String SERIALIZED_NAME_BROWSER = "browser";
@SerializedName(SERIALIZED_NAME_BROWSER)
- private String browser;
+ private List browser = null;
public static final String SERIALIZED_NAME_TAG = "tag";
@SerializedName(SERIALIZED_NAME_TAG)
private String tag;
- public FilterBy2 mediaId(String mediaId) {
+ public FilterBy2 mediaId(List mediaId) {
this.mediaId = mediaId;
return this;
}
+ public FilterBy2 addMediaIdItem(String mediaIdItem) {
+ if (this.mediaId == null) {
+ this.mediaId = new ArrayList<>();
+ }
+ this.mediaId.add(mediaIdItem);
+ return this;
+ }
+
/**
* Returns analytics based on the unique identifiers of a video or a live stream.
*
* @return mediaId
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "vi4blUQJFrYWbaG44NChkH27", value = "Returns analytics based on the unique identifiers of a video or a live stream.")
+ @ApiModelProperty(example = "[\"vi4blUQJFrYWbaG44NChkH27\"]", value = "Returns analytics based on the unique identifiers of a video or a live stream.")
- public String getMediaId() {
+ public List getMediaId() {
return mediaId;
}
- public void setMediaId(String mediaId) {
+ public void setMediaId(List mediaId) {
this.mediaId = mediaId;
}
@@ -210,11 +218,19 @@ public void setMediaType(MediaTypeEnum mediaType) {
this.mediaType = mediaType;
}
- public FilterBy2 continent(ContinentEnum continent) {
+ public FilterBy2 continent(List continent) {
this.continent = continent;
return this;
}
+ public FilterBy2 addContinentItem(ContinentEnum continentItem) {
+ if (this.continent == null) {
+ this.continent = new ArrayList<>();
+ }
+ this.continent.add(continentItem);
+ return this;
+ }
+
/**
* Returns analytics based on the viewers' continent. The list of supported continents names are based on the
* [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for
@@ -223,21 +239,29 @@ public FilterBy2 continent(ContinentEnum continent) {
* @return continent
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "EU", value = "Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`.")
+ @ApiModelProperty(example = "[\"EU\"]", value = "Returns analytics based on the viewers' continent. The list of supported continents names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `EU`.")
- public ContinentEnum getContinent() {
+ public List getContinent() {
return continent;
}
- public void setContinent(ContinentEnum continent) {
+ public void setContinent(List continent) {
this.continent = continent;
}
- public FilterBy2 country(String country) {
+ public FilterBy2 country(List country) {
this.country = country;
return this;
}
+ public FilterBy2 addCountryItem(String countryItem) {
+ if (this.country == null) {
+ this.country = new ArrayList<>();
+ }
+ this.country.add(countryItem);
+ return this;
+ }
+
/**
* Returns analytics based on the viewers' country. The list of supported country names are based on the
* [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for
@@ -246,80 +270,104 @@ public FilterBy2 country(String country) {
* @return country
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "FR", value = "Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`.")
+ @ApiModelProperty(example = "[\"FR\"]", value = "Returns analytics based on the viewers' country. The list of supported country names are based on the [GeoNames public database](https://www.geonames.org/countries/). You must use the ISO-3166 alpha2 format, for example `FR`.")
- public String getCountry() {
+ public List getCountry() {
return country;
}
- public void setCountry(String country) {
+ public void setCountry(List country) {
this.country = country;
}
- public FilterBy2 deviceType(String deviceType) {
+ public FilterBy2 deviceType(List deviceType) {
this.deviceType = deviceType;
return this;
}
+ public FilterBy2 addDeviceTypeItem(String deviceTypeItem) {
+ if (this.deviceType == null) {
+ this.deviceType = new ArrayList<>();
+ }
+ this.deviceType.add(deviceTypeItem);
+ return this;
+ }
+
/**
- * Returns analytics based on the type of device used by the viewers. Possible response values are:
+ * Returns analytics based on the type of device used by the viewers. Response values can include:
* `computer`, `phone`, `tablet`, `tv`, `console`,
* `wearable`, `unknown`.
*
* @return deviceType
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "computer", value = "Returns analytics based on the type of device used by the viewers. Possible response values are: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`.")
+ @ApiModelProperty(example = "[\"computer\"]", value = "Returns analytics based on the type of device used by the viewers. Response values can include: `computer`, `phone`, `tablet`, `tv`, `console`, `wearable`, `unknown`.")
- public String getDeviceType() {
+ public List getDeviceType() {
return deviceType;
}
- public void setDeviceType(String deviceType) {
+ public void setDeviceType(List deviceType) {
this.deviceType = deviceType;
}
- public FilterBy2 operatingSystem(String operatingSystem) {
+ public FilterBy2 operatingSystem(List operatingSystem) {
this.operatingSystem = operatingSystem;
return this;
}
+ public FilterBy2 addOperatingSystemItem(String operatingSystemItem) {
+ if (this.operatingSystem == null) {
+ this.operatingSystem = new ArrayList<>();
+ }
+ this.operatingSystem.add(operatingSystemItem);
+ return this;
+ }
+
/**
- * Returns analytics based on the operating system used by the viewers. Response values include `windows`,
- * `mac osx`, `android`, `ios`, `linux`.
+ * Returns analytics based on the operating system used by the viewers. Response values can include
+ * `windows`, `mac osx`, `android`, `ios`, `linux`.
*
* @return operatingSystem
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "windows", value = "Returns analytics based on the operating system used by the viewers. Response values include `windows`, `mac osx`, `android`, `ios`, `linux`.")
+ @ApiModelProperty(example = "[\"windows\"]", value = "Returns analytics based on the operating system used by the viewers. Response values can include `windows`, `mac osx`, `android`, `ios`, `linux`.")
- public String getOperatingSystem() {
+ public List getOperatingSystem() {
return operatingSystem;
}
- public void setOperatingSystem(String operatingSystem) {
+ public void setOperatingSystem(List operatingSystem) {
this.operatingSystem = operatingSystem;
}
- public FilterBy2 browser(String browser) {
+ public FilterBy2 browser(List browser) {
this.browser = browser;
return this;
}
+ public FilterBy2 addBrowserItem(String browserItem) {
+ if (this.browser == null) {
+ this.browser = new ArrayList<>();
+ }
+ this.browser.add(browserItem);
+ return this;
+ }
+
/**
- * Returns analytics based on the browser used by the viewers. Response values include `chrome`,
+ * Returns analytics based on the browser used by the viewers. Response values can include `chrome`,
* `firefox`, `edge`, `opera`.
*
* @return browser
**/
@javax.annotation.Nullable
- @ApiModelProperty(example = "firefox", value = "Returns analytics based on the browser used by the viewers. Response values include `chrome`, `firefox`, `edge`, `opera`.")
+ @ApiModelProperty(example = "[\"firefox\"]", value = "Returns analytics based on the browser used by the viewers. Response values can include `chrome`, `firefox`, `edge`, `opera`.")
- public String getBrowser() {
+ public List getBrowser() {
return browser;
}
- public void setBrowser(String browser) {
+ public void setBrowser(List browser) {
this.browser = browser;
}
diff --git a/src/main/java/video/api/client/api/models/Link.java b/src/main/java/video/api/client/api/models/Link.java
index 014a6e1..03bfe38 100644
--- a/src/main/java/video/api/client/api/models/Link.java
+++ b/src/main/java/video/api/client/api/models/Link.java
@@ -27,7 +27,7 @@
* Link
*/
-public class Link implements Serializable {
+public class Link implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_REL = "rel";
diff --git a/src/main/java/video/api/client/api/models/LiveStream.java b/src/main/java/video/api/client/api/models/LiveStream.java
index 6ec328e..f9fda90 100644
--- a/src/main/java/video/api/client/api/models/LiveStream.java
+++ b/src/main/java/video/api/client/api/models/LiveStream.java
@@ -32,7 +32,7 @@
* LiveStream
*/
-public class LiveStream implements Serializable {
+public class LiveStream implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_LIVE_STREAM_ID = "liveStreamId";
diff --git a/src/main/java/video/api/client/api/models/LiveStreamAssets.java b/src/main/java/video/api/client/api/models/LiveStreamAssets.java
index 7212cff..f375356 100644
--- a/src/main/java/video/api/client/api/models/LiveStreamAssets.java
+++ b/src/main/java/video/api/client/api/models/LiveStreamAssets.java
@@ -28,7 +28,7 @@
* LiveStreamAssets
*/
-public class LiveStreamAssets implements Serializable {
+public class LiveStreamAssets implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_HLS = "hls";
diff --git a/src/main/java/video/api/client/api/models/LiveStreamCreationPayload.java b/src/main/java/video/api/client/api/models/LiveStreamCreationPayload.java
index eb80234..57750e3 100644
--- a/src/main/java/video/api/client/api/models/LiveStreamCreationPayload.java
+++ b/src/main/java/video/api/client/api/models/LiveStreamCreationPayload.java
@@ -30,7 +30,7 @@
* LiveStreamCreationPayload
*/
-public class LiveStreamCreationPayload implements Serializable {
+public class LiveStreamCreationPayload implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_NAME = "name";
diff --git a/src/main/java/video/api/client/api/models/LiveStreamListResponse.java b/src/main/java/video/api/client/api/models/LiveStreamListResponse.java
index 9fa369b..ee2eb7c 100644
--- a/src/main/java/video/api/client/api/models/LiveStreamListResponse.java
+++ b/src/main/java/video/api/client/api/models/LiveStreamListResponse.java
@@ -31,7 +31,7 @@
* LiveStreamListResponse
*/
-public class LiveStreamListResponse implements Serializable {
+public class LiveStreamListResponse implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_DATA = "data";
diff --git a/src/main/java/video/api/client/api/models/LiveStreamUpdatePayload.java b/src/main/java/video/api/client/api/models/LiveStreamUpdatePayload.java
index 3f4d845..315daa1 100644
--- a/src/main/java/video/api/client/api/models/LiveStreamUpdatePayload.java
+++ b/src/main/java/video/api/client/api/models/LiveStreamUpdatePayload.java
@@ -30,7 +30,7 @@
* LiveStreamUpdatePayload
*/
-public class LiveStreamUpdatePayload implements Serializable {
+public class LiveStreamUpdatePayload implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_NAME = "name";
diff --git a/src/main/java/video/api/client/api/models/Metadata.java b/src/main/java/video/api/client/api/models/Metadata.java
index 2de2b51..4dd3888 100644
--- a/src/main/java/video/api/client/api/models/Metadata.java
+++ b/src/main/java/video/api/client/api/models/Metadata.java
@@ -27,7 +27,7 @@
* Metadata
*/
-public class Metadata implements Serializable {
+public class Metadata implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_KEY = "key";
diff --git a/src/main/java/video/api/client/api/models/Model403ErrorSchema.java b/src/main/java/video/api/client/api/models/Model403ErrorSchema.java
index a922d36..5d2e855 100644
--- a/src/main/java/video/api/client/api/models/Model403ErrorSchema.java
+++ b/src/main/java/video/api/client/api/models/Model403ErrorSchema.java
@@ -27,7 +27,7 @@
* Model403ErrorSchema
*/
-public class Model403ErrorSchema implements Serializable {
+public class Model403ErrorSchema implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_TYPE = "type";
diff --git a/src/main/java/video/api/client/api/models/NotFound.java b/src/main/java/video/api/client/api/models/NotFound.java
index 865e0be..85ec491 100644
--- a/src/main/java/video/api/client/api/models/NotFound.java
+++ b/src/main/java/video/api/client/api/models/NotFound.java
@@ -27,7 +27,7 @@
* NotFound
*/
-public class NotFound implements Serializable {
+public class NotFound implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_TYPE = "type";
diff --git a/src/main/java/video/api/client/api/models/Pagination.java b/src/main/java/video/api/client/api/models/Pagination.java
index 5565ce0..97b6c4a 100644
--- a/src/main/java/video/api/client/api/models/Pagination.java
+++ b/src/main/java/video/api/client/api/models/Pagination.java
@@ -30,7 +30,7 @@
* Pagination
*/
-public class Pagination implements Serializable {
+public class Pagination implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_ITEMS_TOTAL = "itemsTotal";
diff --git a/src/main/java/video/api/client/api/models/PaginationLink.java b/src/main/java/video/api/client/api/models/PaginationLink.java
index 8eaec9a..45bcc38 100644
--- a/src/main/java/video/api/client/api/models/PaginationLink.java
+++ b/src/main/java/video/api/client/api/models/PaginationLink.java
@@ -28,7 +28,7 @@
* PaginationLink
*/
-public class PaginationLink implements Serializable {
+public class PaginationLink implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_REL = "rel";
diff --git a/src/main/java/video/api/client/api/models/PlayerSessionEvent.java b/src/main/java/video/api/client/api/models/PlayerSessionEvent.java
index 9615e6e..5300bcf 100644
--- a/src/main/java/video/api/client/api/models/PlayerSessionEvent.java
+++ b/src/main/java/video/api/client/api/models/PlayerSessionEvent.java
@@ -28,7 +28,7 @@
* PlayerSessionEvent
*/
-public class PlayerSessionEvent implements Serializable {
+public class PlayerSessionEvent implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_TYPE = "type";
diff --git a/src/main/java/video/api/client/api/models/PlayerTheme.java b/src/main/java/video/api/client/api/models/PlayerTheme.java
index bc4a612..e1b48fb 100644
--- a/src/main/java/video/api/client/api/models/PlayerTheme.java
+++ b/src/main/java/video/api/client/api/models/PlayerTheme.java
@@ -29,7 +29,7 @@
* PlayerTheme
*/
-public class PlayerTheme implements Serializable {
+public class PlayerTheme implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_NAME = "name";
diff --git a/src/main/java/video/api/client/api/models/PlayerThemeAssets.java b/src/main/java/video/api/client/api/models/PlayerThemeAssets.java
index 7514e2a..0e45188 100644
--- a/src/main/java/video/api/client/api/models/PlayerThemeAssets.java
+++ b/src/main/java/video/api/client/api/models/PlayerThemeAssets.java
@@ -27,7 +27,7 @@
* PlayerThemeAssets
*/
-public class PlayerThemeAssets implements Serializable {
+public class PlayerThemeAssets implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_LOGO = "logo";
diff --git a/src/main/java/video/api/client/api/models/PlayerThemeCreationPayload.java b/src/main/java/video/api/client/api/models/PlayerThemeCreationPayload.java
index 810123e..524ccba 100644
--- a/src/main/java/video/api/client/api/models/PlayerThemeCreationPayload.java
+++ b/src/main/java/video/api/client/api/models/PlayerThemeCreationPayload.java
@@ -27,7 +27,7 @@
* PlayerThemeCreationPayload
*/
-public class PlayerThemeCreationPayload implements Serializable {
+public class PlayerThemeCreationPayload implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_NAME = "name";
diff --git a/src/main/java/video/api/client/api/models/PlayerThemeUpdatePayload.java b/src/main/java/video/api/client/api/models/PlayerThemeUpdatePayload.java
index 95b3a11..4fba170 100644
--- a/src/main/java/video/api/client/api/models/PlayerThemeUpdatePayload.java
+++ b/src/main/java/video/api/client/api/models/PlayerThemeUpdatePayload.java
@@ -27,7 +27,7 @@
* PlayerThemeUpdatePayload
*/
-public class PlayerThemeUpdatePayload implements Serializable {
+public class PlayerThemeUpdatePayload implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_NAME = "name";
diff --git a/src/main/java/video/api/client/api/models/PlayerThemesListResponse.java b/src/main/java/video/api/client/api/models/PlayerThemesListResponse.java
index 99a565e..89de1d2 100644
--- a/src/main/java/video/api/client/api/models/PlayerThemesListResponse.java
+++ b/src/main/java/video/api/client/api/models/PlayerThemesListResponse.java
@@ -31,7 +31,7 @@
* PlayerThemesListResponse
*/
-public class PlayerThemesListResponse implements Serializable {
+public class PlayerThemesListResponse implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_DATA = "data";
diff --git a/src/main/java/video/api/client/api/models/Quality.java b/src/main/java/video/api/client/api/models/Quality.java
index 4329ed1..5be7daa 100644
--- a/src/main/java/video/api/client/api/models/Quality.java
+++ b/src/main/java/video/api/client/api/models/Quality.java
@@ -27,7 +27,7 @@
* Quality
*/
-public class Quality implements Serializable {
+public class Quality implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
/**
diff --git a/src/main/java/video/api/client/api/models/RefreshTokenPayload.java b/src/main/java/video/api/client/api/models/RefreshTokenPayload.java
index 3153193..2ac3ee2 100644
--- a/src/main/java/video/api/client/api/models/RefreshTokenPayload.java
+++ b/src/main/java/video/api/client/api/models/RefreshTokenPayload.java
@@ -27,7 +27,7 @@
* RefreshTokenPayload
*/
-public class RefreshTokenPayload implements Serializable {
+public class RefreshTokenPayload implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_REFRESH_TOKEN = "refreshToken";
diff --git a/src/main/java/video/api/client/api/models/RestreamsRequestObject.java b/src/main/java/video/api/client/api/models/RestreamsRequestObject.java
index c16cc34..1e2e12f 100644
--- a/src/main/java/video/api/client/api/models/RestreamsRequestObject.java
+++ b/src/main/java/video/api/client/api/models/RestreamsRequestObject.java
@@ -29,7 +29,7 @@
*/
@ApiModel(description = "Adding restream destinations is optional. However, if you set a restream destination, you must provide all attributes for each destination.")
-public class RestreamsRequestObject implements Serializable {
+public class RestreamsRequestObject implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_NAME = "name";
diff --git a/src/main/java/video/api/client/api/models/RestreamsResponseObject.java b/src/main/java/video/api/client/api/models/RestreamsResponseObject.java
index b55732d..dcd4d21 100644
--- a/src/main/java/video/api/client/api/models/RestreamsResponseObject.java
+++ b/src/main/java/video/api/client/api/models/RestreamsResponseObject.java
@@ -27,7 +27,7 @@
* RestreamsResponseObject
*/
-public class RestreamsResponseObject implements Serializable {
+public class RestreamsResponseObject implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_NAME = "name";
diff --git a/src/main/java/video/api/client/api/models/TokenCreationPayload.java b/src/main/java/video/api/client/api/models/TokenCreationPayload.java
index 7d26a97..a7370f8 100644
--- a/src/main/java/video/api/client/api/models/TokenCreationPayload.java
+++ b/src/main/java/video/api/client/api/models/TokenCreationPayload.java
@@ -27,7 +27,7 @@
* TokenCreationPayload
*/
-public class TokenCreationPayload implements Serializable {
+public class TokenCreationPayload implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_TTL = "ttl";
diff --git a/src/main/java/video/api/client/api/models/TokenListResponse.java b/src/main/java/video/api/client/api/models/TokenListResponse.java
index 48009bc..de4e9c6 100644
--- a/src/main/java/video/api/client/api/models/TokenListResponse.java
+++ b/src/main/java/video/api/client/api/models/TokenListResponse.java
@@ -31,7 +31,7 @@
* TokenListResponse
*/
-public class TokenListResponse implements Serializable {
+public class TokenListResponse implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_DATA = "data";
diff --git a/src/main/java/video/api/client/api/models/TooManyRequests.java b/src/main/java/video/api/client/api/models/TooManyRequests.java
index 6960ce6..96d2a28 100644
--- a/src/main/java/video/api/client/api/models/TooManyRequests.java
+++ b/src/main/java/video/api/client/api/models/TooManyRequests.java
@@ -27,7 +27,7 @@
* TooManyRequests
*/
-public class TooManyRequests implements Serializable {
+public class TooManyRequests implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_TYPE = "type";
diff --git a/src/main/java/video/api/client/api/models/UnrecognizedRequestUrl.java b/src/main/java/video/api/client/api/models/UnrecognizedRequestUrl.java
index 996d93b..6ab0b5f 100644
--- a/src/main/java/video/api/client/api/models/UnrecognizedRequestUrl.java
+++ b/src/main/java/video/api/client/api/models/UnrecognizedRequestUrl.java
@@ -27,7 +27,7 @@
* UnrecognizedRequestUrl
*/
-public class UnrecognizedRequestUrl implements Serializable {
+public class UnrecognizedRequestUrl implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_TYPE = "type";
diff --git a/src/main/java/video/api/client/api/models/UploadToken.java b/src/main/java/video/api/client/api/models/UploadToken.java
index ecfe142..523395a 100644
--- a/src/main/java/video/api/client/api/models/UploadToken.java
+++ b/src/main/java/video/api/client/api/models/UploadToken.java
@@ -28,7 +28,7 @@
* UploadToken
*/
-public class UploadToken implements Serializable {
+public class UploadToken implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_TOKEN = "token";
diff --git a/src/main/java/video/api/client/api/models/Video.java b/src/main/java/video/api/client/api/models/Video.java
index b4042ea..eddffbc 100644
--- a/src/main/java/video/api/client/api/models/Video.java
+++ b/src/main/java/video/api/client/api/models/Video.java
@@ -33,7 +33,7 @@
* Video
*/
-public class Video implements Serializable {
+public class Video implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_VIDEO_ID = "videoId";
diff --git a/src/main/java/video/api/client/api/models/VideoAssets.java b/src/main/java/video/api/client/api/models/VideoAssets.java
index aff5058..f29e085 100644
--- a/src/main/java/video/api/client/api/models/VideoAssets.java
+++ b/src/main/java/video/api/client/api/models/VideoAssets.java
@@ -29,7 +29,7 @@
*/
@ApiModel(description = "Collection of details about the video object that you can use to work with the video object.")
-public class VideoAssets implements Serializable {
+public class VideoAssets implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_HLS = "hls";
diff --git a/src/main/java/video/api/client/api/models/VideoClip.java b/src/main/java/video/api/client/api/models/VideoClip.java
index 7e1c078..0a277a3 100644
--- a/src/main/java/video/api/client/api/models/VideoClip.java
+++ b/src/main/java/video/api/client/api/models/VideoClip.java
@@ -31,7 +31,7 @@
*/
@ApiModel(description = "Use this object to create a smaller clip from a video you upload. - You can only create video clips in the same request where you create the video container. - You cannot update the starting or ending timestamps of a video clip after you created the video container. - When you upload a video file into a container where you defined a starting and ending timestamp, the API trims the video according to those timestamps to create a clip.")
-public class VideoClip implements Serializable {
+public class VideoClip implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_START_TIMECODE = "startTimecode";
diff --git a/src/main/java/video/api/client/api/models/VideoCreationPayload.java b/src/main/java/video/api/client/api/models/VideoCreationPayload.java
index 6a77fe7..4f9062f 100644
--- a/src/main/java/video/api/client/api/models/VideoCreationPayload.java
+++ b/src/main/java/video/api/client/api/models/VideoCreationPayload.java
@@ -32,7 +32,7 @@
* VideoCreationPayload
*/
-public class VideoCreationPayload implements Serializable {
+public class VideoCreationPayload implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_TITLE = "title";
diff --git a/src/main/java/video/api/client/api/models/VideoSource.java b/src/main/java/video/api/client/api/models/VideoSource.java
index 4068561..83ef57c 100644
--- a/src/main/java/video/api/client/api/models/VideoSource.java
+++ b/src/main/java/video/api/client/api/models/VideoSource.java
@@ -29,7 +29,7 @@
*/
@ApiModel(description = "Source information about the video.")
-public class VideoSource implements Serializable {
+public class VideoSource implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_URI = "uri";
diff --git a/src/main/java/video/api/client/api/models/VideoSourceLiveStream.java b/src/main/java/video/api/client/api/models/VideoSourceLiveStream.java
index e9732f6..c2d2e75 100644
--- a/src/main/java/video/api/client/api/models/VideoSourceLiveStream.java
+++ b/src/main/java/video/api/client/api/models/VideoSourceLiveStream.java
@@ -31,7 +31,7 @@
*/
@ApiModel(description = "This appears if the video is from a Live Record.")
-public class VideoSourceLiveStream implements Serializable {
+public class VideoSourceLiveStream implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_LIVE_STREAM_ID = "liveStreamId";
diff --git a/src/main/java/video/api/client/api/models/VideoSourceLiveStreamLink.java b/src/main/java/video/api/client/api/models/VideoSourceLiveStreamLink.java
index 4f9449a..2b4406f 100644
--- a/src/main/java/video/api/client/api/models/VideoSourceLiveStreamLink.java
+++ b/src/main/java/video/api/client/api/models/VideoSourceLiveStreamLink.java
@@ -27,7 +27,7 @@
* VideoSourceLiveStreamLink
*/
-public class VideoSourceLiveStreamLink implements Serializable {
+public class VideoSourceLiveStreamLink implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_REL = "rel";
diff --git a/src/main/java/video/api/client/api/models/VideoStatus.java b/src/main/java/video/api/client/api/models/VideoStatus.java
index 43cc3b7..77afbbc 100644
--- a/src/main/java/video/api/client/api/models/VideoStatus.java
+++ b/src/main/java/video/api/client/api/models/VideoStatus.java
@@ -29,7 +29,7 @@
* VideoStatus
*/
-public class VideoStatus implements Serializable {
+public class VideoStatus implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_INGEST = "ingest";
diff --git a/src/main/java/video/api/client/api/models/VideoStatusEncoding.java b/src/main/java/video/api/client/api/models/VideoStatusEncoding.java
index e5994c9..a06886f 100644
--- a/src/main/java/video/api/client/api/models/VideoStatusEncoding.java
+++ b/src/main/java/video/api/client/api/models/VideoStatusEncoding.java
@@ -31,7 +31,7 @@
* VideoStatusEncoding
*/
-public class VideoStatusEncoding implements Serializable {
+public class VideoStatusEncoding implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_PLAYABLE = "playable";
diff --git a/src/main/java/video/api/client/api/models/VideoStatusEncodingMetadata.java b/src/main/java/video/api/client/api/models/VideoStatusEncodingMetadata.java
index 3e54671..b1dd370 100644
--- a/src/main/java/video/api/client/api/models/VideoStatusEncodingMetadata.java
+++ b/src/main/java/video/api/client/api/models/VideoStatusEncodingMetadata.java
@@ -28,7 +28,7 @@
* VideoStatusEncodingMetadata
*/
-public class VideoStatusEncodingMetadata implements Serializable {
+public class VideoStatusEncodingMetadata implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_WIDTH = "width";
diff --git a/src/main/java/video/api/client/api/models/VideoStatusIngest.java b/src/main/java/video/api/client/api/models/VideoStatusIngest.java
index 897aa1d..e3ff5da 100644
--- a/src/main/java/video/api/client/api/models/VideoStatusIngest.java
+++ b/src/main/java/video/api/client/api/models/VideoStatusIngest.java
@@ -32,7 +32,7 @@
*/
@ApiModel(description = "Details about the capturing, transferring, and storing of your video for use immediately or in the future.")
-public class VideoStatusIngest implements Serializable {
+public class VideoStatusIngest implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
/**
diff --git a/src/main/java/video/api/client/api/models/VideoStatusIngestReceivedParts.java b/src/main/java/video/api/client/api/models/VideoStatusIngestReceivedParts.java
index 5e4378d..da8d1f4 100644
--- a/src/main/java/video/api/client/api/models/VideoStatusIngestReceivedParts.java
+++ b/src/main/java/video/api/client/api/models/VideoStatusIngestReceivedParts.java
@@ -29,7 +29,7 @@
* VideoStatusIngestReceivedParts
*/
-public class VideoStatusIngestReceivedParts implements Serializable {
+public class VideoStatusIngestReceivedParts implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_PARTS = "parts";
diff --git a/src/main/java/video/api/client/api/models/VideoThumbnailPickPayload.java b/src/main/java/video/api/client/api/models/VideoThumbnailPickPayload.java
index 7877eeb..f61a47a 100644
--- a/src/main/java/video/api/client/api/models/VideoThumbnailPickPayload.java
+++ b/src/main/java/video/api/client/api/models/VideoThumbnailPickPayload.java
@@ -27,7 +27,7 @@
* VideoThumbnailPickPayload
*/
-public class VideoThumbnailPickPayload implements Serializable {
+public class VideoThumbnailPickPayload implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_TIMECODE = "timecode";
diff --git a/src/main/java/video/api/client/api/models/VideoUpdatePayload.java b/src/main/java/video/api/client/api/models/VideoUpdatePayload.java
index 19557f6..66e9bb5 100644
--- a/src/main/java/video/api/client/api/models/VideoUpdatePayload.java
+++ b/src/main/java/video/api/client/api/models/VideoUpdatePayload.java
@@ -30,7 +30,7 @@
* VideoUpdatePayload
*/
-public class VideoUpdatePayload implements Serializable {
+public class VideoUpdatePayload implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_PLAYER_ID = "playerId";
diff --git a/src/main/java/video/api/client/api/models/VideoWatermark.java b/src/main/java/video/api/client/api/models/VideoWatermark.java
index 1752297..a92aea4 100644
--- a/src/main/java/video/api/client/api/models/VideoWatermark.java
+++ b/src/main/java/video/api/client/api/models/VideoWatermark.java
@@ -27,7 +27,7 @@
* VideoWatermark
*/
-public class VideoWatermark implements Serializable {
+public class VideoWatermark implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_ID = "id";
diff --git a/src/main/java/video/api/client/api/models/VideosListResponse.java b/src/main/java/video/api/client/api/models/VideosListResponse.java
index 08b1156..9d04f74 100644
--- a/src/main/java/video/api/client/api/models/VideosListResponse.java
+++ b/src/main/java/video/api/client/api/models/VideosListResponse.java
@@ -31,7 +31,7 @@
* VideosListResponse
*/
-public class VideosListResponse implements Serializable {
+public class VideosListResponse implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_DATA = "data";
diff --git a/src/main/java/video/api/client/api/models/Watermark.java b/src/main/java/video/api/client/api/models/Watermark.java
index b2a3cac..5e4a711 100644
--- a/src/main/java/video/api/client/api/models/Watermark.java
+++ b/src/main/java/video/api/client/api/models/Watermark.java
@@ -28,7 +28,7 @@
* Watermark
*/
-public class Watermark implements Serializable {
+public class Watermark implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_WATERMARK_ID = "watermarkId";
diff --git a/src/main/java/video/api/client/api/models/WatermarksListResponse.java b/src/main/java/video/api/client/api/models/WatermarksListResponse.java
index e02db28..06ab46f 100644
--- a/src/main/java/video/api/client/api/models/WatermarksListResponse.java
+++ b/src/main/java/video/api/client/api/models/WatermarksListResponse.java
@@ -31,7 +31,7 @@
* WatermarksListResponse
*/
-public class WatermarksListResponse implements Serializable {
+public class WatermarksListResponse implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_DATA = "data";
diff --git a/src/main/java/video/api/client/api/models/Webhook.java b/src/main/java/video/api/client/api/models/Webhook.java
index 8aefc90..5309102 100644
--- a/src/main/java/video/api/client/api/models/Webhook.java
+++ b/src/main/java/video/api/client/api/models/Webhook.java
@@ -30,7 +30,7 @@
* Webhook
*/
-public class Webhook implements Serializable {
+public class Webhook implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_WEBHOOK_ID = "webhookId";
diff --git a/src/main/java/video/api/client/api/models/WebhooksCreationPayload.java b/src/main/java/video/api/client/api/models/WebhooksCreationPayload.java
index d219e01..ce0411f 100644
--- a/src/main/java/video/api/client/api/models/WebhooksCreationPayload.java
+++ b/src/main/java/video/api/client/api/models/WebhooksCreationPayload.java
@@ -29,7 +29,7 @@
* WebhooksCreationPayload
*/
-public class WebhooksCreationPayload implements Serializable {
+public class WebhooksCreationPayload implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_EVENTS = "events";
diff --git a/src/main/java/video/api/client/api/models/WebhooksListResponse.java b/src/main/java/video/api/client/api/models/WebhooksListResponse.java
index 08d5e4d..530e440 100644
--- a/src/main/java/video/api/client/api/models/WebhooksListResponse.java
+++ b/src/main/java/video/api/client/api/models/WebhooksListResponse.java
@@ -31,7 +31,7 @@
* WebhooksListResponse
*/
-public class WebhooksListResponse implements Serializable {
+public class WebhooksListResponse implements Serializable, DeepObject {
private static final long serialVersionUID = 1L;
public static final String SERIALIZED_NAME_DATA = "data";