ultracart_api 3.10.155 → 3.10.156

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: 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