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.
- checksums.yaml +4 -4
- data/README.md +6 -0
- data/docs/AccountsApi.md +74 -0
- data/docs/GetCommentAutomation200ResponseLogsInner.md +4 -0
- data/docs/GetCommentAutomation200ResponseLogsInnerPlatformError.md +20 -0
- data/docs/ListTikTokCommercialMusic200Response.md +18 -0
- data/docs/ListTikTokCommercialMusic200ResponseTracksInner.md +34 -0
- data/docs/ListTikTokCommercialMusic200ResponseTracksInnerClip.md +20 -0
- data/docs/TikTokPlatformData.md +5 -1
- data/docs/TikTokPlatformDataMusicSoundInfo.md +24 -0
- data/lib/zernio-sdk/api/accounts_api.rb +74 -0
- data/lib/zernio-sdk/models/get_comment_automation200_response_logs_inner.rb +20 -1
- data/lib/zernio-sdk/models/get_comment_automation200_response_logs_inner_platform_error.rb +157 -0
- data/lib/zernio-sdk/models/list_tik_tok_commercial_music200_response.rb +149 -0
- data/lib/zernio-sdk/models/list_tik_tok_commercial_music200_response_tracks_inner.rb +224 -0
- data/lib/zernio-sdk/models/list_tik_tok_commercial_music200_response_tracks_inner_clip.rb +157 -0
- data/lib/zernio-sdk/models/tik_tok_platform_data.rb +49 -2
- data/lib/zernio-sdk/models/tik_tok_platform_data_music_sound_info.rb +264 -0
- data/lib/zernio-sdk/version.rb +1 -1
- data/lib/zernio-sdk.rb +5 -0
- data/openapi.yaml +88 -1
- data/spec/api/accounts_api_spec.rb +13 -0
- data/spec/models/get_comment_automation200_response_logs_inner_platform_error_spec.rb +42 -0
- data/spec/models/get_comment_automation200_response_logs_inner_spec.rb +12 -0
- data/spec/models/list_tik_tok_commercial_music200_response_spec.rb +36 -0
- data/spec/models/list_tik_tok_commercial_music200_response_tracks_inner_clip_spec.rb +42 -0
- data/spec/models/list_tik_tok_commercial_music200_response_tracks_inner_spec.rb +84 -0
- data/spec/models/tik_tok_platform_data_music_sound_info_spec.rb +54 -0
- data/spec/models/tik_tok_platform_data_spec.rb +12 -0
- data/zernio-sdk-0.0.947.gem +0 -0
- metadata +22 -2
- 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
|