ultracart_api 4.1.45 → 4.1.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: 40c618d7f7e85e6101b99b6f779488c6bbe2aea23fe2ff7c97235281989578b1
4
- data.tar.gz: c6453cc7ca927a330890802a01f2ce8dd1549e2e86cd5c2c4524eb2de10a2d8b
3
+ metadata.gz: bc3b86866911aa1945695ff25cdb2ee71a1ceee2d733c0c23592a30f8fa00255
4
+ data.tar.gz: d4a2c5a63b1dec8bd05d810c9ce54d7577dae7747b9b11b9f75b7eab12ec4e19
5
5
  SHA512:
6
- metadata.gz: 96bd2f64c4d0db3a9826d5349e6969361e7e0202cae81096ca163369aeecc121e8c83deb720871f512161b8e2ed62ff731fe4653aee6fabd05acd6bcfdfc9105
7
- data.tar.gz: c270803cfae68aa4c054aa4b4a5cd7e91db6226b20a45db5de4090886469fe52fba93eff700e49e33bfd66bc59d26b43adbd86af3921c63aac41907d5089b3d7
6
+ metadata.gz: d137c652064a899a18f3177b3c80b806f85b48aa6000925a0b58491ddfcc4be777b548f3f2b2135ca2371706bd5d736e4111e162b184e4c67728ead4ea624eff
7
+ data.tar.gz: 859d0d3f14f39a0ccb4c3b69dbf9305863734c09abf9da553aa79ca2bb5144e62d4a72e8545134ab807a67ee935eb2b0ea1aaba2aad962aac35def80edc543f4
data/README.md CHANGED
@@ -7,7 +7,7 @@ Note: Every method has a sample for every language. See https://github.com/Ultr
7
7
  This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
8
8
 
9
9
  - API version: 2.0.0
10
- - Package version: 4.1.45
10
+ - Package version: 4.1.46
11
11
  - Build package: org.openapitools.codegen.languages.RubyClientCodegen
12
12
  - For more information, please visit [http://www.ultracart.com/api/](http://www.ultracart.com/api/)
13
13
 
@@ -16,7 +16,7 @@ This SDK is automatically generated by the [OpenAPI Generator](https://openapi-g
16
16
  gemfile:
17
17
 
18
18
  ```shell
19
- gem 'ultracart_api', '4.1.45'
19
+ gem 'ultracart_api', '4.1.46'
20
20
  ```
21
21
 
22
22
  install:
@@ -735,6 +735,7 @@ Class | Method | HTTP request | Description
735
735
  - [UltracartClient::CartSummary](docs/CartSummary.md)
736
736
  - [UltracartClient::CartTaxes](docs/CartTaxes.md)
737
737
  - [UltracartClient::CartUpsellAfter](docs/CartUpsellAfter.md)
738
+ - [UltracartClient::CartUtm](docs/CartUtm.md)
738
739
  - [UltracartClient::CartValidationRequest](docs/CartValidationRequest.md)
739
740
  - [UltracartClient::CartValidationResponse](docs/CartValidationResponse.md)
740
741
  - [UltracartClient::ChanelPartnerReasonCodesResponse](docs/ChanelPartnerReasonCodesResponse.md)
@@ -1621,6 +1622,7 @@ Not every change is committed to every SDK.
1621
1622
 
1622
1623
  | Version | Date | Comments |
1623
1624
  | --: | :-: | --- |
1625
+ | 4.1.46 | 01/26/2026 | cart - expose utm array for use in abandon webhook only |
1624
1626
  | 4.1.45 | 01/26/2026 | added multimedia file size to ItemContentMultimedia object |
1625
1627
  | 4.1.44 | 01/26/2026 | conversations - ConversationDepartmentMember expose a flag for if the agent is AI |
1626
1628
  | 4.1.43 | 01/14/2026 | coupons - generate one time coupons prefix support (optional) |
data/docs/Cart.md CHANGED
@@ -30,6 +30,7 @@
30
30
  | **summary** | [**CartSummary**](CartSummary.md) | | [optional] |
31
31
  | **taxes** | [**CartTaxes**](CartTaxes.md) | | [optional] |
32
32
  | **upsell_after** | [**CartUpsellAfter**](CartUpsellAfter.md) | | [optional] |
33
+ | **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] |
33
34
 
34
35
  ## Example
35
36
 
@@ -62,7 +63,8 @@ instance = UltracartClient::Cart.new(
62
63
  shipping: null,
63
64
  summary: null,
64
65
  taxes: null,
65
- upsell_after: null
66
+ upsell_after: null,
67
+ utms: null
66
68
  )
67
69
  ```
68
70
 
data/docs/CartUtm.md ADDED
@@ -0,0 +1,80 @@
1
+ # UltracartClient::CartUtm
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **attribution_first_click_subtotal** | **Float** | | [optional] |
8
+ | **attribution_first_click_total** | **Float** | | [optional] |
9
+ | **attribution_last_click_subtotal** | **Float** | | [optional] |
10
+ | **attribution_last_click_total** | **Float** | | [optional] |
11
+ | **attribution_linear_subtotal** | **Float** | | [optional] |
12
+ | **attribution_linear_total** | **Float** | | [optional] |
13
+ | **attribution_position_based_subtotal** | **Float** | | [optional] |
14
+ | **attribution_position_based_total** | **Float** | | [optional] |
15
+ | **click_dts** | **String** | Date/time that the click happened | [optional] |
16
+ | **facebook_ad_id** | **String** | | [optional] |
17
+ | **fbclid** | **String** | | [optional] |
18
+ | **gbraid** | **String** | | [optional] |
19
+ | **glcid** | **String** | | [optional] |
20
+ | **itm_campaign** | **String** | | [optional] |
21
+ | **itm_content** | **String** | | [optional] |
22
+ | **itm_id** | **String** | | [optional] |
23
+ | **itm_medium** | **String** | | [optional] |
24
+ | **itm_source** | **String** | | [optional] |
25
+ | **itm_term** | **String** | | [optional] |
26
+ | **msclkid** | **String** | | [optional] |
27
+ | **short_code** | **String** | | [optional] |
28
+ | **short_code_backup** | **Boolean** | | [optional] |
29
+ | **ttclid** | **String** | | [optional] |
30
+ | **uc_message_id** | **String** | | [optional] |
31
+ | **utm_campaign** | **String** | | [optional] |
32
+ | **utm_content** | **String** | | [optional] |
33
+ | **utm_id** | **String** | | [optional] |
34
+ | **utm_medium** | **String** | | [optional] |
35
+ | **utm_source** | **String** | | [optional] |
36
+ | **utm_term** | **String** | | [optional] |
37
+ | **vmcid** | **String** | | [optional] |
38
+ | **wbraid** | **String** | | [optional] |
39
+
40
+ ## Example
41
+
42
+ ```ruby
43
+ require 'ultracart_api'
44
+
45
+ instance = UltracartClient::CartUtm.new(
46
+ attribution_first_click_subtotal: null,
47
+ attribution_first_click_total: null,
48
+ attribution_last_click_subtotal: null,
49
+ attribution_last_click_total: null,
50
+ attribution_linear_subtotal: null,
51
+ attribution_linear_total: null,
52
+ attribution_position_based_subtotal: null,
53
+ attribution_position_based_total: null,
54
+ click_dts: null,
55
+ facebook_ad_id: null,
56
+ fbclid: null,
57
+ gbraid: null,
58
+ glcid: null,
59
+ itm_campaign: null,
60
+ itm_content: null,
61
+ itm_id: null,
62
+ itm_medium: null,
63
+ itm_source: null,
64
+ itm_term: null,
65
+ msclkid: null,
66
+ short_code: null,
67
+ short_code_backup: null,
68
+ ttclid: null,
69
+ uc_message_id: null,
70
+ utm_campaign: null,
71
+ utm_content: null,
72
+ utm_id: null,
73
+ utm_medium: null,
74
+ utm_source: null,
75
+ utm_term: null,
76
+ vmcid: null,
77
+ wbraid: null
78
+ )
79
+ ```
80
+
@@ -78,6 +78,9 @@ module UltracartClient
78
78
 
79
79
  attr_accessor :upsell_after
80
80
 
81
+ # UTM clicks. The zero index is the most recent (last) UTM click. Only available in BigQuery and on an abandon webhook.
82
+ attr_accessor :utms
83
+
81
84
  # Attribute mapping from ruby-style variable name to JSON key.
82
85
  def self.attribute_map
83
86
  {
@@ -106,7 +109,8 @@ module UltracartClient
106
109
  :'shipping' => :'shipping',
107
110
  :'summary' => :'summary',
108
111
  :'taxes' => :'taxes',
109
- :'upsell_after' => :'upsell_after'
112
+ :'upsell_after' => :'upsell_after',
113
+ :'utms' => :'utms'
110
114
  }
111
115
  end
112
116
 
@@ -143,7 +147,8 @@ module UltracartClient
143
147
  :'shipping' => :'CartShipping',
144
148
  :'summary' => :'CartSummary',
145
149
  :'taxes' => :'CartTaxes',
146
- :'upsell_after' => :'CartUpsellAfter'
150
+ :'upsell_after' => :'CartUpsellAfter',
151
+ :'utms' => :'Array<CartUtm>'
147
152
  }
148
153
  end
149
154
 
@@ -277,6 +282,12 @@ module UltracartClient
277
282
  if attributes.key?(:'upsell_after')
278
283
  self.upsell_after = attributes[:'upsell_after']
279
284
  end
285
+
286
+ if attributes.key?(:'utms')
287
+ if (value = attributes[:'utms']).is_a?(Array)
288
+ self.utms = value
289
+ end
290
+ end
280
291
  end
281
292
 
282
293
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -367,7 +378,8 @@ module UltracartClient
367
378
  shipping == o.shipping &&
368
379
  summary == o.summary &&
369
380
  taxes == o.taxes &&
370
- upsell_after == o.upsell_after
381
+ upsell_after == o.upsell_after &&
382
+ utms == o.utms
371
383
  end
372
384
 
373
385
  # @see the `==` method
@@ -379,7 +391,7 @@ module UltracartClient
379
391
  # Calculates hash code according to all attributes.
380
392
  # @return [Integer] Hash code
381
393
  def hash
382
- [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
394
+ [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
383
395
  end
384
396
 
385
397
  # Builds the object from hash
@@ -0,0 +1,499 @@
1
+ =begin
2
+ #UltraCart Rest API V2
3
+
4
+ #UltraCart REST API Version 2
5
+
6
+ The version of the OpenAPI document: 2.0.0
7
+ Contact: support@ultracart.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 6.0.1-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module UltracartClient
17
+ class CartUtm
18
+ attr_accessor :attribution_first_click_subtotal
19
+
20
+ attr_accessor :attribution_first_click_total
21
+
22
+ attr_accessor :attribution_last_click_subtotal
23
+
24
+ attr_accessor :attribution_last_click_total
25
+
26
+ attr_accessor :attribution_linear_subtotal
27
+
28
+ attr_accessor :attribution_linear_total
29
+
30
+ attr_accessor :attribution_position_based_subtotal
31
+
32
+ attr_accessor :attribution_position_based_total
33
+
34
+ # Date/time that the click happened
35
+ attr_accessor :click_dts
36
+
37
+ attr_accessor :facebook_ad_id
38
+
39
+ attr_accessor :fbclid
40
+
41
+ attr_accessor :gbraid
42
+
43
+ attr_accessor :glcid
44
+
45
+ attr_accessor :itm_campaign
46
+
47
+ attr_accessor :itm_content
48
+
49
+ attr_accessor :itm_id
50
+
51
+ attr_accessor :itm_medium
52
+
53
+ attr_accessor :itm_source
54
+
55
+ attr_accessor :itm_term
56
+
57
+ attr_accessor :msclkid
58
+
59
+ attr_accessor :short_code
60
+
61
+ attr_accessor :short_code_backup
62
+
63
+ attr_accessor :ttclid
64
+
65
+ attr_accessor :uc_message_id
66
+
67
+ attr_accessor :utm_campaign
68
+
69
+ attr_accessor :utm_content
70
+
71
+ attr_accessor :utm_id
72
+
73
+ attr_accessor :utm_medium
74
+
75
+ attr_accessor :utm_source
76
+
77
+ attr_accessor :utm_term
78
+
79
+ attr_accessor :vmcid
80
+
81
+ attr_accessor :wbraid
82
+
83
+ # Attribute mapping from ruby-style variable name to JSON key.
84
+ def self.attribute_map
85
+ {
86
+ :'attribution_first_click_subtotal' => :'attribution_first_click_subtotal',
87
+ :'attribution_first_click_total' => :'attribution_first_click_total',
88
+ :'attribution_last_click_subtotal' => :'attribution_last_click_subtotal',
89
+ :'attribution_last_click_total' => :'attribution_last_click_total',
90
+ :'attribution_linear_subtotal' => :'attribution_linear_subtotal',
91
+ :'attribution_linear_total' => :'attribution_linear_total',
92
+ :'attribution_position_based_subtotal' => :'attribution_position_based_subtotal',
93
+ :'attribution_position_based_total' => :'attribution_position_based_total',
94
+ :'click_dts' => :'click_dts',
95
+ :'facebook_ad_id' => :'facebook_ad_id',
96
+ :'fbclid' => :'fbclid',
97
+ :'gbraid' => :'gbraid',
98
+ :'glcid' => :'glcid',
99
+ :'itm_campaign' => :'itm_campaign',
100
+ :'itm_content' => :'itm_content',
101
+ :'itm_id' => :'itm_id',
102
+ :'itm_medium' => :'itm_medium',
103
+ :'itm_source' => :'itm_source',
104
+ :'itm_term' => :'itm_term',
105
+ :'msclkid' => :'msclkid',
106
+ :'short_code' => :'short_code',
107
+ :'short_code_backup' => :'short_code_backup',
108
+ :'ttclid' => :'ttclid',
109
+ :'uc_message_id' => :'uc_message_id',
110
+ :'utm_campaign' => :'utm_campaign',
111
+ :'utm_content' => :'utm_content',
112
+ :'utm_id' => :'utm_id',
113
+ :'utm_medium' => :'utm_medium',
114
+ :'utm_source' => :'utm_source',
115
+ :'utm_term' => :'utm_term',
116
+ :'vmcid' => :'vmcid',
117
+ :'wbraid' => :'wbraid'
118
+ }
119
+ end
120
+
121
+ # Returns all the JSON keys this model knows about
122
+ def self.acceptable_attributes
123
+ attribute_map.values
124
+ end
125
+
126
+ # Attribute type mapping.
127
+ def self.openapi_types
128
+ {
129
+ :'attribution_first_click_subtotal' => :'Float',
130
+ :'attribution_first_click_total' => :'Float',
131
+ :'attribution_last_click_subtotal' => :'Float',
132
+ :'attribution_last_click_total' => :'Float',
133
+ :'attribution_linear_subtotal' => :'Float',
134
+ :'attribution_linear_total' => :'Float',
135
+ :'attribution_position_based_subtotal' => :'Float',
136
+ :'attribution_position_based_total' => :'Float',
137
+ :'click_dts' => :'String',
138
+ :'facebook_ad_id' => :'String',
139
+ :'fbclid' => :'String',
140
+ :'gbraid' => :'String',
141
+ :'glcid' => :'String',
142
+ :'itm_campaign' => :'String',
143
+ :'itm_content' => :'String',
144
+ :'itm_id' => :'String',
145
+ :'itm_medium' => :'String',
146
+ :'itm_source' => :'String',
147
+ :'itm_term' => :'String',
148
+ :'msclkid' => :'String',
149
+ :'short_code' => :'String',
150
+ :'short_code_backup' => :'Boolean',
151
+ :'ttclid' => :'String',
152
+ :'uc_message_id' => :'String',
153
+ :'utm_campaign' => :'String',
154
+ :'utm_content' => :'String',
155
+ :'utm_id' => :'String',
156
+ :'utm_medium' => :'String',
157
+ :'utm_source' => :'String',
158
+ :'utm_term' => :'String',
159
+ :'vmcid' => :'String',
160
+ :'wbraid' => :'String'
161
+ }
162
+ end
163
+
164
+ # List of attributes with nullable: true
165
+ def self.openapi_nullable
166
+ Set.new([
167
+ ])
168
+ end
169
+
170
+ # Initializes the object
171
+ # @param [Hash] attributes Model attributes in the form of hash
172
+ def initialize(attributes = {})
173
+ if (!attributes.is_a?(Hash))
174
+ fail ArgumentError, "The input argument (attributes) must be a hash in `UltracartClient::CartUtm` initialize method"
175
+ end
176
+
177
+ # check to see if the attribute exists and convert string to symbol for hash key
178
+ attributes = attributes.each_with_object({}) { |(k, v), h|
179
+ if (!self.class.attribute_map.key?(k.to_sym))
180
+ fail ArgumentError, "`#{k}` is not a valid attribute in `UltracartClient::CartUtm`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
181
+ end
182
+ h[k.to_sym] = v
183
+ }
184
+
185
+ if attributes.key?(:'attribution_first_click_subtotal')
186
+ self.attribution_first_click_subtotal = attributes[:'attribution_first_click_subtotal']
187
+ end
188
+
189
+ if attributes.key?(:'attribution_first_click_total')
190
+ self.attribution_first_click_total = attributes[:'attribution_first_click_total']
191
+ end
192
+
193
+ if attributes.key?(:'attribution_last_click_subtotal')
194
+ self.attribution_last_click_subtotal = attributes[:'attribution_last_click_subtotal']
195
+ end
196
+
197
+ if attributes.key?(:'attribution_last_click_total')
198
+ self.attribution_last_click_total = attributes[:'attribution_last_click_total']
199
+ end
200
+
201
+ if attributes.key?(:'attribution_linear_subtotal')
202
+ self.attribution_linear_subtotal = attributes[:'attribution_linear_subtotal']
203
+ end
204
+
205
+ if attributes.key?(:'attribution_linear_total')
206
+ self.attribution_linear_total = attributes[:'attribution_linear_total']
207
+ end
208
+
209
+ if attributes.key?(:'attribution_position_based_subtotal')
210
+ self.attribution_position_based_subtotal = attributes[:'attribution_position_based_subtotal']
211
+ end
212
+
213
+ if attributes.key?(:'attribution_position_based_total')
214
+ self.attribution_position_based_total = attributes[:'attribution_position_based_total']
215
+ end
216
+
217
+ if attributes.key?(:'click_dts')
218
+ self.click_dts = attributes[:'click_dts']
219
+ end
220
+
221
+ if attributes.key?(:'facebook_ad_id')
222
+ self.facebook_ad_id = attributes[:'facebook_ad_id']
223
+ end
224
+
225
+ if attributes.key?(:'fbclid')
226
+ self.fbclid = attributes[:'fbclid']
227
+ end
228
+
229
+ if attributes.key?(:'gbraid')
230
+ self.gbraid = attributes[:'gbraid']
231
+ end
232
+
233
+ if attributes.key?(:'glcid')
234
+ self.glcid = attributes[:'glcid']
235
+ end
236
+
237
+ if attributes.key?(:'itm_campaign')
238
+ self.itm_campaign = attributes[:'itm_campaign']
239
+ end
240
+
241
+ if attributes.key?(:'itm_content')
242
+ self.itm_content = attributes[:'itm_content']
243
+ end
244
+
245
+ if attributes.key?(:'itm_id')
246
+ self.itm_id = attributes[:'itm_id']
247
+ end
248
+
249
+ if attributes.key?(:'itm_medium')
250
+ self.itm_medium = attributes[:'itm_medium']
251
+ end
252
+
253
+ if attributes.key?(:'itm_source')
254
+ self.itm_source = attributes[:'itm_source']
255
+ end
256
+
257
+ if attributes.key?(:'itm_term')
258
+ self.itm_term = attributes[:'itm_term']
259
+ end
260
+
261
+ if attributes.key?(:'msclkid')
262
+ self.msclkid = attributes[:'msclkid']
263
+ end
264
+
265
+ if attributes.key?(:'short_code')
266
+ self.short_code = attributes[:'short_code']
267
+ end
268
+
269
+ if attributes.key?(:'short_code_backup')
270
+ self.short_code_backup = attributes[:'short_code_backup']
271
+ end
272
+
273
+ if attributes.key?(:'ttclid')
274
+ self.ttclid = attributes[:'ttclid']
275
+ end
276
+
277
+ if attributes.key?(:'uc_message_id')
278
+ self.uc_message_id = attributes[:'uc_message_id']
279
+ end
280
+
281
+ if attributes.key?(:'utm_campaign')
282
+ self.utm_campaign = attributes[:'utm_campaign']
283
+ end
284
+
285
+ if attributes.key?(:'utm_content')
286
+ self.utm_content = attributes[:'utm_content']
287
+ end
288
+
289
+ if attributes.key?(:'utm_id')
290
+ self.utm_id = attributes[:'utm_id']
291
+ end
292
+
293
+ if attributes.key?(:'utm_medium')
294
+ self.utm_medium = attributes[:'utm_medium']
295
+ end
296
+
297
+ if attributes.key?(:'utm_source')
298
+ self.utm_source = attributes[:'utm_source']
299
+ end
300
+
301
+ if attributes.key?(:'utm_term')
302
+ self.utm_term = attributes[:'utm_term']
303
+ end
304
+
305
+ if attributes.key?(:'vmcid')
306
+ self.vmcid = attributes[:'vmcid']
307
+ end
308
+
309
+ if attributes.key?(:'wbraid')
310
+ self.wbraid = attributes[:'wbraid']
311
+ end
312
+ end
313
+
314
+ # Show invalid properties with the reasons. Usually used together with valid?
315
+ # @return Array for valid properties with the reasons
316
+ def list_invalid_properties
317
+ invalid_properties = Array.new
318
+ invalid_properties
319
+ end
320
+
321
+ # Check to see if the all the properties in the model are valid
322
+ # @return true if the model is valid
323
+ def valid?
324
+ true
325
+ end
326
+
327
+ # Checks equality by comparing each attribute.
328
+ # @param [Object] Object to be compared
329
+ def ==(o)
330
+ return true if self.equal?(o)
331
+ self.class == o.class &&
332
+ attribution_first_click_subtotal == o.attribution_first_click_subtotal &&
333
+ attribution_first_click_total == o.attribution_first_click_total &&
334
+ attribution_last_click_subtotal == o.attribution_last_click_subtotal &&
335
+ attribution_last_click_total == o.attribution_last_click_total &&
336
+ attribution_linear_subtotal == o.attribution_linear_subtotal &&
337
+ attribution_linear_total == o.attribution_linear_total &&
338
+ attribution_position_based_subtotal == o.attribution_position_based_subtotal &&
339
+ attribution_position_based_total == o.attribution_position_based_total &&
340
+ click_dts == o.click_dts &&
341
+ facebook_ad_id == o.facebook_ad_id &&
342
+ fbclid == o.fbclid &&
343
+ gbraid == o.gbraid &&
344
+ glcid == o.glcid &&
345
+ itm_campaign == o.itm_campaign &&
346
+ itm_content == o.itm_content &&
347
+ itm_id == o.itm_id &&
348
+ itm_medium == o.itm_medium &&
349
+ itm_source == o.itm_source &&
350
+ itm_term == o.itm_term &&
351
+ msclkid == o.msclkid &&
352
+ short_code == o.short_code &&
353
+ short_code_backup == o.short_code_backup &&
354
+ ttclid == o.ttclid &&
355
+ uc_message_id == o.uc_message_id &&
356
+ utm_campaign == o.utm_campaign &&
357
+ utm_content == o.utm_content &&
358
+ utm_id == o.utm_id &&
359
+ utm_medium == o.utm_medium &&
360
+ utm_source == o.utm_source &&
361
+ utm_term == o.utm_term &&
362
+ vmcid == o.vmcid &&
363
+ wbraid == o.wbraid
364
+ end
365
+
366
+ # @see the `==` method
367
+ # @param [Object] Object to be compared
368
+ def eql?(o)
369
+ self == o
370
+ end
371
+
372
+ # Calculates hash code according to all attributes.
373
+ # @return [Integer] Hash code
374
+ def hash
375
+ [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
376
+ end
377
+
378
+ # Builds the object from hash
379
+ # @param [Hash] attributes Model attributes in the form of hash
380
+ # @return [Object] Returns the model itself
381
+ def self.build_from_hash(attributes)
382
+ new.build_from_hash(attributes)
383
+ end
384
+
385
+ # Builds the object from hash
386
+ # @param [Hash] attributes Model attributes in the form of hash
387
+ # @return [Object] Returns the model itself
388
+ def build_from_hash(attributes)
389
+ return nil unless attributes.is_a?(Hash)
390
+ attributes = attributes.transform_keys(&:to_sym)
391
+ self.class.openapi_types.each_pair do |key, type|
392
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
393
+ self.send("#{key}=", nil)
394
+ elsif type =~ /\AArray<(.*)>/i
395
+ # check to ensure the input is an array given that the attribute
396
+ # is documented as an array but the input is not
397
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
398
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
399
+ end
400
+ elsif !attributes[self.class.attribute_map[key]].nil?
401
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
402
+ end
403
+ end
404
+
405
+ self
406
+ end
407
+
408
+ # Deserializes the data based on type
409
+ # @param string type Data type
410
+ # @param string value Value to be deserialized
411
+ # @return [Object] Deserialized data
412
+ def _deserialize(type, value)
413
+ case type.to_sym
414
+ when :Time
415
+ Time.parse(value)
416
+ when :Date
417
+ Date.parse(value)
418
+ when :String
419
+ value.to_s
420
+ when :Integer
421
+ value.to_i
422
+ when :Float
423
+ value.to_f
424
+ when :Boolean
425
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
426
+ true
427
+ else
428
+ false
429
+ end
430
+ when :Object
431
+ # generic object (usually a Hash), return directly
432
+ value
433
+ when /\AArray<(?<inner_type>.+)>\z/
434
+ inner_type = Regexp.last_match[:inner_type]
435
+ value.map { |v| _deserialize(inner_type, v) }
436
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
437
+ k_type = Regexp.last_match[:k_type]
438
+ v_type = Regexp.last_match[:v_type]
439
+ {}.tap do |hash|
440
+ value.each do |k, v|
441
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
442
+ end
443
+ end
444
+ else # model
445
+ # models (e.g. Pet) or oneOf
446
+ klass = UltracartClient.const_get(type)
447
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
448
+ end
449
+ end
450
+
451
+ # Returns the string representation of the object
452
+ # @return [String] String presentation of the object
453
+ def to_s
454
+ to_hash.to_s
455
+ end
456
+
457
+ # to_body is an alias to to_hash (backward compatibility)
458
+ # @return [Hash] Returns the object in the form of hash
459
+ def to_body
460
+ to_hash
461
+ end
462
+
463
+ # Returns the object in the form of hash
464
+ # @return [Hash] Returns the object in the form of hash
465
+ def to_hash
466
+ hash = {}
467
+ self.class.attribute_map.each_pair do |attr, param|
468
+ value = self.send(attr)
469
+ if value.nil?
470
+ is_nullable = self.class.openapi_nullable.include?(attr)
471
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
472
+ end
473
+
474
+ hash[param] = _to_hash(value)
475
+ end
476
+ hash
477
+ end
478
+
479
+ # Outputs non-array value in the form of hash
480
+ # For object, use to_hash. Otherwise, just return the value
481
+ # @param [Object] value Any valid value
482
+ # @return [Hash] Returns the value in the form of hash
483
+ def _to_hash(value)
484
+ if value.is_a?(Array)
485
+ value.compact.map { |v| _to_hash(v) }
486
+ elsif value.is_a?(Hash)
487
+ {}.tap do |hash|
488
+ value.each { |k, v| hash[k] = _to_hash(v) }
489
+ end
490
+ elsif value.respond_to? :to_hash
491
+ value.to_hash
492
+ else
493
+ value
494
+ end
495
+ end
496
+
497
+ end
498
+
499
+ end
@@ -11,5 +11,5 @@ OpenAPI Generator version: 6.0.1-SNAPSHOT
11
11
  =end
12
12
 
13
13
  module UltracartClient
14
- VERSION = '4.1.45'
14
+ VERSION = '4.1.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: 4.1.45
4
+ version: 4.1.46
5
5
  platform: ruby
6
6
  authors:
7
7
  - UltraCart
@@ -164,6 +164,7 @@ files:
164
164
  - docs/CartSummary.md
165
165
  - docs/CartTaxes.md
166
166
  - docs/CartUpsellAfter.md
167
+ - docs/CartUtm.md
167
168
  - docs/CartValidationRequest.md
168
169
  - docs/CartValidationResponse.md
169
170
  - docs/ChanelPartnerReasonCodesResponse.md
@@ -1119,6 +1120,7 @@ files:
1119
1120
  - lib/ultracart_api/models/cart_summary.rb
1120
1121
  - lib/ultracart_api/models/cart_taxes.rb
1121
1122
  - lib/ultracart_api/models/cart_upsell_after.rb
1123
+ - lib/ultracart_api/models/cart_utm.rb
1122
1124
  - lib/ultracart_api/models/cart_validation_request.rb
1123
1125
  - lib/ultracart_api/models/cart_validation_response.rb
1124
1126
  - lib/ultracart_api/models/chanel_partner_reason_codes_response.rb