ultracart_api 3.10.155 → 3.10.156

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 57080fecb18b095e1f44bd2eab80895accce496e85a876e62bed6b67e0f60789
4
- data.tar.gz: 5447019d580b5937c776098e3dd906d22bf0bc8b25f2ea61bf617d703e9068e1
3
+ metadata.gz: 3feef41f446f916e6a402ef637adad8eacacef4133e3c7b726ed2a7549d28cad
4
+ data.tar.gz: e578ca628dc5d6edc4bcd03ae3b94025c35ebc1f9dab2b278a048ae527b5c435
5
5
  SHA512:
6
- metadata.gz: 704f9b3869416c846440b9f4937b93cd6031db37f7350c9a59b39c1b17b87d446bf1a2b3f81d519739be61345d617d4b8f5ebf644fa877ea075a5c48bd843399
7
- data.tar.gz: 4041322469ec3c62c2cfd4c98a186fe2091f46cfd36245e4e035a50b1f244e4939c186842c26f05d322008101741bf57d33d496ecca3b330638bd0840e776d91
6
+ metadata.gz: 88f4cf2e5e5807166ec9287ee7b02a781cde9d7b75e9596bf8ed420caf6152468dd6d8bc7990c603e394206774861dc61ccac8ff2ecbb063b8006056de015046
7
+ data.tar.gz: 43d72795247c15a186be086f4fd16bedcbde4bae3f38f6ea0e95f6d2e745a96197d123260525252ff15229d5d86e583bd81fc42ee836ae93bf23e07f3c85c9d8
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.10.155
10
+ - Package version: 3.10.156
11
11
  - Build package: io.swagger.codegen.languages.RubyClientCodegen
12
12
  For more information, please visit [http://www.ultracart.com](http://www.ultracart.com)
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.10.155.gem
27
+ gem install ./ultracart_api-3.10.156.gem
28
28
  ```
29
- (for development, run `gem install --dev ./ultracart_api-3.10.155.gem` to install the development dependencies)
29
+ (for development, run `gem install --dev ./ultracart_api-3.10.156.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.10.155'
35
+ gem 'ultracart_api', '~> 3.10.156'
36
36
 
37
37
  ### Install from Git
38
38
 
@@ -723,6 +723,7 @@ Class | Method | HTTP request | Description
723
723
  - [UltracartClient::CouponExistsResponse](docs/CouponExistsResponse.md)
724
724
  - [UltracartClient::CouponFreeItemAndShippingWithSubtotal](docs/CouponFreeItemAndShippingWithSubtotal.md)
725
725
  - [UltracartClient::CouponFreeItemWithItemPurchase](docs/CouponFreeItemWithItemPurchase.md)
726
+ - [UltracartClient::CouponFreeItemWithItemPurchaseAndFreeShipping](docs/CouponFreeItemWithItemPurchaseAndFreeShipping.md)
726
727
  - [UltracartClient::CouponFreeItemWithSubtotal](docs/CouponFreeItemWithSubtotal.md)
727
728
  - [UltracartClient::CouponFreeItemsWithItemPurchase](docs/CouponFreeItemsWithItemPurchase.md)
728
729
  - [UltracartClient::CouponFreeItemsWithMixMatchPurchase](docs/CouponFreeItemsWithMixMatchPurchase.md)
@@ -786,6 +787,7 @@ Class | Method | HTTP request | Description
786
787
  - [UltracartClient::CustomerOrdersSummary](docs/CustomerOrdersSummary.md)
787
788
  - [UltracartClient::CustomerPricingTier](docs/CustomerPricingTier.md)
788
789
  - [UltracartClient::CustomerPrivacy](docs/CustomerPrivacy.md)
790
+ - [UltracartClient::CustomerProperty](docs/CustomerProperty.md)
789
791
  - [UltracartClient::CustomerQuery](docs/CustomerQuery.md)
790
792
  - [UltracartClient::CustomerQuotesSummary](docs/CustomerQuotesSummary.md)
791
793
  - [UltracartClient::CustomerResponse](docs/CustomerResponse.md)
@@ -1360,6 +1362,7 @@ Not every change is committed to every SDK.
1360
1362
 
1361
1363
  | Version | Date | Comments |
1362
1364
  | --: | :-: | --- |
1365
+ | 3.10.156 | 08/31/2023 | new coupon - free item and free shipping with purchase |
1363
1366
  | 3.10.155 | 08/16/2023 | added validate_original_order query param to auto order update method |
1364
1367
  | 3.10.154 | 08/14/2023 | esp - add require_order_within_last to the settings object |
1365
1368
  | 3.10.153 | 08/14/2023 | esp - expose rate limiter values in settings object |
data/docs/Coupon.md CHANGED
@@ -27,6 +27,7 @@ Name | Type | Description | Notes
27
27
  **expiration_dts** | **String** | Date/time when coupon expires | [optional]
28
28
  **free_item_and_shipping_with_subtotal** | [**CouponFreeItemAndShippingWithSubtotal**](CouponFreeItemAndShippingWithSubtotal.md) | | [optional]
29
29
  **free_item_with_item_purchase** | [**CouponFreeItemWithItemPurchase**](CouponFreeItemWithItemPurchase.md) | | [optional]
30
+ **free_item_with_item_purchase_and_free_shipping** | [**CouponFreeItemWithItemPurchaseAndFreeShipping**](CouponFreeItemWithItemPurchaseAndFreeShipping.md) | | [optional]
30
31
  **free_item_with_subtotal** | [**CouponFreeItemWithSubtotal**](CouponFreeItemWithSubtotal.md) | | [optional]
31
32
  **free_items_with_item_purchase** | [**CouponFreeItemsWithItemPurchase**](CouponFreeItemsWithItemPurchase.md) | | [optional]
32
33
  **free_items_with_mixmatch_purchase** | [**CouponFreeItemsWithMixMatchPurchase**](CouponFreeItemsWithMixMatchPurchase.md) | | [optional]
@@ -0,0 +1,11 @@
1
+ # UltracartClient::CouponFreeItemWithItemPurchaseAndFreeShipping
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **items** | **Array<String>** | A list of free items which will receive a discount if one of the required purchase items is purchased. | [optional]
7
+ **limit** | **Integer** | The (optional) maximum quantity of discounted items. Free shipping will apply to all units of the free item ids though. | [optional]
8
+ **match_required_purchase_item_to_free_item** | **BOOLEAN** | If true then the free item is matched 1:1 with the free item in the list. | [optional]
9
+ **required_purchase_items** | **Array<String>** | Required items (at least one from the list) that must be purchased for coupon to be valid | [optional]
10
+
11
+
data/docs/Customer.md CHANGED
@@ -43,6 +43,7 @@ Name | Type | Description | Notes
43
43
  **password** | **String** | Password (may only be set, never read) | [optional]
44
44
  **pricing_tiers** | [**Array<CustomerPricingTier>**](CustomerPricingTier.md) | Pricing tiers for this customer | [optional]
45
45
  **privacy** | [**CustomerPrivacy**](CustomerPrivacy.md) | | [optional]
46
+ **properties** | [**Array<CustomerProperty>**](CustomerProperty.md) | Properties for this customer | [optional]
46
47
  **qb_class** | **String** | QuickBooks class to import this customer as | [optional]
47
48
  **qb_code** | **String** | QuickBooks name to import this customer as | [optional]
48
49
  **qb_tax_exemption_reason_code** | **Integer** | QuickBooks tax exemption reason code | [optional]
@@ -0,0 +1,10 @@
1
+ # UltracartClient::CustomerProperty
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **expiration_dts** | **String** | The date/time that the property expires and is deleted | [optional]
7
+ **name** | **String** | Name | [optional]
8
+ **value** | **String** | Value | [optional]
9
+
10
+
@@ -70,6 +70,8 @@ module UltracartClient
70
70
 
71
71
  attr_accessor :free_item_with_item_purchase
72
72
 
73
+ attr_accessor :free_item_with_item_purchase_and_free_shipping
74
+
73
75
  attr_accessor :free_item_with_subtotal
74
76
 
75
77
  attr_accessor :free_items_with_item_purchase
@@ -214,6 +216,7 @@ module UltracartClient
214
216
  :'expiration_dts' => :'expiration_dts',
215
217
  :'free_item_and_shipping_with_subtotal' => :'free_item_and_shipping_with_subtotal',
216
218
  :'free_item_with_item_purchase' => :'free_item_with_item_purchase',
219
+ :'free_item_with_item_purchase_and_free_shipping' => :'free_item_with_item_purchase_and_free_shipping',
217
220
  :'free_item_with_subtotal' => :'free_item_with_subtotal',
218
221
  :'free_items_with_item_purchase' => :'free_items_with_item_purchase',
219
222
  :'free_items_with_mixmatch_purchase' => :'free_items_with_mixmatch_purchase',
@@ -286,6 +289,7 @@ module UltracartClient
286
289
  :'expiration_dts' => :'String',
287
290
  :'free_item_and_shipping_with_subtotal' => :'CouponFreeItemAndShippingWithSubtotal',
288
291
  :'free_item_with_item_purchase' => :'CouponFreeItemWithItemPurchase',
292
+ :'free_item_with_item_purchase_and_free_shipping' => :'CouponFreeItemWithItemPurchaseAndFreeShipping',
289
293
  :'free_item_with_subtotal' => :'CouponFreeItemWithSubtotal',
290
294
  :'free_items_with_item_purchase' => :'CouponFreeItemsWithItemPurchase',
291
295
  :'free_items_with_mixmatch_purchase' => :'CouponFreeItemsWithMixMatchPurchase',
@@ -435,6 +439,10 @@ module UltracartClient
435
439
  self.free_item_with_item_purchase = attributes[:'free_item_with_item_purchase']
436
440
  end
437
441
 
442
+ if attributes.has_key?(:'free_item_with_item_purchase_and_free_shipping')
443
+ self.free_item_with_item_purchase_and_free_shipping = attributes[:'free_item_with_item_purchase_and_free_shipping']
444
+ end
445
+
438
446
  if attributes.has_key?(:'free_item_with_subtotal')
439
447
  self.free_item_with_subtotal = attributes[:'free_item_with_subtotal']
440
448
  end
@@ -744,6 +752,7 @@ module UltracartClient
744
752
  expiration_dts == o.expiration_dts &&
745
753
  free_item_and_shipping_with_subtotal == o.free_item_and_shipping_with_subtotal &&
746
754
  free_item_with_item_purchase == o.free_item_with_item_purchase &&
755
+ free_item_with_item_purchase_and_free_shipping == o.free_item_with_item_purchase_and_free_shipping &&
747
756
  free_item_with_subtotal == o.free_item_with_subtotal &&
748
757
  free_items_with_item_purchase == o.free_items_with_item_purchase &&
749
758
  free_items_with_mixmatch_purchase == o.free_items_with_mixmatch_purchase &&
@@ -797,7 +806,7 @@ module UltracartClient
797
806
  # Calculates hash code according to all attributes.
798
807
  # @return [Fixnum] Hash code
799
808
  def hash
800
- [affiliate_oid, allow_multiple_one_time_codes, amount_off_items, amount_off_shipping, amount_off_shipping_with_items_purchase, amount_off_subtotal, amount_off_subtotal_and_free_shipping, amount_off_subtotal_and_shipping, amount_off_subtotal_with_block_purchase, amount_off_subtotal_with_items_purchase, amount_off_subtotal_with_purchase, amount_shipping_with_subtotal, automatically_apply_coupon_codes, buy_one_get_one, calculated_description, can_be_used_with_other_coupons, coupon_oid, coupon_type, description, discount_item_with_item_purchase, discount_items, expiration_dts, free_item_and_shipping_with_subtotal, free_item_with_item_purchase, free_item_with_subtotal, free_items_with_item_purchase, free_items_with_mixmatch_purchase, free_shipping, free_shipping_specific_items, free_shipping_with_items_purchase, free_shipping_with_subtotal, hide_from_customer, merchant_code, merchant_notes, more_loyalty_cashback, more_loyalty_points, multiple_amounts_off_items, no_discount, percent_more_loyalty_cashback, percent_more_loyalty_points, percent_off_item_with_items_quantity_purchase, percent_off_items, percent_off_items_and_free_shipping, percent_off_items_with_items_purchase, percent_off_msrp_items, percent_off_retail_price_items, percent_off_shipping, percent_off_subtotal, percent_off_subtotal_and_free_shipping, percent_off_subtotal_limit, percent_off_subtotal_with_items_purchase, percent_off_subtotal_with_subtotal, quickbooks_code, restrict_by_postal_codes, restrict_by_screen_branding_theme_codes, restrict_by_storefronts, skip_on_rebill, start_dts, super_coupon, tiered_amount_off_items, tiered_amount_off_subtotal, tiered_percent_off_items, tiered_percent_off_shipping, tiered_percent_off_subtotal, tiered_percent_off_subtotal_based_on_msrp, usable_by].hash
809
+ [affiliate_oid, allow_multiple_one_time_codes, amount_off_items, amount_off_shipping, amount_off_shipping_with_items_purchase, amount_off_subtotal, amount_off_subtotal_and_free_shipping, amount_off_subtotal_and_shipping, amount_off_subtotal_with_block_purchase, amount_off_subtotal_with_items_purchase, amount_off_subtotal_with_purchase, amount_shipping_with_subtotal, automatically_apply_coupon_codes, buy_one_get_one, calculated_description, can_be_used_with_other_coupons, coupon_oid, coupon_type, description, discount_item_with_item_purchase, discount_items, expiration_dts, free_item_and_shipping_with_subtotal, free_item_with_item_purchase, free_item_with_item_purchase_and_free_shipping, free_item_with_subtotal, free_items_with_item_purchase, free_items_with_mixmatch_purchase, free_shipping, free_shipping_specific_items, free_shipping_with_items_purchase, free_shipping_with_subtotal, hide_from_customer, merchant_code, merchant_notes, more_loyalty_cashback, more_loyalty_points, multiple_amounts_off_items, no_discount, percent_more_loyalty_cashback, percent_more_loyalty_points, percent_off_item_with_items_quantity_purchase, percent_off_items, percent_off_items_and_free_shipping, percent_off_items_with_items_purchase, percent_off_msrp_items, percent_off_retail_price_items, percent_off_shipping, percent_off_subtotal, percent_off_subtotal_and_free_shipping, percent_off_subtotal_limit, percent_off_subtotal_with_items_purchase, percent_off_subtotal_with_subtotal, quickbooks_code, restrict_by_postal_codes, restrict_by_screen_branding_theme_codes, restrict_by_storefronts, skip_on_rebill, start_dts, super_coupon, tiered_amount_off_items, tiered_amount_off_subtotal, tiered_percent_off_items, tiered_percent_off_shipping, tiered_percent_off_subtotal, tiered_percent_off_subtotal_based_on_msrp, usable_by].hash
801
810
  end
802
811
 
803
812
  # Builds the object from hash
@@ -0,0 +1,219 @@
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 CouponFreeItemWithItemPurchaseAndFreeShipping
17
+ # A list of free items which will receive a discount if one of the required purchase items is purchased.
18
+ attr_accessor :items
19
+
20
+ # The (optional) maximum quantity of discounted items. Free shipping will apply to all units of the free item ids though.
21
+ attr_accessor :limit
22
+
23
+ # If true then the free item is matched 1:1 with the free item in the list.
24
+ attr_accessor :match_required_purchase_item_to_free_item
25
+
26
+ # Required items (at least one from the list) that must be purchased for coupon to be valid
27
+ attr_accessor :required_purchase_items
28
+
29
+ # Attribute mapping from ruby-style variable name to JSON key.
30
+ def self.attribute_map
31
+ {
32
+ :'items' => :'items',
33
+ :'limit' => :'limit',
34
+ :'match_required_purchase_item_to_free_item' => :'match_required_purchase_item_to_free_item',
35
+ :'required_purchase_items' => :'required_purchase_items'
36
+ }
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ def self.swagger_types
41
+ {
42
+ :'items' => :'Array<String>',
43
+ :'limit' => :'Integer',
44
+ :'match_required_purchase_item_to_free_item' => :'BOOLEAN',
45
+ :'required_purchase_items' => :'Array<String>'
46
+ }
47
+ end
48
+
49
+ # Initializes the object
50
+ # @param [Hash] attributes Model attributes in the form of hash
51
+ def initialize(attributes = {})
52
+ return unless attributes.is_a?(Hash)
53
+
54
+ # convert string to symbol for hash key
55
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
56
+
57
+ if attributes.has_key?(:'items')
58
+ if (value = attributes[:'items']).is_a?(Array)
59
+ self.items = value
60
+ end
61
+ end
62
+
63
+ if attributes.has_key?(:'limit')
64
+ self.limit = attributes[:'limit']
65
+ end
66
+
67
+ if attributes.has_key?(:'match_required_purchase_item_to_free_item')
68
+ self.match_required_purchase_item_to_free_item = attributes[:'match_required_purchase_item_to_free_item']
69
+ end
70
+
71
+ if attributes.has_key?(:'required_purchase_items')
72
+ if (value = attributes[:'required_purchase_items']).is_a?(Array)
73
+ self.required_purchase_items = value
74
+ end
75
+ end
76
+ end
77
+
78
+ # Show invalid properties with the reasons. Usually used together with valid?
79
+ # @return Array for valid properties with the reasons
80
+ def list_invalid_properties
81
+ invalid_properties = Array.new
82
+ invalid_properties
83
+ end
84
+
85
+ # Check to see if the all the properties in the model are valid
86
+ # @return true if the model is valid
87
+ def valid?
88
+ true
89
+ end
90
+
91
+ # Checks equality by comparing each attribute.
92
+ # @param [Object] Object to be compared
93
+ def ==(o)
94
+ return true if self.equal?(o)
95
+ self.class == o.class &&
96
+ items == o.items &&
97
+ limit == o.limit &&
98
+ match_required_purchase_item_to_free_item == o.match_required_purchase_item_to_free_item &&
99
+ required_purchase_items == o.required_purchase_items
100
+ end
101
+
102
+ # @see the `==` method
103
+ # @param [Object] Object to be compared
104
+ def eql?(o)
105
+ self == o
106
+ end
107
+
108
+ # Calculates hash code according to all attributes.
109
+ # @return [Fixnum] Hash code
110
+ def hash
111
+ [items, limit, match_required_purchase_item_to_free_item, required_purchase_items].hash
112
+ end
113
+
114
+ # Builds the object from hash
115
+ # @param [Hash] attributes Model attributes in the form of hash
116
+ # @return [Object] Returns the model itself
117
+ def build_from_hash(attributes)
118
+ return nil unless attributes.is_a?(Hash)
119
+ self.class.swagger_types.each_pair do |key, type|
120
+ if type =~ /\AArray<(.*)>/i
121
+ # check to ensure the input is an array given that the attribute
122
+ # is documented as an array but the input is not
123
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
124
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
125
+ end
126
+ elsif !attributes[self.class.attribute_map[key]].nil?
127
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
128
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
129
+ end
130
+
131
+ self
132
+ end
133
+
134
+ # Deserializes the data based on type
135
+ # @param string type Data type
136
+ # @param string value Value to be deserialized
137
+ # @return [Object] Deserialized data
138
+ def _deserialize(type, value)
139
+ case type.to_sym
140
+ when :DateTime
141
+ DateTime.parse(value)
142
+ when :Date
143
+ Date.parse(value)
144
+ when :String
145
+ value.to_s
146
+ when :Integer
147
+ value.to_i
148
+ when :Float
149
+ value.to_f
150
+ when :BOOLEAN
151
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
152
+ true
153
+ else
154
+ false
155
+ end
156
+ when :Object
157
+ # generic object (usually a Hash), return directly
158
+ value
159
+ when /\AArray<(?<inner_type>.+)>\z/
160
+ inner_type = Regexp.last_match[:inner_type]
161
+ value.map { |v| _deserialize(inner_type, v) }
162
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
163
+ k_type = Regexp.last_match[:k_type]
164
+ v_type = Regexp.last_match[:v_type]
165
+ {}.tap do |hash|
166
+ value.each do |k, v|
167
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
168
+ end
169
+ end
170
+ else # model
171
+ temp_model = UltracartClient.const_get(type).new
172
+ temp_model.build_from_hash(value)
173
+ end
174
+ end
175
+
176
+ # Returns the string representation of the object
177
+ # @return [String] String presentation of the object
178
+ def to_s
179
+ to_hash.to_s
180
+ end
181
+
182
+ # to_body is an alias to to_hash (backward compatibility)
183
+ # @return [Hash] Returns the object in the form of hash
184
+ def to_body
185
+ to_hash
186
+ end
187
+
188
+ # Returns the object in the form of hash
189
+ # @return [Hash] Returns the object in the form of hash
190
+ def to_hash
191
+ hash = {}
192
+ self.class.attribute_map.each_pair do |attr, param|
193
+ value = self.send(attr)
194
+ next if value.nil?
195
+ hash[param] = _to_hash(value)
196
+ end
197
+ hash
198
+ end
199
+
200
+ # Outputs non-array value in the form of hash
201
+ # For object, use to_hash. Otherwise, just return the value
202
+ # @param [Object] value Any valid value
203
+ # @return [Hash] Returns the value in the form of hash
204
+ def _to_hash(value)
205
+ if value.is_a?(Array)
206
+ value.compact.map { |v| _to_hash(v) }
207
+ elsif value.is_a?(Hash)
208
+ {}.tap do |hash|
209
+ value.each { |k, v| hash[k] = _to_hash(v) }
210
+ end
211
+ elsif value.respond_to? :to_hash
212
+ value.to_hash
213
+ else
214
+ value
215
+ end
216
+ end
217
+
218
+ end
219
+ end
@@ -129,6 +129,9 @@ module UltracartClient
129
129
 
130
130
  attr_accessor :privacy
131
131
 
132
+ # Properties for this customer
133
+ attr_accessor :properties
134
+
132
135
  # QuickBooks class to import this customer as
133
136
  attr_accessor :qb_class
134
137
 
@@ -235,6 +238,7 @@ module UltracartClient
235
238
  :'password' => :'password',
236
239
  :'pricing_tiers' => :'pricing_tiers',
237
240
  :'privacy' => :'privacy',
241
+ :'properties' => :'properties',
238
242
  :'qb_class' => :'qb_class',
239
243
  :'qb_code' => :'qb_code',
240
244
  :'qb_tax_exemption_reason_code' => :'qb_tax_exemption_reason_code',
@@ -303,6 +307,7 @@ module UltracartClient
303
307
  :'password' => :'String',
304
308
  :'pricing_tiers' => :'Array<CustomerPricingTier>',
305
309
  :'privacy' => :'CustomerPrivacy',
310
+ :'properties' => :'Array<CustomerProperty>',
306
311
  :'qb_class' => :'String',
307
312
  :'qb_code' => :'String',
308
313
  :'qb_tax_exemption_reason_code' => :'Integer',
@@ -508,6 +513,12 @@ module UltracartClient
508
513
  self.privacy = attributes[:'privacy']
509
514
  end
510
515
 
516
+ if attributes.has_key?(:'properties')
517
+ if (value = attributes[:'properties']).is_a?(Array)
518
+ self.properties = value
519
+ end
520
+ end
521
+
511
522
  if attributes.has_key?(:'qb_class')
512
523
  self.qb_class = attributes[:'qb_class']
513
524
  end
@@ -828,6 +839,7 @@ module UltracartClient
828
839
  password == o.password &&
829
840
  pricing_tiers == o.pricing_tiers &&
830
841
  privacy == o.privacy &&
842
+ properties == o.properties &&
831
843
  qb_class == o.qb_class &&
832
844
  qb_code == o.qb_code &&
833
845
  qb_tax_exemption_reason_code == o.qb_tax_exemption_reason_code &&
@@ -861,7 +873,7 @@ module UltracartClient
861
873
  # Calculates hash code according to all attributes.
862
874
  # @return [Fixnum] Hash code
863
875
  def hash
864
- [activity, affiliate_oid, allow_3rd_party_billing, allow_cod, allow_drop_shipping, allow_purchase_order, allow_quote_request, allow_selection_of_address_type, attachments, auto_approve_cod, auto_approve_purchase_order, automatic_merchant_notes, billing, business_notes, cards, cc_emails, customer_profile_oid, dhl_account_number, dhl_duty_account_number, edi, email, exempt_shipping_handling_charge, fedex_account_number, free_shipping, free_shipping_minimum, last_modified_by, last_modified_dts, loyalty, maximum_item_count, merchant_id, minimum_item_count, minimum_subtotal, no_coupons, no_free_shipping, no_realtime_charge, orders, orders_summary, password, pricing_tiers, privacy, qb_class, qb_code, qb_tax_exemption_reason_code, quotes, quotes_summary, referral_source, reviewer, sales_rep_code, send_signup_notification, shipping, signup_dts, software_entitlements, suppress_buysafe, tags, tax_codes, tax_exempt, tax_id, terms, track_separately, unapproved, ups_account_number, website_url].hash
876
+ [activity, affiliate_oid, allow_3rd_party_billing, allow_cod, allow_drop_shipping, allow_purchase_order, allow_quote_request, allow_selection_of_address_type, attachments, auto_approve_cod, auto_approve_purchase_order, automatic_merchant_notes, billing, business_notes, cards, cc_emails, customer_profile_oid, dhl_account_number, dhl_duty_account_number, edi, email, exempt_shipping_handling_charge, fedex_account_number, free_shipping, free_shipping_minimum, last_modified_by, last_modified_dts, loyalty, maximum_item_count, merchant_id, minimum_item_count, minimum_subtotal, no_coupons, no_free_shipping, no_realtime_charge, orders, orders_summary, password, pricing_tiers, privacy, properties, qb_class, qb_code, qb_tax_exemption_reason_code, quotes, quotes_summary, referral_source, reviewer, sales_rep_code, send_signup_notification, shipping, signup_dts, software_entitlements, suppress_buysafe, tags, tax_codes, tax_exempt, tax_id, terms, track_separately, unapproved, ups_account_number, website_url].hash
865
877
  end
866
878
 
867
879
  # Builds the object from hash
@@ -0,0 +1,235 @@
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 CustomerProperty
17
+ # The date/time that the property expires and is deleted
18
+ attr_accessor :expiration_dts
19
+
20
+ # Name
21
+ attr_accessor :name
22
+
23
+ # Value
24
+ attr_accessor :value
25
+
26
+ # Attribute mapping from ruby-style variable name to JSON key.
27
+ def self.attribute_map
28
+ {
29
+ :'expiration_dts' => :'expiration_dts',
30
+ :'name' => :'name',
31
+ :'value' => :'value'
32
+ }
33
+ end
34
+
35
+ # Attribute type mapping.
36
+ def self.swagger_types
37
+ {
38
+ :'expiration_dts' => :'String',
39
+ :'name' => :'String',
40
+ :'value' => :'String'
41
+ }
42
+ end
43
+
44
+ # Initializes the object
45
+ # @param [Hash] attributes Model attributes in the form of hash
46
+ def initialize(attributes = {})
47
+ return unless attributes.is_a?(Hash)
48
+
49
+ # convert string to symbol for hash key
50
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
51
+
52
+ if attributes.has_key?(:'expiration_dts')
53
+ self.expiration_dts = attributes[:'expiration_dts']
54
+ end
55
+
56
+ if attributes.has_key?(:'name')
57
+ self.name = attributes[:'name']
58
+ end
59
+
60
+ if attributes.has_key?(:'value')
61
+ self.value = attributes[:'value']
62
+ end
63
+ end
64
+
65
+ # Show invalid properties with the reasons. Usually used together with valid?
66
+ # @return Array for valid properties with the reasons
67
+ def list_invalid_properties
68
+ invalid_properties = Array.new
69
+ if !@name.nil? && @name.to_s.length > 100
70
+ invalid_properties.push('invalid value for "name", the character length must be smaller than or equal to 100.')
71
+ end
72
+
73
+ if !@value.nil? && @value.to_s.length > 1500
74
+ invalid_properties.push('invalid value for "value", the character length must be smaller than or equal to 1500.')
75
+ end
76
+
77
+ invalid_properties
78
+ end
79
+
80
+ # Check to see if the all the properties in the model are valid
81
+ # @return true if the model is valid
82
+ def valid?
83
+ return false if !@name.nil? && @name.to_s.length > 100
84
+ return false if !@value.nil? && @value.to_s.length > 1500
85
+ true
86
+ end
87
+
88
+ # Custom attribute writer method with validation
89
+ # @param [Object] name Value to be assigned
90
+ def name=(name)
91
+ if !name.nil? && name.to_s.length > 100
92
+ fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 100.'
93
+ end
94
+
95
+ @name = name
96
+ end
97
+
98
+ # Custom attribute writer method with validation
99
+ # @param [Object] value Value to be assigned
100
+ def value=(value)
101
+ if !value.nil? && value.to_s.length > 1500
102
+ fail ArgumentError, 'invalid value for "value", the character length must be smaller than or equal to 1500.'
103
+ end
104
+
105
+ @value = value
106
+ end
107
+
108
+ # Checks equality by comparing each attribute.
109
+ # @param [Object] Object to be compared
110
+ def ==(o)
111
+ return true if self.equal?(o)
112
+ self.class == o.class &&
113
+ expiration_dts == o.expiration_dts &&
114
+ name == o.name &&
115
+ value == o.value
116
+ end
117
+
118
+ # @see the `==` method
119
+ # @param [Object] Object to be compared
120
+ def eql?(o)
121
+ self == o
122
+ end
123
+
124
+ # Calculates hash code according to all attributes.
125
+ # @return [Fixnum] Hash code
126
+ def hash
127
+ [expiration_dts, name, value].hash
128
+ end
129
+
130
+ # Builds the object from hash
131
+ # @param [Hash] attributes Model attributes in the form of hash
132
+ # @return [Object] Returns the model itself
133
+ def build_from_hash(attributes)
134
+ return nil unless attributes.is_a?(Hash)
135
+ self.class.swagger_types.each_pair do |key, type|
136
+ if type =~ /\AArray<(.*)>/i
137
+ # check to ensure the input is an array given that the attribute
138
+ # is documented as an array but the input is not
139
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
140
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
141
+ end
142
+ elsif !attributes[self.class.attribute_map[key]].nil?
143
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
144
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
145
+ end
146
+
147
+ self
148
+ end
149
+
150
+ # Deserializes the data based on type
151
+ # @param string type Data type
152
+ # @param string value Value to be deserialized
153
+ # @return [Object] Deserialized data
154
+ def _deserialize(type, value)
155
+ case type.to_sym
156
+ when :DateTime
157
+ DateTime.parse(value)
158
+ when :Date
159
+ Date.parse(value)
160
+ when :String
161
+ value.to_s
162
+ when :Integer
163
+ value.to_i
164
+ when :Float
165
+ value.to_f
166
+ when :BOOLEAN
167
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
168
+ true
169
+ else
170
+ false
171
+ end
172
+ when :Object
173
+ # generic object (usually a Hash), return directly
174
+ value
175
+ when /\AArray<(?<inner_type>.+)>\z/
176
+ inner_type = Regexp.last_match[:inner_type]
177
+ value.map { |v| _deserialize(inner_type, v) }
178
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
179
+ k_type = Regexp.last_match[:k_type]
180
+ v_type = Regexp.last_match[:v_type]
181
+ {}.tap do |hash|
182
+ value.each do |k, v|
183
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
184
+ end
185
+ end
186
+ else # model
187
+ temp_model = UltracartClient.const_get(type).new
188
+ temp_model.build_from_hash(value)
189
+ end
190
+ end
191
+
192
+ # Returns the string representation of the object
193
+ # @return [String] String presentation of the object
194
+ def to_s
195
+ to_hash.to_s
196
+ end
197
+
198
+ # to_body is an alias to to_hash (backward compatibility)
199
+ # @return [Hash] Returns the object in the form of hash
200
+ def to_body
201
+ to_hash
202
+ end
203
+
204
+ # Returns the object in the form of hash
205
+ # @return [Hash] Returns the object in the form of hash
206
+ def to_hash
207
+ hash = {}
208
+ self.class.attribute_map.each_pair do |attr, param|
209
+ value = self.send(attr)
210
+ next if value.nil?
211
+ hash[param] = _to_hash(value)
212
+ end
213
+ hash
214
+ end
215
+
216
+ # Outputs non-array value in the form of hash
217
+ # For object, use to_hash. Otherwise, just return the value
218
+ # @param [Object] value Any valid value
219
+ # @return [Hash] Returns the value in the form of hash
220
+ def _to_hash(value)
221
+ if value.is_a?(Array)
222
+ value.compact.map { |v| _to_hash(v) }
223
+ elsif value.is_a?(Hash)
224
+ {}.tap do |hash|
225
+ value.each { |k, v| hash[k] = _to_hash(v) }
226
+ end
227
+ elsif value.respond_to? :to_hash
228
+ value.to_hash
229
+ else
230
+ value
231
+ end
232
+ end
233
+
234
+ end
235
+ end
@@ -11,5 +11,5 @@ Swagger Codegen version: 2.4.15-SNAPSHOT
11
11
  =end
12
12
 
13
13
  module UltracartClient
14
- VERSION = '3.10.155'
14
+ VERSION = '3.10.156'
15
15
  end
data/lib/ultracart_api.rb CHANGED
@@ -229,6 +229,7 @@ require 'ultracart_api/models/coupon_editor_values'
229
229
  require 'ultracart_api/models/coupon_exists_response'
230
230
  require 'ultracart_api/models/coupon_free_item_and_shipping_with_subtotal'
231
231
  require 'ultracart_api/models/coupon_free_item_with_item_purchase'
232
+ require 'ultracart_api/models/coupon_free_item_with_item_purchase_and_free_shipping'
232
233
  require 'ultracart_api/models/coupon_free_item_with_subtotal'
233
234
  require 'ultracart_api/models/coupon_free_items_with_item_purchase'
234
235
  require 'ultracart_api/models/coupon_free_items_with_mix_match_purchase'
@@ -292,6 +293,7 @@ require 'ultracart_api/models/customer_merge_request'
292
293
  require 'ultracart_api/models/customer_orders_summary'
293
294
  require 'ultracart_api/models/customer_pricing_tier'
294
295
  require 'ultracart_api/models/customer_privacy'
296
+ require 'ultracart_api/models/customer_property'
295
297
  require 'ultracart_api/models/customer_query'
296
298
  require 'ultracart_api/models/customer_quotes_summary'
297
299
  require 'ultracart_api/models/customer_response'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ultracart_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.10.155
4
+ version: 3.10.156
5
5
  platform: ruby
6
6
  authors:
7
7
  - UltraCart
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-08-16 00:00:00.000000000 Z
11
+ date: 2023-08-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: typhoeus
@@ -440,6 +440,7 @@ files:
440
440
  - docs/CouponExistsResponse.md
441
441
  - docs/CouponFreeItemAndShippingWithSubtotal.md
442
442
  - docs/CouponFreeItemWithItemPurchase.md
443
+ - docs/CouponFreeItemWithItemPurchaseAndFreeShipping.md
443
444
  - docs/CouponFreeItemWithSubtotal.md
444
445
  - docs/CouponFreeItemsWithItemPurchase.md
445
446
  - docs/CouponFreeItemsWithMixMatchPurchase.md
@@ -504,6 +505,7 @@ files:
504
505
  - docs/CustomerOrdersSummary.md
505
506
  - docs/CustomerPricingTier.md
506
507
  - docs/CustomerPrivacy.md
508
+ - docs/CustomerProperty.md
507
509
  - docs/CustomerQuery.md
508
510
  - docs/CustomerQuotesSummary.md
509
511
  - docs/CustomerResponse.md
@@ -1257,6 +1259,7 @@ files:
1257
1259
  - lib/ultracart_api/models/coupon_exists_response.rb
1258
1260
  - lib/ultracart_api/models/coupon_free_item_and_shipping_with_subtotal.rb
1259
1261
  - lib/ultracart_api/models/coupon_free_item_with_item_purchase.rb
1262
+ - lib/ultracart_api/models/coupon_free_item_with_item_purchase_and_free_shipping.rb
1260
1263
  - lib/ultracart_api/models/coupon_free_item_with_subtotal.rb
1261
1264
  - lib/ultracart_api/models/coupon_free_items_with_item_purchase.rb
1262
1265
  - lib/ultracart_api/models/coupon_free_items_with_mix_match_purchase.rb
@@ -1320,6 +1323,7 @@ files:
1320
1323
  - lib/ultracart_api/models/customer_orders_summary.rb
1321
1324
  - lib/ultracart_api/models/customer_pricing_tier.rb
1322
1325
  - lib/ultracart_api/models/customer_privacy.rb
1326
+ - lib/ultracart_api/models/customer_property.rb
1323
1327
  - lib/ultracart_api/models/customer_query.rb
1324
1328
  - lib/ultracart_api/models/customer_quotes_summary.rb
1325
1329
  - lib/ultracart_api/models/customer_response.rb