ultracart_api 3.11.45 → 3.11.46

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: add96a9b8e8295c864a2c0b15990ea37559d80ca6f414f484043b8145a49a275
4
- data.tar.gz: 1979444be3204dfa3bdb27a114a43daabe7e9ad892966e023a959a29a5b75085
3
+ metadata.gz: 9dfaf789e36fc56ed9f08495bcf0b4520e1054b4e9e71fa802512615dfc08f59
4
+ data.tar.gz: 215da1d2822e7346dc9a843ef57ac00bc321904ee0bead8de742fe90de35e582
5
5
  SHA512:
6
- metadata.gz: 9e248179d4e57afc74af94f8dcc2d57ecf5b15a21b27a1a4fc1da2ec88e49364b8eb26117f1694238b5370a0e3fb37d5ce4eb6b681930eff41ce1868bfb2fb12
7
- data.tar.gz: 71ae2eebcedfec3c38600119d1e7f164e31f748f2cd8fa0b611d76bc50705d0eb21224f942788a9710b1aa66714c09c506edf97796934ce2297286c6ac9e204a
6
+ metadata.gz: f79d42ecddf4e70ada87ca4783524518c690c9938ce05e631a8fd3eb1f2c2297c186051bda58da4064c1e5e4b4bfebc8d0ed36c776a768fa368b9880e9437ced
7
+ data.tar.gz: dcc4e48da5bc23a7769ee782eef9168e581f87bfbfa59fb607218279e611408a52971def63594bf5f731eae51c0d1803ef5b9b4cd1ac029d5df73e3d8aa82ebd
data/README.md CHANGED
@@ -7,7 +7,7 @@ UltraCart REST API Version 2
7
7
  This SDK is automatically generated by the [Swagger Codegen](https://github.com/swagger-api/swagger-codegen) project:
8
8
 
9
9
  - API version: 2.0.0
10
- - Package version: 3.11.45
10
+ - Package version: 3.11.46
11
11
  - Build package: io.swagger.codegen.languages.RubyClientCodegen
12
12
  For more information, please visit [http://www.ultracart.com/api/](http://www.ultracart.com/api/)
13
13
 
@@ -24,15 +24,15 @@ gem build ultracart_api.gemspec
24
24
  Then either install the gem locally:
25
25
 
26
26
  ```shell
27
- gem install ./ultracart_api-3.11.45.gem
27
+ gem install ./ultracart_api-3.11.46.gem
28
28
  ```
29
- (for development, run `gem install --dev ./ultracart_api-3.11.45.gem` to install the development dependencies)
29
+ (for development, run `gem install --dev ./ultracart_api-3.11.46.gem` to install the development dependencies)
30
30
 
31
31
  or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
32
32
 
33
33
  Finally add this to the Gemfile:
34
34
 
35
- gem 'ultracart_api', '~> 3.11.45'
35
+ gem 'ultracart_api', '~> 3.11.46'
36
36
 
37
37
  ### Install from Git
38
38
 
@@ -739,6 +739,7 @@ Class | Method | HTTP request | Description
739
739
  - [UltracartClient::CartSummary](docs/CartSummary.md)
740
740
  - [UltracartClient::CartTaxes](docs/CartTaxes.md)
741
741
  - [UltracartClient::CartUpsellAfter](docs/CartUpsellAfter.md)
742
+ - [UltracartClient::CartUtm](docs/CartUtm.md)
742
743
  - [UltracartClient::CartValidationRequest](docs/CartValidationRequest.md)
743
744
  - [UltracartClient::CartValidationResponse](docs/CartValidationResponse.md)
744
745
  - [UltracartClient::ChanelPartnerReasonCodesResponse](docs/ChanelPartnerReasonCodesResponse.md)
@@ -1623,6 +1624,7 @@ Not every change is committed to every SDK.
1623
1624
 
1624
1625
  | Version | Date | Comments |
1625
1626
  | --: | :-: | --- |
1627
+ | 3.11.46 | 01/26/2026 | cart - expose utm array for use in abandon webhook only |
1626
1628
  | 3.11.45 | 01/26/2026 | added multimedia file size to ItemContentMultimedia object |
1627
1629
  | 3.11.44 | 01/26/2026 | conversations - ConversationDepartmentMember expose a flag for if the agent is AI |
1628
1630
  | 3.11.43 | 01/14/2026 | coupons - generate one time coupons prefix support (optional) |
data/docs/Cart.md CHANGED
@@ -29,5 +29,6 @@ Name | Type | Description | Notes
29
29
  **summary** | [**CartSummary**](CartSummary.md) | | [optional]
30
30
  **taxes** | [**CartTaxes**](CartTaxes.md) | | [optional]
31
31
  **upsell_after** | [**CartUpsellAfter**](CartUpsellAfter.md) | | [optional]
32
+ **utms** | [**Array<CartUtm>**](CartUtm.md) | UTM clicks. The zero index is the most recent (last) UTM click. Only available in BigQuery and on an abandon webhook. | [optional]
32
33
 
33
34
 
data/docs/CartUtm.md ADDED
@@ -0,0 +1,39 @@
1
+ # UltracartClient::CartUtm
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **attribution_first_click_subtotal** | **Float** | | [optional]
7
+ **attribution_first_click_total** | **Float** | | [optional]
8
+ **attribution_last_click_subtotal** | **Float** | | [optional]
9
+ **attribution_last_click_total** | **Float** | | [optional]
10
+ **attribution_linear_subtotal** | **Float** | | [optional]
11
+ **attribution_linear_total** | **Float** | | [optional]
12
+ **attribution_position_based_subtotal** | **Float** | | [optional]
13
+ **attribution_position_based_total** | **Float** | | [optional]
14
+ **click_dts** | **String** | Date/time that the click happened | [optional]
15
+ **facebook_ad_id** | **String** | | [optional]
16
+ **fbclid** | **String** | | [optional]
17
+ **gbraid** | **String** | | [optional]
18
+ **glcid** | **String** | | [optional]
19
+ **itm_campaign** | **String** | | [optional]
20
+ **itm_content** | **String** | | [optional]
21
+ **itm_id** | **String** | | [optional]
22
+ **itm_medium** | **String** | | [optional]
23
+ **itm_source** | **String** | | [optional]
24
+ **itm_term** | **String** | | [optional]
25
+ **msclkid** | **String** | | [optional]
26
+ **short_code** | **String** | | [optional]
27
+ **short_code_backup** | **BOOLEAN** | | [optional]
28
+ **ttclid** | **String** | | [optional]
29
+ **uc_message_id** | **String** | | [optional]
30
+ **utm_campaign** | **String** | | [optional]
31
+ **utm_content** | **String** | | [optional]
32
+ **utm_id** | **String** | | [optional]
33
+ **utm_medium** | **String** | | [optional]
34
+ **utm_source** | **String** | | [optional]
35
+ **utm_term** | **String** | | [optional]
36
+ **vmcid** | **String** | | [optional]
37
+ **wbraid** | **String** | | [optional]
38
+
39
+
@@ -77,6 +77,9 @@ module UltracartClient
77
77
 
78
78
  attr_accessor :upsell_after
79
79
 
80
+ # UTM clicks. The zero index is the most recent (last) UTM click. Only available in BigQuery and on an abandon webhook.
81
+ attr_accessor :utms
82
+
80
83
  # Attribute mapping from ruby-style variable name to JSON key.
81
84
  def self.attribute_map
82
85
  {
@@ -105,7 +108,8 @@ module UltracartClient
105
108
  :'shipping' => :'shipping',
106
109
  :'summary' => :'summary',
107
110
  :'taxes' => :'taxes',
108
- :'upsell_after' => :'upsell_after'
111
+ :'upsell_after' => :'upsell_after',
112
+ :'utms' => :'utms'
109
113
  }
110
114
  end
111
115
 
@@ -137,7 +141,8 @@ module UltracartClient
137
141
  :'shipping' => :'CartShipping',
138
142
  :'summary' => :'CartSummary',
139
143
  :'taxes' => :'CartTaxes',
140
- :'upsell_after' => :'CartUpsellAfter'
144
+ :'upsell_after' => :'CartUpsellAfter',
145
+ :'utms' => :'Array<CartUtm>'
141
146
  }
142
147
  end
143
148
 
@@ -258,6 +263,12 @@ module UltracartClient
258
263
  if attributes.has_key?(:'upsell_after')
259
264
  self.upsell_after = attributes[:'upsell_after']
260
265
  end
266
+
267
+ if attributes.has_key?(:'utms')
268
+ if (value = attributes[:'utms']).is_a?(Array)
269
+ self.utms = value
270
+ end
271
+ end
261
272
  end
262
273
 
263
274
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -348,7 +359,8 @@ module UltracartClient
348
359
  shipping == o.shipping &&
349
360
  summary == o.summary &&
350
361
  taxes == o.taxes &&
351
- upsell_after == o.upsell_after
362
+ upsell_after == o.upsell_after &&
363
+ utms == o.utms
352
364
  end
353
365
 
354
366
  # @see the `==` method
@@ -360,7 +372,7 @@ module UltracartClient
360
372
  # Calculates hash code according to all attributes.
361
373
  # @return [Fixnum] Hash code
362
374
  def hash
363
- [affiliate, affiliate_network_pixel_oid, base_currency_code, billing, buysafe, cart_id, checkout, coupons, currency_code, currency_conversion, customer_profile, exchange_rate, gift, gift_certificate, items, language_iso_code, logged_in, marketing, merchant_id, payment, properties, settings, shipping, summary, taxes, upsell_after].hash
375
+ [affiliate, affiliate_network_pixel_oid, base_currency_code, billing, buysafe, cart_id, checkout, coupons, currency_code, currency_conversion, customer_profile, exchange_rate, gift, gift_certificate, items, language_iso_code, logged_in, marketing, merchant_id, payment, properties, settings, shipping, summary, taxes, upsell_after, utms].hash
364
376
  end
365
377
 
366
378
  # Builds the object from hash
@@ -0,0 +1,464 @@
1
+ =begin
2
+ #UltraCart Rest API V2
3
+
4
+ #UltraCart REST API Version 2
5
+
6
+ OpenAPI spec version: 2.0.0
7
+ Contact: support@ultracart.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.15-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module UltracartClient
16
+ class CartUtm
17
+ attr_accessor :attribution_first_click_subtotal
18
+
19
+ attr_accessor :attribution_first_click_total
20
+
21
+ attr_accessor :attribution_last_click_subtotal
22
+
23
+ attr_accessor :attribution_last_click_total
24
+
25
+ attr_accessor :attribution_linear_subtotal
26
+
27
+ attr_accessor :attribution_linear_total
28
+
29
+ attr_accessor :attribution_position_based_subtotal
30
+
31
+ attr_accessor :attribution_position_based_total
32
+
33
+ # Date/time that the click happened
34
+ attr_accessor :click_dts
35
+
36
+ attr_accessor :facebook_ad_id
37
+
38
+ attr_accessor :fbclid
39
+
40
+ attr_accessor :gbraid
41
+
42
+ attr_accessor :glcid
43
+
44
+ attr_accessor :itm_campaign
45
+
46
+ attr_accessor :itm_content
47
+
48
+ attr_accessor :itm_id
49
+
50
+ attr_accessor :itm_medium
51
+
52
+ attr_accessor :itm_source
53
+
54
+ attr_accessor :itm_term
55
+
56
+ attr_accessor :msclkid
57
+
58
+ attr_accessor :short_code
59
+
60
+ attr_accessor :short_code_backup
61
+
62
+ attr_accessor :ttclid
63
+
64
+ attr_accessor :uc_message_id
65
+
66
+ attr_accessor :utm_campaign
67
+
68
+ attr_accessor :utm_content
69
+
70
+ attr_accessor :utm_id
71
+
72
+ attr_accessor :utm_medium
73
+
74
+ attr_accessor :utm_source
75
+
76
+ attr_accessor :utm_term
77
+
78
+ attr_accessor :vmcid
79
+
80
+ attr_accessor :wbraid
81
+
82
+ # Attribute mapping from ruby-style variable name to JSON key.
83
+ def self.attribute_map
84
+ {
85
+ :'attribution_first_click_subtotal' => :'attribution_first_click_subtotal',
86
+ :'attribution_first_click_total' => :'attribution_first_click_total',
87
+ :'attribution_last_click_subtotal' => :'attribution_last_click_subtotal',
88
+ :'attribution_last_click_total' => :'attribution_last_click_total',
89
+ :'attribution_linear_subtotal' => :'attribution_linear_subtotal',
90
+ :'attribution_linear_total' => :'attribution_linear_total',
91
+ :'attribution_position_based_subtotal' => :'attribution_position_based_subtotal',
92
+ :'attribution_position_based_total' => :'attribution_position_based_total',
93
+ :'click_dts' => :'click_dts',
94
+ :'facebook_ad_id' => :'facebook_ad_id',
95
+ :'fbclid' => :'fbclid',
96
+ :'gbraid' => :'gbraid',
97
+ :'glcid' => :'glcid',
98
+ :'itm_campaign' => :'itm_campaign',
99
+ :'itm_content' => :'itm_content',
100
+ :'itm_id' => :'itm_id',
101
+ :'itm_medium' => :'itm_medium',
102
+ :'itm_source' => :'itm_source',
103
+ :'itm_term' => :'itm_term',
104
+ :'msclkid' => :'msclkid',
105
+ :'short_code' => :'short_code',
106
+ :'short_code_backup' => :'short_code_backup',
107
+ :'ttclid' => :'ttclid',
108
+ :'uc_message_id' => :'uc_message_id',
109
+ :'utm_campaign' => :'utm_campaign',
110
+ :'utm_content' => :'utm_content',
111
+ :'utm_id' => :'utm_id',
112
+ :'utm_medium' => :'utm_medium',
113
+ :'utm_source' => :'utm_source',
114
+ :'utm_term' => :'utm_term',
115
+ :'vmcid' => :'vmcid',
116
+ :'wbraid' => :'wbraid'
117
+ }
118
+ end
119
+
120
+ # Attribute type mapping.
121
+ def self.swagger_types
122
+ {
123
+ :'attribution_first_click_subtotal' => :'Float',
124
+ :'attribution_first_click_total' => :'Float',
125
+ :'attribution_last_click_subtotal' => :'Float',
126
+ :'attribution_last_click_total' => :'Float',
127
+ :'attribution_linear_subtotal' => :'Float',
128
+ :'attribution_linear_total' => :'Float',
129
+ :'attribution_position_based_subtotal' => :'Float',
130
+ :'attribution_position_based_total' => :'Float',
131
+ :'click_dts' => :'String',
132
+ :'facebook_ad_id' => :'String',
133
+ :'fbclid' => :'String',
134
+ :'gbraid' => :'String',
135
+ :'glcid' => :'String',
136
+ :'itm_campaign' => :'String',
137
+ :'itm_content' => :'String',
138
+ :'itm_id' => :'String',
139
+ :'itm_medium' => :'String',
140
+ :'itm_source' => :'String',
141
+ :'itm_term' => :'String',
142
+ :'msclkid' => :'String',
143
+ :'short_code' => :'String',
144
+ :'short_code_backup' => :'BOOLEAN',
145
+ :'ttclid' => :'String',
146
+ :'uc_message_id' => :'String',
147
+ :'utm_campaign' => :'String',
148
+ :'utm_content' => :'String',
149
+ :'utm_id' => :'String',
150
+ :'utm_medium' => :'String',
151
+ :'utm_source' => :'String',
152
+ :'utm_term' => :'String',
153
+ :'vmcid' => :'String',
154
+ :'wbraid' => :'String'
155
+ }
156
+ end
157
+
158
+ # Initializes the object
159
+ # @param [Hash] attributes Model attributes in the form of hash
160
+ def initialize(attributes = {})
161
+ return unless attributes.is_a?(Hash)
162
+
163
+ # convert string to symbol for hash key
164
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
165
+
166
+ if attributes.has_key?(:'attribution_first_click_subtotal')
167
+ self.attribution_first_click_subtotal = attributes[:'attribution_first_click_subtotal']
168
+ end
169
+
170
+ if attributes.has_key?(:'attribution_first_click_total')
171
+ self.attribution_first_click_total = attributes[:'attribution_first_click_total']
172
+ end
173
+
174
+ if attributes.has_key?(:'attribution_last_click_subtotal')
175
+ self.attribution_last_click_subtotal = attributes[:'attribution_last_click_subtotal']
176
+ end
177
+
178
+ if attributes.has_key?(:'attribution_last_click_total')
179
+ self.attribution_last_click_total = attributes[:'attribution_last_click_total']
180
+ end
181
+
182
+ if attributes.has_key?(:'attribution_linear_subtotal')
183
+ self.attribution_linear_subtotal = attributes[:'attribution_linear_subtotal']
184
+ end
185
+
186
+ if attributes.has_key?(:'attribution_linear_total')
187
+ self.attribution_linear_total = attributes[:'attribution_linear_total']
188
+ end
189
+
190
+ if attributes.has_key?(:'attribution_position_based_subtotal')
191
+ self.attribution_position_based_subtotal = attributes[:'attribution_position_based_subtotal']
192
+ end
193
+
194
+ if attributes.has_key?(:'attribution_position_based_total')
195
+ self.attribution_position_based_total = attributes[:'attribution_position_based_total']
196
+ end
197
+
198
+ if attributes.has_key?(:'click_dts')
199
+ self.click_dts = attributes[:'click_dts']
200
+ end
201
+
202
+ if attributes.has_key?(:'facebook_ad_id')
203
+ self.facebook_ad_id = attributes[:'facebook_ad_id']
204
+ end
205
+
206
+ if attributes.has_key?(:'fbclid')
207
+ self.fbclid = attributes[:'fbclid']
208
+ end
209
+
210
+ if attributes.has_key?(:'gbraid')
211
+ self.gbraid = attributes[:'gbraid']
212
+ end
213
+
214
+ if attributes.has_key?(:'glcid')
215
+ self.glcid = attributes[:'glcid']
216
+ end
217
+
218
+ if attributes.has_key?(:'itm_campaign')
219
+ self.itm_campaign = attributes[:'itm_campaign']
220
+ end
221
+
222
+ if attributes.has_key?(:'itm_content')
223
+ self.itm_content = attributes[:'itm_content']
224
+ end
225
+
226
+ if attributes.has_key?(:'itm_id')
227
+ self.itm_id = attributes[:'itm_id']
228
+ end
229
+
230
+ if attributes.has_key?(:'itm_medium')
231
+ self.itm_medium = attributes[:'itm_medium']
232
+ end
233
+
234
+ if attributes.has_key?(:'itm_source')
235
+ self.itm_source = attributes[:'itm_source']
236
+ end
237
+
238
+ if attributes.has_key?(:'itm_term')
239
+ self.itm_term = attributes[:'itm_term']
240
+ end
241
+
242
+ if attributes.has_key?(:'msclkid')
243
+ self.msclkid = attributes[:'msclkid']
244
+ end
245
+
246
+ if attributes.has_key?(:'short_code')
247
+ self.short_code = attributes[:'short_code']
248
+ end
249
+
250
+ if attributes.has_key?(:'short_code_backup')
251
+ self.short_code_backup = attributes[:'short_code_backup']
252
+ end
253
+
254
+ if attributes.has_key?(:'ttclid')
255
+ self.ttclid = attributes[:'ttclid']
256
+ end
257
+
258
+ if attributes.has_key?(:'uc_message_id')
259
+ self.uc_message_id = attributes[:'uc_message_id']
260
+ end
261
+
262
+ if attributes.has_key?(:'utm_campaign')
263
+ self.utm_campaign = attributes[:'utm_campaign']
264
+ end
265
+
266
+ if attributes.has_key?(:'utm_content')
267
+ self.utm_content = attributes[:'utm_content']
268
+ end
269
+
270
+ if attributes.has_key?(:'utm_id')
271
+ self.utm_id = attributes[:'utm_id']
272
+ end
273
+
274
+ if attributes.has_key?(:'utm_medium')
275
+ self.utm_medium = attributes[:'utm_medium']
276
+ end
277
+
278
+ if attributes.has_key?(:'utm_source')
279
+ self.utm_source = attributes[:'utm_source']
280
+ end
281
+
282
+ if attributes.has_key?(:'utm_term')
283
+ self.utm_term = attributes[:'utm_term']
284
+ end
285
+
286
+ if attributes.has_key?(:'vmcid')
287
+ self.vmcid = attributes[:'vmcid']
288
+ end
289
+
290
+ if attributes.has_key?(:'wbraid')
291
+ self.wbraid = attributes[:'wbraid']
292
+ end
293
+ end
294
+
295
+ # Show invalid properties with the reasons. Usually used together with valid?
296
+ # @return Array for valid properties with the reasons
297
+ def list_invalid_properties
298
+ invalid_properties = Array.new
299
+ invalid_properties
300
+ end
301
+
302
+ # Check to see if the all the properties in the model are valid
303
+ # @return true if the model is valid
304
+ def valid?
305
+ true
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
+ attribution_first_click_subtotal == o.attribution_first_click_subtotal &&
314
+ attribution_first_click_total == o.attribution_first_click_total &&
315
+ attribution_last_click_subtotal == o.attribution_last_click_subtotal &&
316
+ attribution_last_click_total == o.attribution_last_click_total &&
317
+ attribution_linear_subtotal == o.attribution_linear_subtotal &&
318
+ attribution_linear_total == o.attribution_linear_total &&
319
+ attribution_position_based_subtotal == o.attribution_position_based_subtotal &&
320
+ attribution_position_based_total == o.attribution_position_based_total &&
321
+ click_dts == o.click_dts &&
322
+ facebook_ad_id == o.facebook_ad_id &&
323
+ fbclid == o.fbclid &&
324
+ gbraid == o.gbraid &&
325
+ glcid == o.glcid &&
326
+ itm_campaign == o.itm_campaign &&
327
+ itm_content == o.itm_content &&
328
+ itm_id == o.itm_id &&
329
+ itm_medium == o.itm_medium &&
330
+ itm_source == o.itm_source &&
331
+ itm_term == o.itm_term &&
332
+ msclkid == o.msclkid &&
333
+ short_code == o.short_code &&
334
+ short_code_backup == o.short_code_backup &&
335
+ ttclid == o.ttclid &&
336
+ uc_message_id == o.uc_message_id &&
337
+ utm_campaign == o.utm_campaign &&
338
+ utm_content == o.utm_content &&
339
+ utm_id == o.utm_id &&
340
+ utm_medium == o.utm_medium &&
341
+ utm_source == o.utm_source &&
342
+ utm_term == o.utm_term &&
343
+ vmcid == o.vmcid &&
344
+ wbraid == o.wbraid
345
+ end
346
+
347
+ # @see the `==` method
348
+ # @param [Object] Object to be compared
349
+ def eql?(o)
350
+ self == o
351
+ end
352
+
353
+ # Calculates hash code according to all attributes.
354
+ # @return [Fixnum] Hash code
355
+ def hash
356
+ [attribution_first_click_subtotal, attribution_first_click_total, attribution_last_click_subtotal, attribution_last_click_total, attribution_linear_subtotal, attribution_linear_total, attribution_position_based_subtotal, attribution_position_based_total, click_dts, facebook_ad_id, fbclid, gbraid, glcid, itm_campaign, itm_content, itm_id, itm_medium, itm_source, itm_term, msclkid, short_code, short_code_backup, ttclid, uc_message_id, utm_campaign, utm_content, utm_id, utm_medium, utm_source, utm_term, vmcid, wbraid].hash
357
+ end
358
+
359
+ # Builds the object from hash
360
+ # @param [Hash] attributes Model attributes in the form of hash
361
+ # @return [Object] Returns the model itself
362
+ def build_from_hash(attributes)
363
+ return nil unless attributes.is_a?(Hash)
364
+ self.class.swagger_types.each_pair do |key, type|
365
+ if type =~ /\AArray<(.*)>/i
366
+ # check to ensure the input is an array given that the attribute
367
+ # is documented as an array but the input is not
368
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
369
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
370
+ end
371
+ elsif !attributes[self.class.attribute_map[key]].nil?
372
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
373
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
374
+ end
375
+
376
+ self
377
+ end
378
+
379
+ # Deserializes the data based on type
380
+ # @param string type Data type
381
+ # @param string value Value to be deserialized
382
+ # @return [Object] Deserialized data
383
+ def _deserialize(type, value)
384
+ case type.to_sym
385
+ when :DateTime
386
+ DateTime.parse(value)
387
+ when :Date
388
+ Date.parse(value)
389
+ when :String
390
+ value.to_s
391
+ when :Integer
392
+ value.to_i
393
+ when :Float
394
+ value.to_f
395
+ when :BOOLEAN
396
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
397
+ true
398
+ else
399
+ false
400
+ end
401
+ when :Object
402
+ # generic object (usually a Hash), return directly
403
+ value
404
+ when /\AArray<(?<inner_type>.+)>\z/
405
+ inner_type = Regexp.last_match[:inner_type]
406
+ value.map { |v| _deserialize(inner_type, v) }
407
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
408
+ k_type = Regexp.last_match[:k_type]
409
+ v_type = Regexp.last_match[:v_type]
410
+ {}.tap do |hash|
411
+ value.each do |k, v|
412
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
413
+ end
414
+ end
415
+ else # model
416
+ temp_model = UltracartClient.const_get(type).new
417
+ temp_model.build_from_hash(value)
418
+ end
419
+ end
420
+
421
+ # Returns the string representation of the object
422
+ # @return [String] String presentation of the object
423
+ def to_s
424
+ to_hash.to_s
425
+ end
426
+
427
+ # to_body is an alias to to_hash (backward compatibility)
428
+ # @return [Hash] Returns the object in the form of hash
429
+ def to_body
430
+ to_hash
431
+ end
432
+
433
+ # Returns the object in the form of hash
434
+ # @return [Hash] Returns the object in the form of hash
435
+ def to_hash
436
+ hash = {}
437
+ self.class.attribute_map.each_pair do |attr, param|
438
+ value = self.send(attr)
439
+ next if value.nil?
440
+ hash[param] = _to_hash(value)
441
+ end
442
+ hash
443
+ end
444
+
445
+ # Outputs non-array value in the form of hash
446
+ # For object, use to_hash. Otherwise, just return the value
447
+ # @param [Object] value Any valid value
448
+ # @return [Hash] Returns the value in the form of hash
449
+ def _to_hash(value)
450
+ if value.is_a?(Array)
451
+ value.compact.map { |v| _to_hash(v) }
452
+ elsif value.is_a?(Hash)
453
+ {}.tap do |hash|
454
+ value.each { |k, v| hash[k] = _to_hash(v) }
455
+ end
456
+ elsif value.respond_to? :to_hash
457
+ value.to_hash
458
+ else
459
+ value
460
+ end
461
+ end
462
+
463
+ end
464
+ end
@@ -11,5 +11,5 @@ Swagger Codegen version: 2.4.15-SNAPSHOT
11
11
  =end
12
12
 
13
13
  module UltracartClient
14
- VERSION = '3.11.45'
14
+ VERSION = '3.11.46'
15
15
  end
data/lib/ultracart_api.rb CHANGED
@@ -118,6 +118,7 @@ require 'ultracart_api/models/cart_shipping'
118
118
  require 'ultracart_api/models/cart_summary'
119
119
  require 'ultracart_api/models/cart_taxes'
120
120
  require 'ultracart_api/models/cart_upsell_after'
121
+ require 'ultracart_api/models/cart_utm'
121
122
  require 'ultracart_api/models/cart_validation_request'
122
123
  require 'ultracart_api/models/cart_validation_response'
123
124
  require 'ultracart_api/models/chanel_partner_reason_codes_response'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ultracart_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.11.45
4
+ version: 3.11.46
5
5
  platform: ruby
6
6
  authors:
7
7
  - UltraCart
@@ -324,6 +324,7 @@ files:
324
324
  - docs/CartSummary.md
325
325
  - docs/CartTaxes.md
326
326
  - docs/CartUpsellAfter.md
327
+ - docs/CartUtm.md
327
328
  - docs/CartValidationRequest.md
328
329
  - docs/CartValidationResponse.md
329
330
  - docs/ChanelPartnerReasonCodesResponse.md
@@ -1280,6 +1281,7 @@ files:
1280
1281
  - lib/ultracart_api/models/cart_summary.rb
1281
1282
  - lib/ultracart_api/models/cart_taxes.rb
1282
1283
  - lib/ultracart_api/models/cart_upsell_after.rb
1284
+ - lib/ultracart_api/models/cart_utm.rb
1283
1285
  - lib/ultracart_api/models/cart_validation_request.rb
1284
1286
  - lib/ultracart_api/models/cart_validation_response.rb
1285
1287
  - lib/ultracart_api/models/chanel_partner_reason_codes_response.rb