late-sdk 0.0.945 → 0.0.947

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -0
  3. data/docs/AccountsApi.md +74 -0
  4. data/docs/GetCommentAutomation200ResponseLogsInner.md +4 -0
  5. data/docs/GetCommentAutomation200ResponseLogsInnerPlatformError.md +20 -0
  6. data/docs/ListTikTokCommercialMusic200Response.md +18 -0
  7. data/docs/ListTikTokCommercialMusic200ResponseTracksInner.md +34 -0
  8. data/docs/ListTikTokCommercialMusic200ResponseTracksInnerClip.md +20 -0
  9. data/docs/TikTokPlatformData.md +5 -1
  10. data/docs/TikTokPlatformDataMusicSoundInfo.md +24 -0
  11. data/lib/zernio-sdk/api/accounts_api.rb +74 -0
  12. data/lib/zernio-sdk/models/get_comment_automation200_response_logs_inner.rb +20 -1
  13. data/lib/zernio-sdk/models/get_comment_automation200_response_logs_inner_platform_error.rb +157 -0
  14. data/lib/zernio-sdk/models/list_tik_tok_commercial_music200_response.rb +149 -0
  15. data/lib/zernio-sdk/models/list_tik_tok_commercial_music200_response_tracks_inner.rb +224 -0
  16. data/lib/zernio-sdk/models/list_tik_tok_commercial_music200_response_tracks_inner_clip.rb +157 -0
  17. data/lib/zernio-sdk/models/tik_tok_platform_data.rb +49 -2
  18. data/lib/zernio-sdk/models/tik_tok_platform_data_music_sound_info.rb +264 -0
  19. data/lib/zernio-sdk/version.rb +1 -1
  20. data/lib/zernio-sdk.rb +5 -0
  21. data/openapi.yaml +88 -1
  22. data/spec/api/accounts_api_spec.rb +13 -0
  23. data/spec/models/get_comment_automation200_response_logs_inner_platform_error_spec.rb +42 -0
  24. data/spec/models/get_comment_automation200_response_logs_inner_spec.rb +12 -0
  25. data/spec/models/list_tik_tok_commercial_music200_response_spec.rb +36 -0
  26. data/spec/models/list_tik_tok_commercial_music200_response_tracks_inner_clip_spec.rb +42 -0
  27. data/spec/models/list_tik_tok_commercial_music200_response_tracks_inner_spec.rb +84 -0
  28. data/spec/models/tik_tok_platform_data_music_sound_info_spec.rb +54 -0
  29. data/spec/models/tik_tok_platform_data_spec.rb +12 -0
  30. data/zernio-sdk-0.0.947.gem +0 -0
  31. metadata +22 -2
  32. data/zernio-sdk-0.0.945.gem +0 -0
@@ -0,0 +1,149 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api Versioning and deprecation: all endpoints are versioned in the URL path (current version: /v1). Breaking changes only ship in a new path version; existing versions keep working. Deprecated operations are marked 'deprecated: true' in this spec and announced in the changelog (https://zernio.com/changelog) before removal. Errors: every 4xx/5xx response is application/json with a machine-readable 'code' and a human-readable 'error' message (see the ErrorResponse schema).
5
+
6
+ The version of the OpenAPI document: 1.0.4
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Zernio
17
+ class ListTikTokCommercialMusic200Response < ApiModelBase
18
+ attr_accessor :tracks
19
+
20
+ # Attribute mapping from ruby-style variable name to JSON key.
21
+ def self.attribute_map
22
+ {
23
+ :'tracks' => :'tracks'
24
+ }
25
+ end
26
+
27
+ # Returns attribute mapping this model knows about
28
+ def self.acceptable_attribute_map
29
+ attribute_map
30
+ end
31
+
32
+ # Returns all the JSON keys this model knows about
33
+ def self.acceptable_attributes
34
+ acceptable_attribute_map.values
35
+ end
36
+
37
+ # Attribute type mapping.
38
+ def self.openapi_types
39
+ {
40
+ :'tracks' => :'Array<ListTikTokCommercialMusic200ResponseTracksInner>'
41
+ }
42
+ end
43
+
44
+ # List of attributes with nullable: true
45
+ def self.openapi_nullable
46
+ Set.new([
47
+ ])
48
+ end
49
+
50
+ # Initializes the object
51
+ # @param [Hash] attributes Model attributes in the form of hash
52
+ def initialize(attributes = {})
53
+ if (!attributes.is_a?(Hash))
54
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::ListTikTokCommercialMusic200Response` initialize method"
55
+ end
56
+
57
+ # check to see if the attribute exists and convert string to symbol for hash key
58
+ acceptable_attribute_map = self.class.acceptable_attribute_map
59
+ attributes = attributes.each_with_object({}) { |(k, v), h|
60
+ if (!acceptable_attribute_map.key?(k.to_sym))
61
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::ListTikTokCommercialMusic200Response`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
62
+ end
63
+ h[k.to_sym] = v
64
+ }
65
+
66
+ if attributes.key?(:'tracks')
67
+ if (value = attributes[:'tracks']).is_a?(Array)
68
+ self.tracks = value
69
+ end
70
+ end
71
+ end
72
+
73
+ # Show invalid properties with the reasons. Usually used together with valid?
74
+ # @return Array for valid properties with the reasons
75
+ def list_invalid_properties
76
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
77
+ invalid_properties = Array.new
78
+ invalid_properties
79
+ end
80
+
81
+ # Check to see if the all the properties in the model are valid
82
+ # @return true if the model is valid
83
+ def valid?
84
+ warn '[DEPRECATED] the `valid?` method is obsolete'
85
+ true
86
+ end
87
+
88
+ # Checks equality by comparing each attribute.
89
+ # @param [Object] Object to be compared
90
+ def ==(o)
91
+ return true if self.equal?(o)
92
+ self.class == o.class &&
93
+ tracks == o.tracks
94
+ end
95
+
96
+ # @see the `==` method
97
+ # @param [Object] Object to be compared
98
+ def eql?(o)
99
+ self == o
100
+ end
101
+
102
+ # Calculates hash code according to all attributes.
103
+ # @return [Integer] Hash code
104
+ def hash
105
+ [tracks].hash
106
+ end
107
+
108
+ # Builds the object from hash
109
+ # @param [Hash] attributes Model attributes in the form of hash
110
+ # @return [Object] Returns the model itself
111
+ def self.build_from_hash(attributes)
112
+ return nil unless attributes.is_a?(Hash)
113
+ attributes = attributes.transform_keys(&:to_sym)
114
+ transformed_hash = {}
115
+ openapi_types.each_pair do |key, type|
116
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
117
+ transformed_hash["#{key}"] = nil
118
+ elsif type =~ /\AArray<(.*)>/i
119
+ # check to ensure the input is an array given that the attribute
120
+ # is documented as an array but the input is not
121
+ if attributes[attribute_map[key]].is_a?(Array)
122
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
123
+ end
124
+ elsif !attributes[attribute_map[key]].nil?
125
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
126
+ end
127
+ end
128
+ new(transformed_hash)
129
+ end
130
+
131
+ # Returns the object in the form of hash
132
+ # @return [Hash] Returns the object in the form of hash
133
+ def to_hash
134
+ hash = {}
135
+ self.class.attribute_map.each_pair do |attr, param|
136
+ value = self.send(attr)
137
+ if value.nil?
138
+ is_nullable = self.class.openapi_nullable.include?(attr)
139
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
140
+ end
141
+
142
+ hash[param] = _to_hash(value)
143
+ end
144
+ hash
145
+ end
146
+
147
+ end
148
+
149
+ end
@@ -0,0 +1,224 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api Versioning and deprecation: all endpoints are versioned in the URL path (current version: /v1). Breaking changes only ship in a new path version; existing versions keep working. Deprecated operations are marked 'deprecated: true' in this spec and announced in the changelog (https://zernio.com/changelog) before removal. Errors: every 4xx/5xx response is application/json with a machine-readable 'code' and a human-readable 'error' message (see the ErrorResponse schema).
5
+
6
+ The version of the OpenAPI document: 1.0.4
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Zernio
17
+ class ListTikTokCommercialMusic200ResponseTracksInner < ApiModelBase
18
+ # The commercial_music_id to send as musicSoundId
19
+ attr_accessor :id
20
+
21
+ attr_accessor :name
22
+
23
+ attr_accessor :artist
24
+
25
+ attr_accessor :duration_sec
26
+
27
+ attr_accessor :genres
28
+
29
+ # Preview audio of the full track
30
+ attr_accessor :preview_url
31
+
32
+ attr_accessor :thumbnail_url
33
+
34
+ # Position in the trending chart, 1 first
35
+ attr_accessor :rank
36
+
37
+ attr_accessor :clip
38
+
39
+ # Attribute mapping from ruby-style variable name to JSON key.
40
+ def self.attribute_map
41
+ {
42
+ :'id' => :'id',
43
+ :'name' => :'name',
44
+ :'artist' => :'artist',
45
+ :'duration_sec' => :'durationSec',
46
+ :'genres' => :'genres',
47
+ :'preview_url' => :'previewUrl',
48
+ :'thumbnail_url' => :'thumbnailUrl',
49
+ :'rank' => :'rank',
50
+ :'clip' => :'clip'
51
+ }
52
+ end
53
+
54
+ # Returns attribute mapping this model knows about
55
+ def self.acceptable_attribute_map
56
+ attribute_map
57
+ end
58
+
59
+ # Returns all the JSON keys this model knows about
60
+ def self.acceptable_attributes
61
+ acceptable_attribute_map.values
62
+ end
63
+
64
+ # Attribute type mapping.
65
+ def self.openapi_types
66
+ {
67
+ :'id' => :'String',
68
+ :'name' => :'String',
69
+ :'artist' => :'String',
70
+ :'duration_sec' => :'Integer',
71
+ :'genres' => :'Array<String>',
72
+ :'preview_url' => :'String',
73
+ :'thumbnail_url' => :'String',
74
+ :'rank' => :'Integer',
75
+ :'clip' => :'ListTikTokCommercialMusic200ResponseTracksInnerClip'
76
+ }
77
+ end
78
+
79
+ # List of attributes with nullable: true
80
+ def self.openapi_nullable
81
+ Set.new([
82
+ ])
83
+ end
84
+
85
+ # Initializes the object
86
+ # @param [Hash] attributes Model attributes in the form of hash
87
+ def initialize(attributes = {})
88
+ if (!attributes.is_a?(Hash))
89
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::ListTikTokCommercialMusic200ResponseTracksInner` initialize method"
90
+ end
91
+
92
+ # check to see if the attribute exists and convert string to symbol for hash key
93
+ acceptable_attribute_map = self.class.acceptable_attribute_map
94
+ attributes = attributes.each_with_object({}) { |(k, v), h|
95
+ if (!acceptable_attribute_map.key?(k.to_sym))
96
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::ListTikTokCommercialMusic200ResponseTracksInner`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
97
+ end
98
+ h[k.to_sym] = v
99
+ }
100
+
101
+ if attributes.key?(:'id')
102
+ self.id = attributes[:'id']
103
+ end
104
+
105
+ if attributes.key?(:'name')
106
+ self.name = attributes[:'name']
107
+ end
108
+
109
+ if attributes.key?(:'artist')
110
+ self.artist = attributes[:'artist']
111
+ end
112
+
113
+ if attributes.key?(:'duration_sec')
114
+ self.duration_sec = attributes[:'duration_sec']
115
+ end
116
+
117
+ if attributes.key?(:'genres')
118
+ if (value = attributes[:'genres']).is_a?(Array)
119
+ self.genres = value
120
+ end
121
+ end
122
+
123
+ if attributes.key?(:'preview_url')
124
+ self.preview_url = attributes[:'preview_url']
125
+ end
126
+
127
+ if attributes.key?(:'thumbnail_url')
128
+ self.thumbnail_url = attributes[:'thumbnail_url']
129
+ end
130
+
131
+ if attributes.key?(:'rank')
132
+ self.rank = attributes[:'rank']
133
+ end
134
+
135
+ if attributes.key?(:'clip')
136
+ self.clip = attributes[:'clip']
137
+ end
138
+ end
139
+
140
+ # Show invalid properties with the reasons. Usually used together with valid?
141
+ # @return Array for valid properties with the reasons
142
+ def list_invalid_properties
143
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
144
+ invalid_properties = Array.new
145
+ invalid_properties
146
+ end
147
+
148
+ # Check to see if the all the properties in the model are valid
149
+ # @return true if the model is valid
150
+ def valid?
151
+ warn '[DEPRECATED] the `valid?` method is obsolete'
152
+ true
153
+ end
154
+
155
+ # Checks equality by comparing each attribute.
156
+ # @param [Object] Object to be compared
157
+ def ==(o)
158
+ return true if self.equal?(o)
159
+ self.class == o.class &&
160
+ id == o.id &&
161
+ name == o.name &&
162
+ artist == o.artist &&
163
+ duration_sec == o.duration_sec &&
164
+ genres == o.genres &&
165
+ preview_url == o.preview_url &&
166
+ thumbnail_url == o.thumbnail_url &&
167
+ rank == o.rank &&
168
+ clip == o.clip
169
+ end
170
+
171
+ # @see the `==` method
172
+ # @param [Object] Object to be compared
173
+ def eql?(o)
174
+ self == o
175
+ end
176
+
177
+ # Calculates hash code according to all attributes.
178
+ # @return [Integer] Hash code
179
+ def hash
180
+ [id, name, artist, duration_sec, genres, preview_url, thumbnail_url, rank, clip].hash
181
+ end
182
+
183
+ # Builds the object from hash
184
+ # @param [Hash] attributes Model attributes in the form of hash
185
+ # @return [Object] Returns the model itself
186
+ def self.build_from_hash(attributes)
187
+ return nil unless attributes.is_a?(Hash)
188
+ attributes = attributes.transform_keys(&:to_sym)
189
+ transformed_hash = {}
190
+ openapi_types.each_pair do |key, type|
191
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
192
+ transformed_hash["#{key}"] = nil
193
+ elsif type =~ /\AArray<(.*)>/i
194
+ # check to ensure the input is an array given that the attribute
195
+ # is documented as an array but the input is not
196
+ if attributes[attribute_map[key]].is_a?(Array)
197
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
198
+ end
199
+ elsif !attributes[attribute_map[key]].nil?
200
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
201
+ end
202
+ end
203
+ new(transformed_hash)
204
+ end
205
+
206
+ # Returns the object in the form of hash
207
+ # @return [Hash] Returns the object in the form of hash
208
+ def to_hash
209
+ hash = {}
210
+ self.class.attribute_map.each_pair do |attr, param|
211
+ value = self.send(attr)
212
+ if value.nil?
213
+ is_nullable = self.class.openapi_nullable.include?(attr)
214
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
215
+ end
216
+
217
+ hash[param] = _to_hash(value)
218
+ end
219
+ hash
220
+ end
221
+
222
+ end
223
+
224
+ end
@@ -0,0 +1,157 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api Versioning and deprecation: all endpoints are versioned in the URL path (current version: /v1). Breaking changes only ship in a new path version; existing versions keep working. Deprecated operations are marked 'deprecated: true' in this spec and announced in the changelog (https://zernio.com/changelog) before removal. Errors: every 4xx/5xx response is application/json with a machine-readable 'code' and a human-readable 'error' message (see the ErrorResponse schema).
5
+
6
+ The version of the OpenAPI document: 1.0.4
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Zernio
17
+ # The trending excerpt of the track, when TikTok provides one
18
+ class ListTikTokCommercialMusic200ResponseTracksInnerClip < ApiModelBase
19
+ attr_accessor :duration_sec
20
+
21
+ attr_accessor :preview_url
22
+
23
+ # Attribute mapping from ruby-style variable name to JSON key.
24
+ def self.attribute_map
25
+ {
26
+ :'duration_sec' => :'durationSec',
27
+ :'preview_url' => :'previewUrl'
28
+ }
29
+ end
30
+
31
+ # Returns attribute mapping this model knows about
32
+ def self.acceptable_attribute_map
33
+ attribute_map
34
+ end
35
+
36
+ # Returns all the JSON keys this model knows about
37
+ def self.acceptable_attributes
38
+ acceptable_attribute_map.values
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ def self.openapi_types
43
+ {
44
+ :'duration_sec' => :'Integer',
45
+ :'preview_url' => :'String'
46
+ }
47
+ end
48
+
49
+ # List of attributes with nullable: true
50
+ def self.openapi_nullable
51
+ Set.new([
52
+ ])
53
+ end
54
+
55
+ # Initializes the object
56
+ # @param [Hash] attributes Model attributes in the form of hash
57
+ def initialize(attributes = {})
58
+ if (!attributes.is_a?(Hash))
59
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::ListTikTokCommercialMusic200ResponseTracksInnerClip` initialize method"
60
+ end
61
+
62
+ # check to see if the attribute exists and convert string to symbol for hash key
63
+ acceptable_attribute_map = self.class.acceptable_attribute_map
64
+ attributes = attributes.each_with_object({}) { |(k, v), h|
65
+ if (!acceptable_attribute_map.key?(k.to_sym))
66
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::ListTikTokCommercialMusic200ResponseTracksInnerClip`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
67
+ end
68
+ h[k.to_sym] = v
69
+ }
70
+
71
+ if attributes.key?(:'duration_sec')
72
+ self.duration_sec = attributes[:'duration_sec']
73
+ end
74
+
75
+ if attributes.key?(:'preview_url')
76
+ self.preview_url = attributes[:'preview_url']
77
+ end
78
+ end
79
+
80
+ # Show invalid properties with the reasons. Usually used together with valid?
81
+ # @return Array for valid properties with the reasons
82
+ def list_invalid_properties
83
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
84
+ invalid_properties = Array.new
85
+ invalid_properties
86
+ end
87
+
88
+ # Check to see if the all the properties in the model are valid
89
+ # @return true if the model is valid
90
+ def valid?
91
+ warn '[DEPRECATED] the `valid?` method is obsolete'
92
+ true
93
+ end
94
+
95
+ # Checks equality by comparing each attribute.
96
+ # @param [Object] Object to be compared
97
+ def ==(o)
98
+ return true if self.equal?(o)
99
+ self.class == o.class &&
100
+ duration_sec == o.duration_sec &&
101
+ preview_url == o.preview_url
102
+ end
103
+
104
+ # @see the `==` method
105
+ # @param [Object] Object to be compared
106
+ def eql?(o)
107
+ self == o
108
+ end
109
+
110
+ # Calculates hash code according to all attributes.
111
+ # @return [Integer] Hash code
112
+ def hash
113
+ [duration_sec, preview_url].hash
114
+ end
115
+
116
+ # Builds the object from hash
117
+ # @param [Hash] attributes Model attributes in the form of hash
118
+ # @return [Object] Returns the model itself
119
+ def self.build_from_hash(attributes)
120
+ return nil unless attributes.is_a?(Hash)
121
+ attributes = attributes.transform_keys(&:to_sym)
122
+ transformed_hash = {}
123
+ openapi_types.each_pair do |key, type|
124
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
125
+ transformed_hash["#{key}"] = nil
126
+ elsif type =~ /\AArray<(.*)>/i
127
+ # check to ensure the input is an array given that the attribute
128
+ # is documented as an array but the input is not
129
+ if attributes[attribute_map[key]].is_a?(Array)
130
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
131
+ end
132
+ elsif !attributes[attribute_map[key]].nil?
133
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
134
+ end
135
+ end
136
+ new(transformed_hash)
137
+ end
138
+
139
+ # Returns the object in the form of hash
140
+ # @return [Hash] Returns the object in the form of hash
141
+ def to_hash
142
+ hash = {}
143
+ self.class.attribute_map.each_pair do |attr, param|
144
+ value = self.send(attr)
145
+ if value.nil?
146
+ is_nullable = self.class.openapi_nullable.include?(attr)
147
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
148
+ end
149
+
150
+ hash[param] = _to_hash(value)
151
+ end
152
+ hash
153
+ end
154
+
155
+ end
156
+
157
+ end
@@ -58,9 +58,14 @@ module Zernio
58
58
  # Optional for photo carousels. Index of image to use as cover, 0-based (defaults to 0/first image).
59
59
  attr_accessor :photo_cover_index
60
60
 
61
- # When true, TikTok may add recommended music (photos only)
61
+ # When true, TikTok may add recommended music (photos only). With the brand-organic or branded-content toggle on, TikTok allows Commercial Music Library tracks only, so this attaches nothing there; use musicSoundInfo instead.
62
62
  attr_accessor :auto_add_music
63
63
 
64
+ attr_accessor :music_sound_info
65
+
66
+ # Volume of the video's own sound when a commercial track is attached (0 to 100). Requires musicSoundInfo. Video posts only.
67
+ attr_accessor :video_original_sound_volume
68
+
64
69
  # Set true to disclose AI-generated content. Accounts connected through the TikTok for Business app carry the disclosure on video posts only: the business photo endpoint has no AI disclosure field, so true on a direct photo post is rejected at creation rather than published undisclosed. Send draft true to publish such a photo post and set the disclosure in the TikTok app.
65
70
  attr_accessor :video_made_with_ai
66
71
 
@@ -107,6 +112,8 @@ module Zernio
107
112
  :'video_cover_image_url' => :'videoCoverImageUrl',
108
113
  :'photo_cover_index' => :'photoCoverIndex',
109
114
  :'auto_add_music' => :'autoAddMusic',
115
+ :'music_sound_info' => :'musicSoundInfo',
116
+ :'video_original_sound_volume' => :'videoOriginalSoundVolume',
110
117
  :'video_made_with_ai' => :'videoMadeWithAi',
111
118
  :'description' => :'description'
112
119
  }
@@ -140,6 +147,8 @@ module Zernio
140
147
  :'video_cover_image_url' => :'String',
141
148
  :'photo_cover_index' => :'Integer',
142
149
  :'auto_add_music' => :'Boolean',
150
+ :'music_sound_info' => :'TikTokPlatformDataMusicSoundInfo',
151
+ :'video_original_sound_volume' => :'Integer',
143
152
  :'video_made_with_ai' => :'Boolean',
144
153
  :'description' => :'String'
145
154
  }
@@ -227,6 +236,14 @@ module Zernio
227
236
  self.auto_add_music = attributes[:'auto_add_music']
228
237
  end
229
238
 
239
+ if attributes.key?(:'music_sound_info')
240
+ self.music_sound_info = attributes[:'music_sound_info']
241
+ end
242
+
243
+ if attributes.key?(:'video_original_sound_volume')
244
+ self.video_original_sound_volume = attributes[:'video_original_sound_volume']
245
+ end
246
+
230
247
  if attributes.key?(:'video_made_with_ai')
231
248
  self.video_made_with_ai = attributes[:'video_made_with_ai']
232
249
  end
@@ -249,6 +266,14 @@ module Zernio
249
266
  invalid_properties.push('invalid value for "photo_cover_index", must be greater than or equal to 0.')
250
267
  end
251
268
 
269
+ if !@video_original_sound_volume.nil? && @video_original_sound_volume > 100
270
+ invalid_properties.push('invalid value for "video_original_sound_volume", must be smaller than or equal to 100.')
271
+ end
272
+
273
+ if !@video_original_sound_volume.nil? && @video_original_sound_volume < 0
274
+ invalid_properties.push('invalid value for "video_original_sound_volume", must be greater than or equal to 0.')
275
+ end
276
+
252
277
  if !@description.nil? && @description.to_s.length > 4000
253
278
  invalid_properties.push('invalid value for "description", the character length must be smaller than or equal to 4000.')
254
279
  end
@@ -266,6 +291,8 @@ module Zernio
266
291
  return false unless media_type_validator.valid?(@media_type)
267
292
  return false if !@video_cover_timestamp_ms.nil? && @video_cover_timestamp_ms < 0
268
293
  return false if !@photo_cover_index.nil? && @photo_cover_index < 0
294
+ return false if !@video_original_sound_volume.nil? && @video_original_sound_volume > 100
295
+ return false if !@video_original_sound_volume.nil? && @video_original_sound_volume < 0
269
296
  return false if !@description.nil? && @description.to_s.length > 4000
270
297
  true
271
298
  end
@@ -318,6 +345,24 @@ module Zernio
318
345
  @photo_cover_index = photo_cover_index
319
346
  end
320
347
 
348
+ # Custom attribute writer method with validation
349
+ # @param [Object] video_original_sound_volume Value to be assigned
350
+ def video_original_sound_volume=(video_original_sound_volume)
351
+ if video_original_sound_volume.nil?
352
+ fail ArgumentError, 'video_original_sound_volume cannot be nil'
353
+ end
354
+
355
+ if video_original_sound_volume > 100
356
+ fail ArgumentError, 'invalid value for "video_original_sound_volume", must be smaller than or equal to 100.'
357
+ end
358
+
359
+ if video_original_sound_volume < 0
360
+ fail ArgumentError, 'invalid value for "video_original_sound_volume", must be greater than or equal to 0.'
361
+ end
362
+
363
+ @video_original_sound_volume = video_original_sound_volume
364
+ end
365
+
321
366
  # Custom attribute writer method with validation
322
367
  # @param [Object] description Value to be assigned
323
368
  def description=(description)
@@ -352,6 +397,8 @@ module Zernio
352
397
  video_cover_image_url == o.video_cover_image_url &&
353
398
  photo_cover_index == o.photo_cover_index &&
354
399
  auto_add_music == o.auto_add_music &&
400
+ music_sound_info == o.music_sound_info &&
401
+ video_original_sound_volume == o.video_original_sound_volume &&
355
402
  video_made_with_ai == o.video_made_with_ai &&
356
403
  description == o.description
357
404
  end
@@ -365,7 +412,7 @@ module Zernio
365
412
  # Calculates hash code according to all attributes.
366
413
  # @return [Integer] Hash code
367
414
  def hash
368
- [draft, privacy_level, allow_comment, allow_duet, allow_stitch, commercial_content_type, brand_partner_promote, is_brand_organic_post, content_preview_confirmed, express_consent_given, media_type, video_cover_timestamp_ms, video_cover_image_url, photo_cover_index, auto_add_music, video_made_with_ai, description].hash
415
+ [draft, privacy_level, allow_comment, allow_duet, allow_stitch, commercial_content_type, brand_partner_promote, is_brand_organic_post, content_preview_confirmed, express_consent_given, media_type, video_cover_timestamp_ms, video_cover_image_url, photo_cover_index, auto_add_music, music_sound_info, video_original_sound_volume, video_made_with_ai, description].hash
369
416
  end
370
417
 
371
418
  # Builds the object from hash