late-sdk 0.0.596 → 0.0.597

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 (49) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +8 -0
  3. data/docs/AdInsightsApi.md +155 -9
  4. data/docs/GenerateKeywordHistoricalMetrics200Response.md +22 -0
  5. data/docs/GenerateKeywordHistoricalMetricsRequest.md +32 -0
  6. data/docs/GenerateKeywordIdeas200Response.md +24 -0
  7. data/docs/GenerateKeywordIdeas200ResponsePaging.md +18 -0
  8. data/docs/GenerateKeywordIdeasRequest.md +36 -0
  9. data/docs/GetAdsActivityLog200Response.md +1 -1
  10. data/docs/GetAdsActivityLog200ResponsePaging.md +18 -0
  11. data/docs/ListAdCreatives200Response.md +1 -1
  12. data/docs/ListAdImages200Response.md +1 -1
  13. data/docs/ListAdLabels200Response.md +1 -1
  14. data/docs/ListAdStudies200Response.md +1 -1
  15. data/docs/ListHighDemandPeriods200Response.md +1 -1
  16. data/docs/ListMetaBusinesses200Response.md +1 -1
  17. data/docs/QueryAdInsights200Response.md +5 -1
  18. data/docs/QueryAdInsights200ResponsePaging.md +4 -2
  19. data/lib/zernio-sdk/api/ad_insights_api.rb +158 -13
  20. data/lib/zernio-sdk/models/generate_keyword_historical_metrics200_response.rb +169 -0
  21. data/lib/zernio-sdk/models/generate_keyword_historical_metrics_request.rb +337 -0
  22. data/lib/zernio-sdk/models/generate_keyword_ideas200_response.rb +178 -0
  23. data/lib/zernio-sdk/models/generate_keyword_ideas200_response_paging.rb +149 -0
  24. data/lib/zernio-sdk/models/generate_keyword_ideas_request.rb +378 -0
  25. data/lib/zernio-sdk/models/get_ads_activity_log200_response.rb +1 -1
  26. data/lib/zernio-sdk/models/get_ads_activity_log200_response_paging.rb +149 -0
  27. data/lib/zernio-sdk/models/list_ad_creatives200_response.rb +1 -1
  28. data/lib/zernio-sdk/models/list_ad_images200_response.rb +1 -1
  29. data/lib/zernio-sdk/models/list_ad_labels200_response.rb +1 -1
  30. data/lib/zernio-sdk/models/list_ad_studies200_response.rb +1 -1
  31. data/lib/zernio-sdk/models/list_high_demand_periods200_response.rb +1 -1
  32. data/lib/zernio-sdk/models/list_meta_businesses200_response.rb +1 -1
  33. data/lib/zernio-sdk/models/query_ad_insights200_response.rb +23 -1
  34. data/lib/zernio-sdk/models/query_ad_insights200_response_paging.rb +17 -6
  35. data/lib/zernio-sdk/version.rb +1 -1
  36. data/lib/zernio-sdk.rb +6 -0
  37. data/openapi.yaml +129 -18
  38. data/spec/api/ad_insights_api_spec.rb +30 -3
  39. data/spec/models/generate_keyword_historical_metrics200_response_spec.rb +48 -0
  40. data/spec/models/generate_keyword_historical_metrics_request_spec.rb +82 -0
  41. data/spec/models/generate_keyword_ideas200_response_paging_spec.rb +36 -0
  42. data/spec/models/generate_keyword_ideas200_response_spec.rb +54 -0
  43. data/spec/models/generate_keyword_ideas_request_spec.rb +94 -0
  44. data/spec/models/get_ads_activity_log200_response_paging_spec.rb +36 -0
  45. data/spec/models/query_ad_insights200_response_paging_spec.rb +6 -0
  46. data/spec/models/query_ad_insights200_response_spec.rb +12 -0
  47. data/zernio-sdk-0.0.597.gem +0 -0
  48. metadata +26 -2
  49. data/zernio-sdk-0.0.596.gem +0 -0
@@ -0,0 +1,378 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api
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 GenerateKeywordIdeasRequest < ApiModelBase
18
+ # Zernio googleads SocialAccount id.
19
+ attr_accessor :account_id
20
+
21
+ # Numeric Google Ads customer id (no dashes); only needed when the connection has several accounts.
22
+ attr_accessor :customer_id
23
+
24
+ # Seed terms. Provide these, seedUrl, or both.
25
+ attr_accessor :seed_keywords
26
+
27
+ # Landing page to mine for ideas. Provide this, seedKeywords, or both.
28
+ attr_accessor :seed_url
29
+
30
+ # ISO 3166-1 alpha-2 country codes. Omitted = worldwide.
31
+ attr_accessor :countries
32
+
33
+ # Google languageConstant id (1000 = English).
34
+ attr_accessor :language_constant_id
35
+
36
+ attr_accessor :network
37
+
38
+ attr_accessor :include_adult_keywords
39
+
40
+ attr_accessor :page_size
41
+
42
+ # Cursor from paging.nextPageToken of the previous page.
43
+ attr_accessor :page_token
44
+
45
+ class EnumAttributeValidator
46
+ attr_reader :datatype
47
+ attr_reader :allowable_values
48
+
49
+ def initialize(datatype, allowable_values)
50
+ @allowable_values = allowable_values.map do |value|
51
+ case datatype.to_s
52
+ when /Integer/i
53
+ value.to_i
54
+ when /Float/i
55
+ value.to_f
56
+ else
57
+ value
58
+ end
59
+ end
60
+ end
61
+
62
+ def valid?(value)
63
+ !value || allowable_values.include?(value)
64
+ end
65
+ end
66
+
67
+ # Attribute mapping from ruby-style variable name to JSON key.
68
+ def self.attribute_map
69
+ {
70
+ :'account_id' => :'accountId',
71
+ :'customer_id' => :'customerId',
72
+ :'seed_keywords' => :'seedKeywords',
73
+ :'seed_url' => :'seedUrl',
74
+ :'countries' => :'countries',
75
+ :'language_constant_id' => :'languageConstantId',
76
+ :'network' => :'network',
77
+ :'include_adult_keywords' => :'includeAdultKeywords',
78
+ :'page_size' => :'pageSize',
79
+ :'page_token' => :'pageToken'
80
+ }
81
+ end
82
+
83
+ # Returns attribute mapping this model knows about
84
+ def self.acceptable_attribute_map
85
+ attribute_map
86
+ end
87
+
88
+ # Returns all the JSON keys this model knows about
89
+ def self.acceptable_attributes
90
+ acceptable_attribute_map.values
91
+ end
92
+
93
+ # Attribute type mapping.
94
+ def self.openapi_types
95
+ {
96
+ :'account_id' => :'String',
97
+ :'customer_id' => :'String',
98
+ :'seed_keywords' => :'Array<String>',
99
+ :'seed_url' => :'String',
100
+ :'countries' => :'Array<String>',
101
+ :'language_constant_id' => :'String',
102
+ :'network' => :'String',
103
+ :'include_adult_keywords' => :'Boolean',
104
+ :'page_size' => :'Integer',
105
+ :'page_token' => :'String'
106
+ }
107
+ end
108
+
109
+ # List of attributes with nullable: true
110
+ def self.openapi_nullable
111
+ Set.new([
112
+ ])
113
+ end
114
+
115
+ # Initializes the object
116
+ # @param [Hash] attributes Model attributes in the form of hash
117
+ def initialize(attributes = {})
118
+ if (!attributes.is_a?(Hash))
119
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::GenerateKeywordIdeasRequest` initialize method"
120
+ end
121
+
122
+ # check to see if the attribute exists and convert string to symbol for hash key
123
+ acceptable_attribute_map = self.class.acceptable_attribute_map
124
+ attributes = attributes.each_with_object({}) { |(k, v), h|
125
+ if (!acceptable_attribute_map.key?(k.to_sym))
126
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::GenerateKeywordIdeasRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
127
+ end
128
+ h[k.to_sym] = v
129
+ }
130
+
131
+ if attributes.key?(:'account_id')
132
+ self.account_id = attributes[:'account_id']
133
+ else
134
+ self.account_id = nil
135
+ end
136
+
137
+ if attributes.key?(:'customer_id')
138
+ self.customer_id = attributes[:'customer_id']
139
+ end
140
+
141
+ if attributes.key?(:'seed_keywords')
142
+ if (value = attributes[:'seed_keywords']).is_a?(Array)
143
+ self.seed_keywords = value
144
+ end
145
+ end
146
+
147
+ if attributes.key?(:'seed_url')
148
+ self.seed_url = attributes[:'seed_url']
149
+ end
150
+
151
+ if attributes.key?(:'countries')
152
+ if (value = attributes[:'countries']).is_a?(Array)
153
+ self.countries = value
154
+ end
155
+ end
156
+
157
+ if attributes.key?(:'language_constant_id')
158
+ self.language_constant_id = attributes[:'language_constant_id']
159
+ else
160
+ self.language_constant_id = '1000'
161
+ end
162
+
163
+ if attributes.key?(:'network')
164
+ self.network = attributes[:'network']
165
+ else
166
+ self.network = 'GOOGLE_SEARCH'
167
+ end
168
+
169
+ if attributes.key?(:'include_adult_keywords')
170
+ self.include_adult_keywords = attributes[:'include_adult_keywords']
171
+ end
172
+
173
+ if attributes.key?(:'page_size')
174
+ self.page_size = attributes[:'page_size']
175
+ end
176
+
177
+ if attributes.key?(:'page_token')
178
+ self.page_token = attributes[:'page_token']
179
+ end
180
+ end
181
+
182
+ # Show invalid properties with the reasons. Usually used together with valid?
183
+ # @return Array for valid properties with the reasons
184
+ def list_invalid_properties
185
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
186
+ invalid_properties = Array.new
187
+ if @account_id.nil?
188
+ invalid_properties.push('invalid value for "account_id", account_id cannot be nil.')
189
+ end
190
+
191
+ if !@seed_keywords.nil? && @seed_keywords.length > 20
192
+ invalid_properties.push('invalid value for "seed_keywords", number of items must be less than or equal to 20.')
193
+ end
194
+
195
+ if !@seed_keywords.nil? && @seed_keywords.length < 1
196
+ invalid_properties.push('invalid value for "seed_keywords", number of items must be greater than or equal to 1.')
197
+ end
198
+
199
+ if !@countries.nil? && @countries.length > 10
200
+ invalid_properties.push('invalid value for "countries", number of items must be less than or equal to 10.')
201
+ end
202
+
203
+ if !@countries.nil? && @countries.length < 1
204
+ invalid_properties.push('invalid value for "countries", number of items must be greater than or equal to 1.')
205
+ end
206
+
207
+ if !@page_size.nil? && @page_size > 10000
208
+ invalid_properties.push('invalid value for "page_size", must be smaller than or equal to 10000.')
209
+ end
210
+
211
+ if !@page_size.nil? && @page_size < 1
212
+ invalid_properties.push('invalid value for "page_size", must be greater than or equal to 1.')
213
+ end
214
+
215
+ invalid_properties
216
+ end
217
+
218
+ # Check to see if the all the properties in the model are valid
219
+ # @return true if the model is valid
220
+ def valid?
221
+ warn '[DEPRECATED] the `valid?` method is obsolete'
222
+ return false if @account_id.nil?
223
+ return false if !@seed_keywords.nil? && @seed_keywords.length > 20
224
+ return false if !@seed_keywords.nil? && @seed_keywords.length < 1
225
+ return false if !@countries.nil? && @countries.length > 10
226
+ return false if !@countries.nil? && @countries.length < 1
227
+ network_validator = EnumAttributeValidator.new('String', ["GOOGLE_SEARCH", "GOOGLE_SEARCH_AND_PARTNERS"])
228
+ return false unless network_validator.valid?(@network)
229
+ return false if !@page_size.nil? && @page_size > 10000
230
+ return false if !@page_size.nil? && @page_size < 1
231
+ true
232
+ end
233
+
234
+ # Custom attribute writer method with validation
235
+ # @param [Object] account_id Value to be assigned
236
+ def account_id=(account_id)
237
+ if account_id.nil?
238
+ fail ArgumentError, 'account_id cannot be nil'
239
+ end
240
+
241
+ @account_id = account_id
242
+ end
243
+
244
+ # Custom attribute writer method with validation
245
+ # @param [Object] seed_keywords Value to be assigned
246
+ def seed_keywords=(seed_keywords)
247
+ if seed_keywords.nil?
248
+ fail ArgumentError, 'seed_keywords cannot be nil'
249
+ end
250
+
251
+ if seed_keywords.length > 20
252
+ fail ArgumentError, 'invalid value for "seed_keywords", number of items must be less than or equal to 20.'
253
+ end
254
+
255
+ if seed_keywords.length < 1
256
+ fail ArgumentError, 'invalid value for "seed_keywords", number of items must be greater than or equal to 1.'
257
+ end
258
+
259
+ @seed_keywords = seed_keywords
260
+ end
261
+
262
+ # Custom attribute writer method with validation
263
+ # @param [Object] countries Value to be assigned
264
+ def countries=(countries)
265
+ if countries.nil?
266
+ fail ArgumentError, 'countries cannot be nil'
267
+ end
268
+
269
+ if countries.length > 10
270
+ fail ArgumentError, 'invalid value for "countries", number of items must be less than or equal to 10.'
271
+ end
272
+
273
+ if countries.length < 1
274
+ fail ArgumentError, 'invalid value for "countries", number of items must be greater than or equal to 1.'
275
+ end
276
+
277
+ @countries = countries
278
+ end
279
+
280
+ # Custom attribute writer method checking allowed values (enum).
281
+ # @param [Object] network Object to be assigned
282
+ def network=(network)
283
+ validator = EnumAttributeValidator.new('String', ["GOOGLE_SEARCH", "GOOGLE_SEARCH_AND_PARTNERS"])
284
+ unless validator.valid?(network)
285
+ fail ArgumentError, "invalid value for \"network\", must be one of #{validator.allowable_values}."
286
+ end
287
+ @network = network
288
+ end
289
+
290
+ # Custom attribute writer method with validation
291
+ # @param [Object] page_size Value to be assigned
292
+ def page_size=(page_size)
293
+ if page_size.nil?
294
+ fail ArgumentError, 'page_size cannot be nil'
295
+ end
296
+
297
+ if page_size > 10000
298
+ fail ArgumentError, 'invalid value for "page_size", must be smaller than or equal to 10000.'
299
+ end
300
+
301
+ if page_size < 1
302
+ fail ArgumentError, 'invalid value for "page_size", must be greater than or equal to 1.'
303
+ end
304
+
305
+ @page_size = page_size
306
+ end
307
+
308
+ # Checks equality by comparing each attribute.
309
+ # @param [Object] Object to be compared
310
+ def ==(o)
311
+ return true if self.equal?(o)
312
+ self.class == o.class &&
313
+ account_id == o.account_id &&
314
+ customer_id == o.customer_id &&
315
+ seed_keywords == o.seed_keywords &&
316
+ seed_url == o.seed_url &&
317
+ countries == o.countries &&
318
+ language_constant_id == o.language_constant_id &&
319
+ network == o.network &&
320
+ include_adult_keywords == o.include_adult_keywords &&
321
+ page_size == o.page_size &&
322
+ page_token == o.page_token
323
+ end
324
+
325
+ # @see the `==` method
326
+ # @param [Object] Object to be compared
327
+ def eql?(o)
328
+ self == o
329
+ end
330
+
331
+ # Calculates hash code according to all attributes.
332
+ # @return [Integer] Hash code
333
+ def hash
334
+ [account_id, customer_id, seed_keywords, seed_url, countries, language_constant_id, network, include_adult_keywords, page_size, page_token].hash
335
+ end
336
+
337
+ # Builds the object from hash
338
+ # @param [Hash] attributes Model attributes in the form of hash
339
+ # @return [Object] Returns the model itself
340
+ def self.build_from_hash(attributes)
341
+ return nil unless attributes.is_a?(Hash)
342
+ attributes = attributes.transform_keys(&:to_sym)
343
+ transformed_hash = {}
344
+ openapi_types.each_pair do |key, type|
345
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
346
+ transformed_hash["#{key}"] = nil
347
+ elsif type =~ /\AArray<(.*)>/i
348
+ # check to ensure the input is an array given that the attribute
349
+ # is documented as an array but the input is not
350
+ if attributes[attribute_map[key]].is_a?(Array)
351
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
352
+ end
353
+ elsif !attributes[attribute_map[key]].nil?
354
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
355
+ end
356
+ end
357
+ new(transformed_hash)
358
+ end
359
+
360
+ # Returns the object in the form of hash
361
+ # @return [Hash] Returns the object in the form of hash
362
+ def to_hash
363
+ hash = {}
364
+ self.class.attribute_map.each_pair do |attr, param|
365
+ value = self.send(attr)
366
+ if value.nil?
367
+ is_nullable = self.class.openapi_nullable.include?(attr)
368
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
369
+ end
370
+
371
+ hash[param] = _to_hash(value)
372
+ end
373
+ hash
374
+ end
375
+
376
+ end
377
+
378
+ end
@@ -45,7 +45,7 @@ module Zernio
45
45
  {
46
46
  :'ad_account_id' => :'String',
47
47
  :'data' => :'Array<Object>',
48
- :'paging' => :'QueryAdInsights200ResponsePaging'
48
+ :'paging' => :'GetAdsActivityLog200ResponsePaging'
49
49
  }
50
50
  end
51
51
 
@@ -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
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 GetAdsActivityLog200ResponsePaging < ApiModelBase
18
+ # Cursor for the next page; null when exhausted.
19
+ attr_accessor :after
20
+
21
+ # Attribute mapping from ruby-style variable name to JSON key.
22
+ def self.attribute_map
23
+ {
24
+ :'after' => :'after'
25
+ }
26
+ end
27
+
28
+ # Returns attribute mapping this model knows about
29
+ def self.acceptable_attribute_map
30
+ attribute_map
31
+ end
32
+
33
+ # Returns all the JSON keys this model knows about
34
+ def self.acceptable_attributes
35
+ acceptable_attribute_map.values
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.openapi_types
40
+ {
41
+ :'after' => :'String'
42
+ }
43
+ end
44
+
45
+ # List of attributes with nullable: true
46
+ def self.openapi_nullable
47
+ Set.new([
48
+ :'after'
49
+ ])
50
+ end
51
+
52
+ # Initializes the object
53
+ # @param [Hash] attributes Model attributes in the form of hash
54
+ def initialize(attributes = {})
55
+ if (!attributes.is_a?(Hash))
56
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::GetAdsActivityLog200ResponsePaging` initialize method"
57
+ end
58
+
59
+ # check to see if the attribute exists and convert string to symbol for hash key
60
+ acceptable_attribute_map = self.class.acceptable_attribute_map
61
+ attributes = attributes.each_with_object({}) { |(k, v), h|
62
+ if (!acceptable_attribute_map.key?(k.to_sym))
63
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::GetAdsActivityLog200ResponsePaging`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
64
+ end
65
+ h[k.to_sym] = v
66
+ }
67
+
68
+ if attributes.key?(:'after')
69
+ self.after = attributes[:'after']
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
+ after == o.after
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
+ [after].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
@@ -45,7 +45,7 @@ module Zernio
45
45
  {
46
46
  :'ad_account_id' => :'String',
47
47
  :'data' => :'Array<Object>',
48
- :'paging' => :'QueryAdInsights200ResponsePaging'
48
+ :'paging' => :'GetAdsActivityLog200ResponsePaging'
49
49
  }
50
50
  end
51
51
 
@@ -45,7 +45,7 @@ module Zernio
45
45
  {
46
46
  :'ad_account_id' => :'String',
47
47
  :'data' => :'Array<Object>',
48
- :'paging' => :'QueryAdInsights200ResponsePaging'
48
+ :'paging' => :'GetAdsActivityLog200ResponsePaging'
49
49
  }
50
50
  end
51
51
 
@@ -45,7 +45,7 @@ module Zernio
45
45
  {
46
46
  :'ad_account_id' => :'String',
47
47
  :'data' => :'Array<Object>',
48
- :'paging' => :'QueryAdInsights200ResponsePaging'
48
+ :'paging' => :'GetAdsActivityLog200ResponsePaging'
49
49
  }
50
50
  end
51
51
 
@@ -45,7 +45,7 @@ module Zernio
45
45
  {
46
46
  :'ad_account_id' => :'String',
47
47
  :'data' => :'Array<Object>',
48
- :'paging' => :'QueryAdInsights200ResponsePaging'
48
+ :'paging' => :'GetAdsActivityLog200ResponsePaging'
49
49
  }
50
50
  end
51
51
 
@@ -46,7 +46,7 @@ module Zernio
46
46
  {
47
47
  :'object_id' => :'String',
48
48
  :'data' => :'Array<Object>',
49
- :'paging' => :'QueryAdInsights200ResponsePaging'
49
+ :'paging' => :'GetAdsActivityLog200ResponsePaging'
50
50
  }
51
51
  end
52
52
 
@@ -41,7 +41,7 @@ module Zernio
41
41
  def self.openapi_types
42
42
  {
43
43
  :'data' => :'Array<Object>',
44
- :'paging' => :'QueryAdInsights200ResponsePaging'
44
+ :'paging' => :'GetAdsActivityLog200ResponsePaging'
45
45
  }
46
46
  end
47
47
 
@@ -15,8 +15,15 @@ require 'time'
15
15
 
16
16
  module Zernio
17
17
  class QueryAdInsights200Response < ApiModelBase
18
+ # Meta responses only.
18
19
  attr_accessor :object_id
19
20
 
21
+ # Google responses only: the customer the query ran against.
22
+ attr_accessor :customer_id
23
+
24
+ # Google responses only: the selected fields echoed by Google.
25
+ attr_accessor :field_mask
26
+
20
27
  attr_accessor :data
21
28
 
22
29
  attr_accessor :paging
@@ -25,6 +32,8 @@ module Zernio
25
32
  def self.attribute_map
26
33
  {
27
34
  :'object_id' => :'objectId',
35
+ :'customer_id' => :'customerId',
36
+ :'field_mask' => :'fieldMask',
28
37
  :'data' => :'data',
29
38
  :'paging' => :'paging'
30
39
  }
@@ -44,6 +53,8 @@ module Zernio
44
53
  def self.openapi_types
45
54
  {
46
55
  :'object_id' => :'String',
56
+ :'customer_id' => :'String',
57
+ :'field_mask' => :'String',
47
58
  :'data' => :'Array<Object>',
48
59
  :'paging' => :'QueryAdInsights200ResponsePaging'
49
60
  }
@@ -52,6 +63,7 @@ module Zernio
52
63
  # List of attributes with nullable: true
53
64
  def self.openapi_nullable
54
65
  Set.new([
66
+ :'field_mask',
55
67
  ])
56
68
  end
57
69
 
@@ -75,6 +87,14 @@ module Zernio
75
87
  self.object_id = attributes[:'object_id']
76
88
  end
77
89
 
90
+ if attributes.key?(:'customer_id')
91
+ self.customer_id = attributes[:'customer_id']
92
+ end
93
+
94
+ if attributes.key?(:'field_mask')
95
+ self.field_mask = attributes[:'field_mask']
96
+ end
97
+
78
98
  if attributes.key?(:'data')
79
99
  if (value = attributes[:'data']).is_a?(Array)
80
100
  self.data = value
@@ -107,6 +127,8 @@ module Zernio
107
127
  return true if self.equal?(o)
108
128
  self.class == o.class &&
109
129
  object_id == o.object_id &&
130
+ customer_id == o.customer_id &&
131
+ field_mask == o.field_mask &&
110
132
  data == o.data &&
111
133
  paging == o.paging
112
134
  end
@@ -120,7 +142,7 @@ module Zernio
120
142
  # Calculates hash code according to all attributes.
121
143
  # @return [Integer] Hash code
122
144
  def hash
123
- [object_id, data, paging].hash
145
+ [object_id, customer_id, field_mask, data, paging].hash
124
146
  end
125
147
 
126
148
  # Builds the object from hash