flowcommerce 0.2.87 → 0.2.96

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: f4f09a9394c37c46d0920cf85937ec7c1461c0e80edde6b6d28f6128f612d6a5
4
- data.tar.gz: ed48759a85e97d8aee99fc152c220e04f7f2eff7847f955737114a528340a4ce
3
+ metadata.gz: ba2fa0d6f1f69d6b4b31921a0dd4c76a345333a70526d54865e3e79e154cebc7
4
+ data.tar.gz: 7d45949ae48d32ca63bf1ef1681246ca8bff8f02b1df47cd80c90e559ef41932
5
5
  SHA512:
6
- metadata.gz: 704b4df67ee004259b25fa763fbfeae4523285435ce478023e51a2f54c194eeebcd528c5d4df1dd97cc87340c2294dab41d543321e4067934d5f987bca659031
7
- data.tar.gz: 45e805bd254c6f997b2cf2f52fbef624777f2f325d0ca674cd8f25833857986ce5e63ea6c169ab09463526be6e6f238978c07f829225d28c78ce4f3bb4f05110
6
+ metadata.gz: 492b8c89f1aee57bd163fe670d86a0ae9c1285ef168122ebaff8dc2999d22f289ab869262810d19f20d7bfbfb805d1fd062000b0865ddd945b22fce62730be95
7
+ data.tar.gz: 2fe0335165764acc0a3f5fae3e0db24e617adb2a5b7756c91fea78b9f10aa218dbbb4df0077c7496b3c167903aef98110506b965f3f83bf34be8993b0553217b
data/README.md CHANGED
@@ -2,13 +2,6 @@
2
2
 
3
3
  Native ruby client to the Flow API (https://api.flow.io)
4
4
 
5
- ## Status
6
-
7
- Please note that this library and APIs are in ALPHA and are subject to
8
- change and will break in the future. Once Flow Commerce releases its
9
- official 1.0 library, API changes will be backwards compatible. Until
10
- then - we are super grateful for your patience as we finalize the API
11
- for our launch.
12
5
 
13
6
  ## Installation
14
7
 
@@ -1,5 +1,5 @@
1
1
  # Generated by API Builder - https://www.apibuilder.io
2
- # Service version: 0.9.76
2
+ # Service version: 0.10.12
3
3
  # apibuilder 0.15.11 app.apibuilder.io/flow/api/latest/ruby_client
4
4
 
5
5
  require 'cgi'
@@ -26,7 +26,7 @@ module Io
26
26
  BASE_URL = 'https://api.flow.io' unless defined?(Constants::BASE_URL)
27
27
  NAMESPACE = 'io.flow.v0' unless defined?(Constants::NAMESPACE)
28
28
  USER_AGENT = 'apibuilder 0.15.11 app.apibuilder.io/flow/api/latest/ruby_client' unless defined?(Constants::USER_AGENT)
29
- VERSION = '0.9.76' unless defined?(Constants::VERSION)
29
+ VERSION = '0.10.12' unless defined?(Constants::VERSION)
30
30
  VERSION_MAJOR = 0 unless defined?(VERSION_MAJOR)
31
31
 
32
32
  end
@@ -188,10 +188,6 @@ module Io
188
188
  @rates ||= ::Io::Flow::V0::Clients::Rates.new(self)
189
189
  end
190
190
 
191
- def harmonized_categories
192
- @harmonized_categories ||= ::Io::Flow::V0::Clients::HarmonizedCategories.new(self)
193
- end
194
-
195
191
  def harmonized_landed_costs
196
192
  @harmonized_landed_costs ||= ::Io::Flow::V0::Clients::HarmonizedLandedCosts.new(self)
197
193
  end
@@ -572,6 +568,10 @@ module Io
572
568
  @permission_checks ||= ::Io::Flow::V0::Clients::PermissionChecks.new(self)
573
569
  end
574
570
 
571
+ def price_book_item_export_options
572
+ @price_book_item_export_options ||= ::Io::Flow::V0::Clients::PriceBookItemExportOptions.new(self)
573
+ end
574
+
575
575
  def scheduled_exports
576
576
  @scheduled_exports ||= ::Io::Flow::V0::Clients::ScheduledExports.new(self)
577
577
  end
@@ -701,6 +701,7 @@ module Io
701
701
  query = {
702
702
  :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
703
703
  :key => (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, Array).map { |v| HttpClient::Preconditions.assert_class('key', v, String) }),
704
+ :intent => (x = opts.delete(:intent); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::AttributeIntent) ? x : ::Io::Flow::V0::Models::AttributeIntent.apply(x)).value),
704
705
  :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
705
706
  :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
706
707
  :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "position" : x), String)
@@ -849,10 +850,14 @@ module Io
849
850
  r.map { |x| ::Io::Flow::V0::Models::CheckoutAttribute.new(x) }
850
851
  end
851
852
 
852
- def post(organization, checkout_attribute_form)
853
+ def post(organization, checkout_attribute_form, incoming={})
853
854
  HttpClient::Preconditions.assert_class('organization', organization, String)
855
+ opts = HttpClient::Helper.symbolize_keys(incoming)
856
+ query = {
857
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
858
+ }.delete_if { |k, v| v.nil? }
854
859
  (x = checkout_attribute_form; x.is_a?(::Io::Flow::V0::Models::CheckoutAttributeForm) ? x : ::Io::Flow::V0::Models::CheckoutAttributeForm.new(x))
855
- r = @client.request("/#{CGI.escape(organization)}/checkout/attributes").with_json(checkout_attribute_form.to_json).post
860
+ r = @client.request("/#{CGI.escape(organization)}/checkout/attributes").with_query(query).with_json(checkout_attribute_form.to_json).post
856
861
  ::Io::Flow::V0::Models::CheckoutAttribute.new(r)
857
862
  end
858
863
 
@@ -863,11 +868,15 @@ module Io
863
868
  ::Io::Flow::V0::Models::CheckoutAttribute.new(r)
864
869
  end
865
870
 
866
- def put_by_id(organization, id, checkout_attribute_form)
871
+ def put_by_id(organization, id, checkout_attribute_form, incoming={})
867
872
  HttpClient::Preconditions.assert_class('organization', organization, String)
868
873
  HttpClient::Preconditions.assert_class('id', id, String)
874
+ opts = HttpClient::Helper.symbolize_keys(incoming)
875
+ query = {
876
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
877
+ }.delete_if { |k, v| v.nil? }
869
878
  (x = checkout_attribute_form; x.is_a?(::Io::Flow::V0::Models::CheckoutAttributeForm) ? x : ::Io::Flow::V0::Models::CheckoutAttributeForm.new(x))
870
- r = @client.request("/#{CGI.escape(organization)}/checkout/attributes/#{CGI.escape(id)}").with_json(checkout_attribute_form.to_json).put
879
+ r = @client.request("/#{CGI.escape(organization)}/checkout/attributes/#{CGI.escape(id)}").with_query(query).with_json(checkout_attribute_form.to_json).put
871
880
  ::Io::Flow::V0::Models::CheckoutAttribute.new(r)
872
881
  end
873
882
 
@@ -896,7 +905,8 @@ module Io
896
905
  query = {
897
906
  :number => (x = opts.delete(:number); x.nil? ? nil : HttpClient::Preconditions.assert_class('number', x, Array).map { |v| HttpClient::Preconditions.assert_class('number', v, String) }),
898
907
  :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
899
- :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer)
908
+ :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
909
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
900
910
  }.delete_if { |k, v| v.nil? }
901
911
  r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/item/content/checkout").with_query(query).get
902
912
  r.map { |x| ::Io::Flow::V0::Models::CheckoutItemContent.new(x) }
@@ -1071,10 +1081,14 @@ module Io
1071
1081
  end
1072
1082
 
1073
1083
  # Add experience
1074
- def post(organization, experience_form)
1084
+ def post(organization, experience_form, incoming={})
1075
1085
  HttpClient::Preconditions.assert_class('organization', organization, String)
1086
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1087
+ query = {
1088
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1089
+ }.delete_if { |k, v| v.nil? }
1076
1090
  (x = experience_form; x.is_a?(::Io::Flow::V0::Models::ExperienceForm) ? x : ::Io::Flow::V0::Models::ExperienceForm.new(x))
1077
- r = @client.request("/#{CGI.escape(organization)}/experiences").with_json(experience_form.to_json).post
1091
+ r = @client.request("/#{CGI.escape(organization)}/experiences").with_query(query).with_json(experience_form.to_json).post
1078
1092
  ::Io::Flow::V0::Models::Experience.new(r)
1079
1093
  end
1080
1094
 
@@ -1151,6 +1165,7 @@ module Io
1151
1165
  query = {
1152
1166
  :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
1153
1167
  :key => (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, Array).map { |v| HttpClient::Preconditions.assert_class('key', v, String) }),
1168
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String)),
1154
1169
  :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
1155
1170
  :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
1156
1171
  :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "journal_timestamp" : x), String)
@@ -1159,18 +1174,26 @@ module Io
1159
1174
  r.map { |x| ::Io::Flow::V0::Models::ExperienceVersion.new(x) }
1160
1175
  end
1161
1176
 
1162
- def get_currency_and_formats_by_experience_key(organization, experience_key)
1177
+ def get_currency_and_formats_by_experience_key(organization, experience_key, incoming={})
1163
1178
  HttpClient::Preconditions.assert_class('organization', organization, String)
1164
1179
  HttpClient::Preconditions.assert_class('experience_key', experience_key, String)
1165
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/currency/formats").get
1180
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1181
+ query = {
1182
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1183
+ }.delete_if { |k, v| v.nil? }
1184
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/currency/formats").with_query(query).get
1166
1185
  ::Io::Flow::V0::Models::ExperienceCurrencyFormat.new(r)
1167
1186
  end
1168
1187
 
1169
- def put_currency_and_formats_by_experience_key(organization, experience_key, experience_currency_format_form)
1188
+ def put_currency_and_formats_by_experience_key(organization, experience_key, experience_currency_format_form, incoming={})
1170
1189
  HttpClient::Preconditions.assert_class('organization', organization, String)
1171
1190
  HttpClient::Preconditions.assert_class('experience_key', experience_key, String)
1191
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1192
+ query = {
1193
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1194
+ }.delete_if { |k, v| v.nil? }
1172
1195
  (x = experience_currency_format_form; x.is_a?(::Io::Flow::V0::Models::ExperienceCurrencyFormatForm) ? x : ::Io::Flow::V0::Models::ExperienceCurrencyFormatForm.new(x))
1173
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/currency/formats").with_json(experience_currency_format_form.to_json).put
1196
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/currency/formats").with_query(query).with_json(experience_currency_format_form.to_json).put
1174
1197
  ::Io::Flow::V0::Models::ExperienceCurrencyFormat.new(r)
1175
1198
  end
1176
1199
 
@@ -1269,7 +1292,8 @@ module Io
1269
1292
  opts = HttpClient::Helper.symbolize_keys(incoming)
1270
1293
  query = {
1271
1294
  :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
1272
- :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer)
1295
+ :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
1296
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1273
1297
  }.delete_if { |k, v| v.nil? }
1274
1298
  r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/payment-method-types").with_query(query).get
1275
1299
  r.map { |x| ::Io::Flow::V0::Models::PaymentMethodType.new(x) }
@@ -1283,7 +1307,8 @@ module Io
1283
1307
  :payment_method_type => (x = opts.delete(:payment_method_type); x.nil? ? nil : HttpClient::Preconditions.assert_class('payment_method_type', x, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::PaymentMethodType) ? x : ::Io::Flow::V0::Models::PaymentMethodType.apply(x)).value }),
1284
1308
  :tags => (x = opts.delete(:tags); x.nil? ? nil : HttpClient::Preconditions.assert_class('tags', x, Array).map { |v| HttpClient::Preconditions.assert_class('tags', v, String) }),
1285
1309
  :amount => (x = opts.delete(:amount); x.nil? ? nil : HttpClient::Preconditions.assert_class('amount', x, String)),
1286
- :currency => (x = opts.delete(:currency); x.nil? ? nil : HttpClient::Preconditions.assert_class('currency', x, String))
1310
+ :currency => (x = opts.delete(:currency); x.nil? ? nil : HttpClient::Preconditions.assert_class('currency', x, String)),
1311
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1287
1312
  }.delete_if { |k, v| v.nil? }
1288
1313
  r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/payment/method/rules").with_query(query).get
1289
1314
  r.map { |x| ::Io::Flow::V0::Models::PaymentMethodRule.new(x) }
@@ -1291,11 +1316,15 @@ module Io
1291
1316
 
1292
1317
  # Change the ordering or payment tags for an experience. Every post must
1293
1318
  # include one entry for each payment method offered by Flow.
1294
- def put_payment_and_method_and_rules_by_experience_key(organization, experience_key, experience_payment_method_rule_forms)
1319
+ def put_payment_and_method_and_rules_by_experience_key(organization, experience_key, experience_payment_method_rule_forms, incoming={})
1295
1320
  HttpClient::Preconditions.assert_class('organization', organization, String)
1296
1321
  HttpClient::Preconditions.assert_class('experience_key', experience_key, String)
1322
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1323
+ query = {
1324
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1325
+ }.delete_if { |k, v| v.nil? }
1297
1326
  HttpClient::Preconditions.assert_class('experience_payment_method_rule_forms', experience_payment_method_rule_forms, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ExperiencePaymentMethodRuleForm) ? x : ::Io::Flow::V0::Models::ExperiencePaymentMethodRuleForm.new(x)) }
1298
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/payment/method/rules").with_json(experience_payment_method_rule_forms.map { |o| o.to_hash }.to_json).put
1327
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/payment/method/rules").with_query(query).with_json(experience_payment_method_rule_forms.map { |o| o.to_hash }.to_json).put
1299
1328
  r.map { |x| ::Io::Flow::V0::Models::PaymentMethodRule.new(x) }
1300
1329
  end
1301
1330
 
@@ -1314,19 +1343,27 @@ module Io
1314
1343
  r.map { |x| ::Io::Flow::V0::Models::ExperiencePriceBookMapping.new(x) }
1315
1344
  end
1316
1345
 
1317
- def post_price_and_books_by_experience_key(organization, experience_key, experience_price_book_mapping_form)
1346
+ def post_price_and_books_by_experience_key(organization, experience_key, experience_price_book_mapping_form, incoming={})
1318
1347
  HttpClient::Preconditions.assert_class('organization', organization, String)
1319
1348
  HttpClient::Preconditions.assert_class('experience_key', experience_key, String)
1349
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1350
+ query = {
1351
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1352
+ }.delete_if { |k, v| v.nil? }
1320
1353
  (x = experience_price_book_mapping_form; x.is_a?(::Io::Flow::V0::Models::ExperiencePriceBookMappingForm) ? x : ::Io::Flow::V0::Models::ExperiencePriceBookMappingForm.new(x))
1321
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/price/books").with_json(experience_price_book_mapping_form.to_json).post
1354
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/price/books").with_query(query).with_json(experience_price_book_mapping_form.to_json).post
1322
1355
  ::Io::Flow::V0::Models::ExperiencePriceBookMapping.new(r)
1323
1356
  end
1324
1357
 
1325
- def put_price_and_books_by_experience_key(organization, experience_key, experience_price_book_mapping_put_form)
1358
+ def put_price_and_books_by_experience_key(organization, experience_key, experience_price_book_mapping_put_form, incoming={})
1326
1359
  HttpClient::Preconditions.assert_class('organization', organization, String)
1327
1360
  HttpClient::Preconditions.assert_class('experience_key', experience_key, String)
1361
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1362
+ query = {
1363
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1364
+ }.delete_if { |k, v| v.nil? }
1328
1365
  (x = experience_price_book_mapping_put_form; x.is_a?(::Io::Flow::V0::Models::ExperiencePriceBookMappingPutForm) ? x : ::Io::Flow::V0::Models::ExperiencePriceBookMappingPutForm.new(x))
1329
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/price/books").with_json(experience_price_book_mapping_put_form.to_json).put
1366
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/price/books").with_query(query).with_json(experience_price_book_mapping_put_form.to_json).put
1330
1367
  r.map { |x| ::Io::Flow::V0::Models::ExperiencePriceBookMapping.new(x) }
1331
1368
  end
1332
1369
 
@@ -1347,37 +1384,53 @@ module Io
1347
1384
  end
1348
1385
 
1349
1386
  # Returns information about a specific experience.
1350
- def get_by_key(organization, key)
1387
+ def get_by_key(organization, key, incoming={})
1351
1388
  HttpClient::Preconditions.assert_class('organization', organization, String)
1352
1389
  HttpClient::Preconditions.assert_class('key', key, String)
1353
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}").get
1390
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1391
+ query = {
1392
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1393
+ }.delete_if { |k, v| v.nil? }
1394
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}").with_query(query).get
1354
1395
  ::Io::Flow::V0::Models::Experience.new(r)
1355
1396
  end
1356
1397
 
1357
1398
  # Update experience with the specified key, creating if it does not exist.
1358
- def put_by_key(organization, key, experience_form)
1399
+ def put_by_key(organization, key, experience_form, incoming={})
1359
1400
  HttpClient::Preconditions.assert_class('organization', organization, String)
1360
1401
  HttpClient::Preconditions.assert_class('key', key, String)
1402
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1403
+ query = {
1404
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1405
+ }.delete_if { |k, v| v.nil? }
1361
1406
  (x = experience_form; x.is_a?(::Io::Flow::V0::Models::ExperienceForm) ? x : ::Io::Flow::V0::Models::ExperienceForm.new(x))
1362
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}").with_json(experience_form.to_json).put
1407
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}").with_query(query).with_json(experience_form.to_json).put
1363
1408
  ::Io::Flow::V0::Models::Experience.new(r)
1364
1409
  end
1365
1410
 
1366
1411
  # Delete the experience with this key
1367
- def delete_by_key(organization, key)
1412
+ def delete_by_key(organization, key, incoming={})
1368
1413
  HttpClient::Preconditions.assert_class('organization', organization, String)
1369
1414
  HttpClient::Preconditions.assert_class('key', key, String)
1370
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}").delete
1415
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1416
+ query = {
1417
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1418
+ }.delete_if { |k, v| v.nil? }
1419
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}").with_query(query).delete
1371
1420
  nil
1372
1421
  end
1373
1422
 
1374
1423
  # Clones the experience with the specified key, using data from
1375
1424
  # experience_clone_form.
1376
- def post_clone_by_key(organization, key, experience_clone_form)
1425
+ def post_clone_by_key(organization, key, experience_clone_form, incoming={})
1377
1426
  HttpClient::Preconditions.assert_class('organization', organization, String)
1378
1427
  HttpClient::Preconditions.assert_class('key', key, String)
1428
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1429
+ query = {
1430
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1431
+ }.delete_if { |k, v| v.nil? }
1379
1432
  (x = experience_clone_form; x.is_a?(::Io::Flow::V0::Models::ExperienceCloneForm) ? x : ::Io::Flow::V0::Models::ExperienceCloneForm.new(x))
1380
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}/clone").with_json(experience_clone_form.to_json).post
1433
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}/clone").with_query(query).with_json(experience_clone_form.to_json).post
1381
1434
  ::Io::Flow::V0::Models::ExperienceClone.new(r)
1382
1435
  end
1383
1436
 
@@ -1412,10 +1465,14 @@ module Io
1412
1465
  end
1413
1466
 
1414
1467
  # Get the pricing settings for this experience
1415
- def get_pricing_by_key(organization, key)
1468
+ def get_pricing_by_key(organization, key, incoming={})
1416
1469
  HttpClient::Preconditions.assert_class('organization', organization, String)
1417
1470
  HttpClient::Preconditions.assert_class('key', key, String)
1418
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}/pricing").get
1471
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1472
+ query = {
1473
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1474
+ }.delete_if { |k, v| v.nil? }
1475
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}/pricing").with_query(query).get
1419
1476
  ::Io::Flow::V0::Models::Pricing.new(r)
1420
1477
  end
1421
1478
 
@@ -1433,19 +1490,27 @@ module Io
1433
1490
  end
1434
1491
 
1435
1492
  # Get available promotions for the experience
1436
- def get_promotions_and_available_by_key(organization, key)
1493
+ def get_promotions_and_available_by_key(organization, key, incoming={})
1437
1494
  HttpClient::Preconditions.assert_class('organization', organization, String)
1438
1495
  HttpClient::Preconditions.assert_class('key', key, String)
1439
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}/promotions/available").get
1496
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1497
+ query = {
1498
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1499
+ }.delete_if { |k, v| v.nil? }
1500
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}/promotions/available").with_query(query).get
1440
1501
  r.map { |x| ::Io::Flow::V0::Models::Promotion.from_json(x) }
1441
1502
  end
1442
1503
 
1443
1504
  # Updates the status of a given experience.
1444
- def put_status_by_key(organization, key, experience_status_form)
1505
+ def put_status_by_key(organization, key, experience_status_form, incoming={})
1445
1506
  HttpClient::Preconditions.assert_class('organization', organization, String)
1446
1507
  HttpClient::Preconditions.assert_class('key', key, String)
1508
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1509
+ query = {
1510
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1511
+ }.delete_if { |k, v| v.nil? }
1447
1512
  (x = experience_status_form; x.is_a?(::Io::Flow::V0::Models::ExperienceStatusForm) ? x : ::Io::Flow::V0::Models::ExperienceStatusForm.new(x))
1448
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}/status").with_json(experience_status_form.to_json).put
1513
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(key)}/status").with_query(query).with_json(experience_status_form.to_json).put
1449
1514
  ::Io::Flow::V0::Models::Experience.new(r)
1450
1515
  end
1451
1516
 
@@ -1457,18 +1522,26 @@ module Io
1457
1522
  @client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
1458
1523
  end
1459
1524
 
1460
- def get(organization, experience_key)
1525
+ def get(organization, experience_key, incoming={})
1461
1526
  HttpClient::Preconditions.assert_class('organization', organization, String)
1462
1527
  HttpClient::Preconditions.assert_class('experience_key', experience_key, String)
1463
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/settings/checkout").get
1528
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1529
+ query = {
1530
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1531
+ }.delete_if { |k, v| v.nil? }
1532
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/settings/checkout").with_query(query).get
1464
1533
  ::Io::Flow::V0::Models::ExperienceCheckoutSettings.new(r)
1465
1534
  end
1466
1535
 
1467
- def put(organization, experience_key, experience_checkout_settings_form)
1536
+ def put(organization, experience_key, experience_checkout_settings_form, incoming={})
1468
1537
  HttpClient::Preconditions.assert_class('organization', organization, String)
1469
1538
  HttpClient::Preconditions.assert_class('experience_key', experience_key, String)
1539
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1540
+ query = {
1541
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1542
+ }.delete_if { |k, v| v.nil? }
1470
1543
  (x = experience_checkout_settings_form; x.is_a?(::Io::Flow::V0::Models::ExperienceCheckoutSettingsForm) ? x : ::Io::Flow::V0::Models::ExperienceCheckoutSettingsForm.new(x))
1471
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/settings/checkout").with_json(experience_checkout_settings_form.to_json).put
1544
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/settings/checkout").with_query(query).with_json(experience_checkout_settings_form.to_json).put
1472
1545
  ::Io::Flow::V0::Models::ExperienceCheckoutSettings.new(r)
1473
1546
  end
1474
1547
 
@@ -1485,7 +1558,8 @@ module Io
1485
1558
  HttpClient::Preconditions.assert_class('organization', organization, String)
1486
1559
  opts = HttpClient::Helper.symbolize_keys(incoming)
1487
1560
  query = {
1488
- :region_id => (x = opts.delete(:region_id); x.nil? ? nil : HttpClient::Preconditions.assert_class('region_id', x, String))
1561
+ :region_id => (x = opts.delete(:region_id); x.nil? ? nil : HttpClient::Preconditions.assert_class('region_id', x, String)),
1562
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1489
1563
  }.delete_if { |k, v| v.nil? }
1490
1564
  r = @client.request("/#{CGI.escape(organization)}/experience/defaults").with_query(query).get
1491
1565
  ::Io::Flow::V0::Models::ExperienceDefaults.new(r)
@@ -1506,11 +1580,15 @@ module Io
1506
1580
  ::Io::Flow::V0::Models::ExperienceLogisticsSettings.new(r)
1507
1581
  end
1508
1582
 
1509
- def put(organization, experience_key, experience_logistics_settings_put_form)
1583
+ def put(organization, experience_key, experience_logistics_settings_put_form, incoming={})
1510
1584
  HttpClient::Preconditions.assert_class('organization', organization, String)
1511
1585
  HttpClient::Preconditions.assert_class('experience_key', experience_key, String)
1586
+ opts = HttpClient::Helper.symbolize_keys(incoming)
1587
+ query = {
1588
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1589
+ }.delete_if { |k, v| v.nil? }
1512
1590
  (x = experience_logistics_settings_put_form; x.is_a?(::Io::Flow::V0::Models::ExperienceLogisticsSettingsPutForm) ? x : ::Io::Flow::V0::Models::ExperienceLogisticsSettingsPutForm.new(x))
1513
- r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/settings/logistics").with_json(experience_logistics_settings_put_form.to_json).put
1591
+ r = @client.request("/#{CGI.escape(organization)}/experiences/#{CGI.escape(experience_key)}/settings/logistics").with_query(query).with_json(experience_logistics_settings_put_form.to_json).put
1514
1592
  ::Io::Flow::V0::Models::ExperienceLogisticsSettings.new(r)
1515
1593
  end
1516
1594
 
@@ -1725,6 +1803,7 @@ module Io
1725
1803
  :customer_number => (x = opts.delete(:customer_number); x.nil? ? nil : HttpClient::Preconditions.assert_class('customer_number', x, String)),
1726
1804
  :submitted_at_on_or_after => (x = opts.delete(:submitted_at_on_or_after); x.nil? ? nil : HttpClient::Preconditions.assert_class('submitted_at_on_or_after', HttpClient::Helper.to_date_time_iso8601(x), DateTime)),
1727
1805
  :romanize => (x = opts.delete(:romanize); x.nil? ? nil : HttpClient::Preconditions.assert_class('romanize', x, Array).map { |v| HttpClient::Preconditions.assert_class('romanize', v, String) }),
1806
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String)),
1728
1807
  :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
1729
1808
  :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
1730
1809
  :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String),
@@ -1762,7 +1841,8 @@ module Io
1762
1841
  opts = HttpClient::Helper.symbolize_keys(incoming)
1763
1842
  query = {
1764
1843
  :expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) }),
1765
- :romanize => (x = opts.delete(:romanize); x.nil? ? nil : HttpClient::Preconditions.assert_class('romanize', x, Array).map { |v| HttpClient::Preconditions.assert_class('romanize', v, String) })
1844
+ :romanize => (x = opts.delete(:romanize); x.nil? ? nil : HttpClient::Preconditions.assert_class('romanize', x, Array).map { |v| HttpClient::Preconditions.assert_class('romanize', v, String) }),
1845
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1766
1846
  }.delete_if { |k, v| v.nil? }
1767
1847
  r = @client.request("/#{CGI.escape(organization)}/orders/identifier/#{CGI.escape(identifier)}").with_query(query).get
1768
1848
  ::Io::Flow::V0::Models::Order.new(r)
@@ -1810,7 +1890,8 @@ module Io
1810
1890
  opts = HttpClient::Helper.symbolize_keys(incoming)
1811
1891
  query = {
1812
1892
  :expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) }),
1813
- :romanize => (x = opts.delete(:romanize); x.nil? ? nil : HttpClient::Preconditions.assert_class('romanize', x, Array).map { |v| HttpClient::Preconditions.assert_class('romanize', v, String) })
1893
+ :romanize => (x = opts.delete(:romanize); x.nil? ? nil : HttpClient::Preconditions.assert_class('romanize', x, Array).map { |v| HttpClient::Preconditions.assert_class('romanize', v, String) }),
1894
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1814
1895
  }.delete_if { |k, v| v.nil? }
1815
1896
  r = @client.request("/#{CGI.escape(organization)}/orders/#{CGI.escape(number)}").with_query(query).get
1816
1897
  ::Io::Flow::V0::Models::Order.new(r)
@@ -1862,7 +1943,6 @@ module Io
1862
1943
  HttpClient::Preconditions.assert_class('number', number, String)
1863
1944
  opts = HttpClient::Helper.symbolize_keys(incoming)
1864
1945
  query = {
1865
- :expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) }),
1866
1946
  :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
1867
1947
  }.delete_if { |k, v| v.nil? }
1868
1948
  (x = authorization_form; x.is_a?(::Io::Flow::V0::Models::AuthorizationForm) ? x : ::Io::Flow::V0::Models::AuthorizationForm.from_json(x))
@@ -2033,7 +2113,8 @@ module Io
2033
2113
  opts = HttpClient::Helper.symbolize_keys(incoming)
2034
2114
  query = {
2035
2115
  :expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) }),
2036
- :romanize => (x = opts.delete(:romanize); x.nil? ? nil : HttpClient::Preconditions.assert_class('romanize', x, Array).map { |v| HttpClient::Preconditions.assert_class('romanize', v, String) })
2116
+ :romanize => (x = opts.delete(:romanize); x.nil? ? nil : HttpClient::Preconditions.assert_class('romanize', x, Array).map { |v| HttpClient::Preconditions.assert_class('romanize', v, String) }),
2117
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
2037
2118
  }.delete_if { |k, v| v.nil? }
2038
2119
  r = @client.request("/#{CGI.escape(organization)}/order/builders/#{CGI.escape(number)}").with_query(query).get
2039
2120
  ::Io::Flow::V0::Models::OrderBuilder.new(r)
@@ -2231,7 +2312,8 @@ module Io
2231
2312
  opts = HttpClient::Helper.symbolize_keys(incoming)
2232
2313
  query = {
2233
2314
  :expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) }),
2234
- :romanize => (x = opts.delete(:romanize); x.nil? ? nil : HttpClient::Preconditions.assert_class('romanize', x, Array).map { |v| HttpClient::Preconditions.assert_class('romanize', v, String) })
2315
+ :romanize => (x = opts.delete(:romanize); x.nil? ? nil : HttpClient::Preconditions.assert_class('romanize', x, Array).map { |v| HttpClient::Preconditions.assert_class('romanize', v, String) }),
2316
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
2235
2317
  }.delete_if { |k, v| v.nil? }
2236
2318
  r = @client.request("/#{CGI.escape(organization)}/order-estimates/#{CGI.escape(number)}").with_query(query).get
2237
2319
  ::Io::Flow::V0::Models::Experience.new(r)
@@ -2402,7 +2484,8 @@ module Io
2402
2484
  query = {
2403
2485
  :ip => (x = opts.delete(:ip); x.nil? ? nil : HttpClient::Preconditions.assert_class('ip', x, String)),
2404
2486
  :country => (x = opts.delete(:country); x.nil? ? nil : HttpClient::Preconditions.assert_class('country', x, String)),
2405
- :status => HttpClient::Preconditions.assert_class('status', (x = opts.delete(:status); x.nil? ? [] : x), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ExperienceStatus) ? x : ::Io::Flow::V0::Models::ExperienceStatus.apply(x)).value }
2487
+ :status => HttpClient::Preconditions.assert_class('status', (x = opts.delete(:status); x.nil? ? [] : x), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ExperienceStatus) ? x : ::Io::Flow::V0::Models::ExperienceStatus.apply(x)).value },
2488
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
2406
2489
  }.delete_if { |k, v| v.nil? }
2407
2490
  r = @client.request("/#{CGI.escape(organization)}/countries").with_query(query).get
2408
2491
  r.map { |x| ::Io::Flow::V0::Models::Country.new(x) }
@@ -2416,6 +2499,21 @@ module Io
2416
2499
  r.map { |x| ::Io::Flow::V0::Models::Country.new(x) }
2417
2500
  end
2418
2501
 
2502
+ # Status of all countries
2503
+ def get_countries_and_statuses_by_organization(organization)
2504
+ HttpClient::Preconditions.assert_class('organization', organization, String)
2505
+ r = @client.request("/#{CGI.escape(organization)}/countries/statuses").get
2506
+ r.map { |x| ::Io::Flow::V0::Models::CountryStatus.new(x) }
2507
+ end
2508
+
2509
+ def put_countries_and_statuses_by_organization_and_country(organization, country, country_status_form)
2510
+ HttpClient::Preconditions.assert_class('organization', organization, String)
2511
+ HttpClient::Preconditions.assert_class('country', country, String)
2512
+ (x = country_status_form; x.is_a?(::Io::Flow::V0::Models::CountryStatusForm) ? x : ::Io::Flow::V0::Models::CountryStatusForm.new(x))
2513
+ r = @client.request("/#{CGI.escape(organization)}/countries/statuses/#{CGI.escape(country)}").with_json(country_status_form.to_json).put
2514
+ ::Io::Flow::V0::Models::CountryStatus.new(r)
2515
+ end
2516
+
2419
2517
  # Search organizations. Always paginated.
2420
2518
  def get(incoming={})
2421
2519
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -2531,6 +2629,7 @@ module Io
2531
2629
  :currency => (x = opts.delete(:currency); x.nil? ? nil : HttpClient::Preconditions.assert_class('currency', x, String)),
2532
2630
  :experience => (x = opts.delete(:experience); x.nil? ? nil : HttpClient::Preconditions.assert_class('experience', x, String)),
2533
2631
  :ip => (x = opts.delete(:ip); x.nil? ? nil : HttpClient::Preconditions.assert_class('ip', x, String)),
2632
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String)),
2534
2633
  :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
2535
2634
  :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
2536
2635
  :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "display_position" : x), String)
@@ -2548,6 +2647,7 @@ module Io
2548
2647
  :currency => (x = opts.delete(:currency); x.nil? ? nil : HttpClient::Preconditions.assert_class('currency', x, String)),
2549
2648
  :experience => (x = opts.delete(:experience); x.nil? ? nil : HttpClient::Preconditions.assert_class('experience', x, String)),
2550
2649
  :ip => (x = opts.delete(:ip); x.nil? ? nil : HttpClient::Preconditions.assert_class('ip', x, String)),
2650
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String)),
2551
2651
  :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
2552
2652
  :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
2553
2653
  :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "display_position" : x), String)
@@ -2563,7 +2663,8 @@ module Io
2563
2663
  query = {
2564
2664
  :experiences => (x = opts.delete(:experiences); x.nil? ? nil : HttpClient::Preconditions.assert_class('experiences', x, Array).map { |v| HttpClient::Preconditions.assert_class('experiences', v, String) }),
2565
2665
  :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
2566
- :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer)
2666
+ :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
2667
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
2567
2668
  }.delete_if { |k, v| v.nil? }
2568
2669
  r = @client.request("/#{CGI.escape(organization)}/payment/method/rules/batch").with_query(query).get
2569
2670
  r.map { |x| ::Io::Flow::V0::Models::ExperiencePaymentMethodRule.new(x) }
@@ -2943,27 +3044,6 @@ module Io
2943
3044
 
2944
3045
  end
2945
3046
 
2946
- class HarmonizedCategories
2947
-
2948
- def initialize(client)
2949
- @client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
2950
- end
2951
-
2952
- def get(organization, incoming={})
2953
- HttpClient::Preconditions.assert_class('organization', organization, String)
2954
- opts = HttpClient::Helper.symbolize_keys(incoming)
2955
- query = {
2956
- :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
2957
- :parent_id => (x = opts.delete(:parent_id); x.nil? ? nil : HttpClient::Preconditions.assert_class('parent_id', x, String)),
2958
- :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
2959
- :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer)
2960
- }.delete_if { |k, v| v.nil? }
2961
- r = @client.request("/#{CGI.escape(organization)}/harmonization/categories").with_query(query).get
2962
- r.map { |x| ::Io::Flow::V0::Models::HarmonizedCategory.new(x) }
2963
- end
2964
-
2965
- end
2966
-
2967
3047
  class HarmonizedLandedCosts
2968
3048
 
2969
3049
  def initialize(client)
@@ -3908,6 +3988,14 @@ module Io
3908
3988
  ::Io::Flow::V0::Models::DimensionEstimate.new(r)
3909
3989
  end
3910
3990
 
3991
+ def put_by_id(organization, id, dimension_estimate_form)
3992
+ HttpClient::Preconditions.assert_class('organization', organization, String)
3993
+ HttpClient::Preconditions.assert_class('id', id, String)
3994
+ (x = dimension_estimate_form; x.is_a?(::Io::Flow::V0::Models::DimensionEstimateForm) ? x : ::Io::Flow::V0::Models::DimensionEstimateForm.new(x))
3995
+ r = @client.request("/#{CGI.escape(organization)}/dimension-estimates/#{CGI.escape(id)}").with_json(dimension_estimate_form.to_json).put
3996
+ ::Io::Flow::V0::Models::DimensionEstimate.new(r)
3997
+ end
3998
+
3911
3999
  def delete_by_id(organization, id)
3912
4000
  HttpClient::Preconditions.assert_class('organization', organization, String)
3913
4001
  HttpClient::Preconditions.assert_class('id', id, String)
@@ -4624,7 +4712,8 @@ module Io
4624
4712
  opts = HttpClient::Helper.symbolize_keys(incoming)
4625
4713
  query = {
4626
4714
  :show_commercial_invoice => (x = opts.delete(:show_commercial_invoice); x.nil? ? nil : HttpClient::Preconditions.assert_boolean('show_commercial_invoice', x)),
4627
- :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String))
4715
+ :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String)),
4716
+ :force_new => (x = opts.delete(:force_new); x.nil? ? nil : HttpClient::Preconditions.assert_boolean('force_new', x))
4628
4717
  }.delete_if { |k, v| v.nil? }
4629
4718
  (x = shipping_label_form; x.is_a?(::Io::Flow::V0::Models::ShippingLabelForm) ? x : ::Io::Flow::V0::Models::ShippingLabelForm.from_json(x))
4630
4719
  r = @client.request("/#{CGI.escape(organization)}/shipping_labels").with_query(query).with_json(shipping_label_form.to_json).post
@@ -6779,6 +6868,20 @@ module Io
6779
6868
 
6780
6869
  end
6781
6870
 
6871
+ class PriceBookItemExportOptions
6872
+
6873
+ def initialize(client)
6874
+ @client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
6875
+ end
6876
+
6877
+ def get(organization)
6878
+ HttpClient::Preconditions.assert_class('organization', organization, String)
6879
+ r = @client.request("/#{CGI.escape(organization)}/export/options/price_book_item").get
6880
+ ::Io::Flow::V0::Models::PriceBookItemExportOptions.new(r)
6881
+ end
6882
+
6883
+ end
6884
+
6782
6885
  class ScheduledExports
6783
6886
 
6784
6887
  def initialize(client)
@@ -7671,68 +7774,6 @@ module Io
7671
7774
 
7672
7775
  module Models
7673
7776
 
7674
- # Configurations to support payment authentication done in the user experience
7675
- # e.g. card authentication with 3DS by an issuer ACS.
7676
- class ActionConfiguration
7677
-
7678
- module Types
7679
- THREEDS_TWO_BROWSER_ACTION_CONFIGURATION = 'threeds_two_browser_action_configuration' unless defined?(THREEDS_TWO_BROWSER_ACTION_CONFIGURATION)
7680
- end
7681
-
7682
- attr_reader :discriminator
7683
-
7684
- def initialize(incoming={})
7685
- opts = HttpClient::Helper.symbolize_keys(incoming)
7686
- HttpClient::Preconditions.require_keys(opts, [:discriminator], 'ActionConfiguration')
7687
- @discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
7688
- end
7689
-
7690
- def subtype_to_hash
7691
- raise 'Cannot serialize an instance of action_configuration directly - must use one of the specific types: threeds_two_browser_action_configuration'
7692
- end
7693
-
7694
- def to_hash
7695
- subtype_to_hash.merge(:discriminator => @discriminator)
7696
- end
7697
-
7698
- def ActionConfiguration.from_json(hash)
7699
- HttpClient::Preconditions.assert_class('hash', hash, Hash)
7700
- discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
7701
- if discriminator.empty?
7702
- raise "Union type[action_configuration] requires a field named 'discriminator'"
7703
- end
7704
- case discriminator
7705
- when Types::THREEDS_TWO_BROWSER_ACTION_CONFIGURATION; ThreedsTwoBrowserActionConfiguration.new(hash)
7706
- else ActionConfigurationUndefinedType.new(:discriminator => discriminator)
7707
- end
7708
- end
7709
-
7710
- end
7711
-
7712
- class ActionConfigurationUndefinedType < ActionConfiguration
7713
-
7714
- attr_reader :name
7715
-
7716
- def initialize(incoming={})
7717
- super(:discriminator => 'undefined_type')
7718
- opts = HttpClient::Helper.symbolize_keys(incoming)
7719
- @name = HttpClient::Preconditions.assert_class('name', opts.delete(:discriminator), String)
7720
- end
7721
-
7722
- def subtype_to_hash
7723
- raise 'Unable to serialize undefined type to json'
7724
- end
7725
-
7726
- def copy(incoming={})
7727
- raise 'Operation not supported for undefined type'
7728
- end
7729
-
7730
- def to_hash
7731
- raise 'Operation not supported for undefined type'
7732
- end
7733
-
7734
- end
7735
-
7736
7777
  class AdyenNativeData
7737
7778
 
7738
7779
  module Types
@@ -8325,44 +8366,45 @@ module Io
8325
8366
 
8326
8367
  end
8327
8368
 
8328
- class CheckoutTokenForm
8369
+ # Configurations to support payment authentication done in the browser
8370
+ # experience e.g. card authentication with 3DS by an issuer ACS.
8371
+ class BrowserActionConfiguration
8329
8372
 
8330
8373
  module Types
8331
- CHECKOUT_TOKEN_ORDER_FORM = 'checkout_token_order_form' unless defined?(CHECKOUT_TOKEN_ORDER_FORM)
8332
- CHECKOUT_TOKEN_REFERENCE_FORM = 'checkout_token_reference_form' unless defined?(CHECKOUT_TOKEN_REFERENCE_FORM)
8374
+ CARD_BROWSER_ACTION_CONFIGURATION = 'card_browser_action_configuration' unless defined?(CARD_BROWSER_ACTION_CONFIGURATION)
8333
8375
  end
8334
8376
 
8335
8377
  attr_reader :discriminator
8336
8378
 
8337
8379
  def initialize(incoming={})
8338
8380
  opts = HttpClient::Helper.symbolize_keys(incoming)
8339
- @discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator) || 'checkout_token_reference_form', String)
8381
+ HttpClient::Preconditions.require_keys(opts, [:discriminator], 'BrowserActionConfiguration')
8382
+ @discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
8340
8383
  end
8341
8384
 
8342
8385
  def subtype_to_hash
8343
- raise 'Cannot serialize an instance of checkout_token_form directly - must use one of the specific types: checkout_token_order_form, checkout_token_reference_form'
8386
+ raise 'Cannot serialize an instance of browser_action_configuration directly - must use one of the specific types: card_browser_action_configuration'
8344
8387
  end
8345
8388
 
8346
8389
  def to_hash
8347
8390
  subtype_to_hash.merge(:discriminator => @discriminator)
8348
8391
  end
8349
8392
 
8350
- def CheckoutTokenForm.from_json(hash)
8393
+ def BrowserActionConfiguration.from_json(hash)
8351
8394
  HttpClient::Preconditions.assert_class('hash', hash, Hash)
8352
8395
  discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
8353
8396
  if discriminator.empty?
8354
- raise "Union type[checkout_token_form] requires a field named 'discriminator'"
8397
+ raise "Union type[browser_action_configuration] requires a field named 'discriminator'"
8355
8398
  end
8356
8399
  case discriminator
8357
- when Types::CHECKOUT_TOKEN_ORDER_FORM; CheckoutTokenOrderForm.new(hash)
8358
- when Types::CHECKOUT_TOKEN_REFERENCE_FORM; CheckoutTokenReferenceForm.new(hash)
8359
- else CheckoutTokenFormUndefinedType.new(:discriminator => discriminator)
8400
+ when Types::CARD_BROWSER_ACTION_CONFIGURATION; CardBrowserActionConfiguration.new(hash)
8401
+ else BrowserActionConfigurationUndefinedType.new(:discriminator => discriminator)
8360
8402
  end
8361
8403
  end
8362
8404
 
8363
8405
  end
8364
8406
 
8365
- class CheckoutTokenFormUndefinedType < CheckoutTokenForm
8407
+ class BrowserActionConfigurationUndefinedType < BrowserActionConfiguration
8366
8408
 
8367
8409
  attr_reader :name
8368
8410
 
@@ -8386,43 +8428,44 @@ module Io
8386
8428
 
8387
8429
  end
8388
8430
 
8389
- class ConfirmationDetails
8431
+ class CheckoutTokenForm
8390
8432
 
8391
8433
  module Types
8392
- DIRECT_DEBIT = 'direct_debit' unless defined?(DIRECT_DEBIT)
8434
+ CHECKOUT_TOKEN_ORDER_FORM = 'checkout_token_order_form' unless defined?(CHECKOUT_TOKEN_ORDER_FORM)
8435
+ CHECKOUT_TOKEN_REFERENCE_FORM = 'checkout_token_reference_form' unless defined?(CHECKOUT_TOKEN_REFERENCE_FORM)
8393
8436
  end
8394
8437
 
8395
8438
  attr_reader :discriminator
8396
8439
 
8397
8440
  def initialize(incoming={})
8398
8441
  opts = HttpClient::Helper.symbolize_keys(incoming)
8399
- HttpClient::Preconditions.require_keys(opts, [:discriminator], 'ConfirmationDetails')
8400
- @discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
8442
+ @discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator) || 'checkout_token_reference_form', String)
8401
8443
  end
8402
8444
 
8403
8445
  def subtype_to_hash
8404
- raise 'Cannot serialize an instance of confirmation_details directly - must use one of the specific types: direct_debit'
8446
+ raise 'Cannot serialize an instance of checkout_token_form directly - must use one of the specific types: checkout_token_order_form, checkout_token_reference_form'
8405
8447
  end
8406
8448
 
8407
8449
  def to_hash
8408
8450
  subtype_to_hash.merge(:discriminator => @discriminator)
8409
8451
  end
8410
8452
 
8411
- def ConfirmationDetails.from_json(hash)
8453
+ def CheckoutTokenForm.from_json(hash)
8412
8454
  HttpClient::Preconditions.assert_class('hash', hash, Hash)
8413
8455
  discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
8414
8456
  if discriminator.empty?
8415
- raise "Union type[confirmation_details] requires a field named 'discriminator'"
8457
+ raise "Union type[checkout_token_form] requires a field named 'discriminator'"
8416
8458
  end
8417
8459
  case discriminator
8418
- when Types::DIRECT_DEBIT; DirectDebit.new(hash)
8419
- else ConfirmationDetailsUndefinedType.new(:discriminator => discriminator)
8460
+ when Types::CHECKOUT_TOKEN_ORDER_FORM; CheckoutTokenOrderForm.new(hash)
8461
+ when Types::CHECKOUT_TOKEN_REFERENCE_FORM; CheckoutTokenReferenceForm.new(hash)
8462
+ else CheckoutTokenFormUndefinedType.new(:discriminator => discriminator)
8420
8463
  end
8421
8464
  end
8422
8465
 
8423
8466
  end
8424
8467
 
8425
- class ConfirmationDetailsUndefinedType < ConfirmationDetails
8468
+ class CheckoutTokenFormUndefinedType < CheckoutTokenForm
8426
8469
 
8427
8470
  attr_reader :name
8428
8471
 
@@ -8446,47 +8489,107 @@ module Io
8446
8489
 
8447
8490
  end
8448
8491
 
8449
- class ConsumerInvoiceLine
8492
+ class ConfirmationDetails
8450
8493
 
8451
8494
  module Types
8452
- CONSUMER_INVOICE_LINE_ITEM = 'item' unless defined?(CONSUMER_INVOICE_LINE_ITEM)
8453
- CONSUMER_INVOICE_LINE_DISCOUNT = 'discount' unless defined?(CONSUMER_INVOICE_LINE_DISCOUNT)
8454
- CONSUMER_INVOICE_LINE_SHIPPING = 'shipping' unless defined?(CONSUMER_INVOICE_LINE_SHIPPING)
8495
+ DIRECT_DEBIT = 'direct_debit' unless defined?(DIRECT_DEBIT)
8455
8496
  end
8456
8497
 
8457
8498
  attr_reader :discriminator
8458
8499
 
8459
8500
  def initialize(incoming={})
8460
8501
  opts = HttpClient::Helper.symbolize_keys(incoming)
8461
- HttpClient::Preconditions.require_keys(opts, [:discriminator], 'ConsumerInvoiceLine')
8502
+ HttpClient::Preconditions.require_keys(opts, [:discriminator], 'ConfirmationDetails')
8462
8503
  @discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
8463
8504
  end
8464
8505
 
8465
8506
  def subtype_to_hash
8466
- raise 'Cannot serialize an instance of consumer_invoice_line directly - must use one of the specific types: consumer_invoice_line_item, consumer_invoice_line_discount, consumer_invoice_line_shipping'
8507
+ raise 'Cannot serialize an instance of confirmation_details directly - must use one of the specific types: direct_debit'
8467
8508
  end
8468
8509
 
8469
8510
  def to_hash
8470
8511
  subtype_to_hash.merge(:discriminator => @discriminator)
8471
8512
  end
8472
8513
 
8473
- def ConsumerInvoiceLine.from_json(hash)
8514
+ def ConfirmationDetails.from_json(hash)
8474
8515
  HttpClient::Preconditions.assert_class('hash', hash, Hash)
8475
8516
  discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
8476
8517
  if discriminator.empty?
8477
- raise "Union type[consumer_invoice_line] requires a field named 'discriminator'"
8518
+ raise "Union type[confirmation_details] requires a field named 'discriminator'"
8478
8519
  end
8479
8520
  case discriminator
8480
- when Types::CONSUMER_INVOICE_LINE_ITEM; ConsumerInvoiceLineItem.new(hash)
8481
- when Types::CONSUMER_INVOICE_LINE_DISCOUNT; ConsumerInvoiceLineDiscount.new(hash)
8482
- when Types::CONSUMER_INVOICE_LINE_SHIPPING; ConsumerInvoiceLineShipping.new(hash)
8483
- else ConsumerInvoiceLineUndefinedType.new(:discriminator => discriminator)
8521
+ when Types::DIRECT_DEBIT; DirectDebit.new(hash)
8522
+ else ConfirmationDetailsUndefinedType.new(:discriminator => discriminator)
8484
8523
  end
8485
8524
  end
8486
8525
 
8487
8526
  end
8488
8527
 
8489
- class ConsumerInvoiceLineUndefinedType < ConsumerInvoiceLine
8528
+ class ConfirmationDetailsUndefinedType < ConfirmationDetails
8529
+
8530
+ attr_reader :name
8531
+
8532
+ def initialize(incoming={})
8533
+ super(:discriminator => 'undefined_type')
8534
+ opts = HttpClient::Helper.symbolize_keys(incoming)
8535
+ @name = HttpClient::Preconditions.assert_class('name', opts.delete(:discriminator), String)
8536
+ end
8537
+
8538
+ def subtype_to_hash
8539
+ raise 'Unable to serialize undefined type to json'
8540
+ end
8541
+
8542
+ def copy(incoming={})
8543
+ raise 'Operation not supported for undefined type'
8544
+ end
8545
+
8546
+ def to_hash
8547
+ raise 'Operation not supported for undefined type'
8548
+ end
8549
+
8550
+ end
8551
+
8552
+ class ConsumerInvoiceLine
8553
+
8554
+ module Types
8555
+ CONSUMER_INVOICE_LINE_ITEM = 'item' unless defined?(CONSUMER_INVOICE_LINE_ITEM)
8556
+ CONSUMER_INVOICE_LINE_DISCOUNT = 'discount' unless defined?(CONSUMER_INVOICE_LINE_DISCOUNT)
8557
+ CONSUMER_INVOICE_LINE_SHIPPING = 'shipping' unless defined?(CONSUMER_INVOICE_LINE_SHIPPING)
8558
+ end
8559
+
8560
+ attr_reader :discriminator
8561
+
8562
+ def initialize(incoming={})
8563
+ opts = HttpClient::Helper.symbolize_keys(incoming)
8564
+ HttpClient::Preconditions.require_keys(opts, [:discriminator], 'ConsumerInvoiceLine')
8565
+ @discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
8566
+ end
8567
+
8568
+ def subtype_to_hash
8569
+ raise 'Cannot serialize an instance of consumer_invoice_line directly - must use one of the specific types: consumer_invoice_line_item, consumer_invoice_line_discount, consumer_invoice_line_shipping'
8570
+ end
8571
+
8572
+ def to_hash
8573
+ subtype_to_hash.merge(:discriminator => @discriminator)
8574
+ end
8575
+
8576
+ def ConsumerInvoiceLine.from_json(hash)
8577
+ HttpClient::Preconditions.assert_class('hash', hash, Hash)
8578
+ discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
8579
+ if discriminator.empty?
8580
+ raise "Union type[consumer_invoice_line] requires a field named 'discriminator'"
8581
+ end
8582
+ case discriminator
8583
+ when Types::CONSUMER_INVOICE_LINE_ITEM; ConsumerInvoiceLineItem.new(hash)
8584
+ when Types::CONSUMER_INVOICE_LINE_DISCOUNT; ConsumerInvoiceLineDiscount.new(hash)
8585
+ when Types::CONSUMER_INVOICE_LINE_SHIPPING; ConsumerInvoiceLineShipping.new(hash)
8586
+ else ConsumerInvoiceLineUndefinedType.new(:discriminator => discriminator)
8587
+ end
8588
+ end
8589
+
8590
+ end
8591
+
8592
+ class ConsumerInvoiceLineUndefinedType < ConsumerInvoiceLine
8490
8593
 
8491
8594
  attr_reader :name
8492
8595
 
@@ -9001,6 +9104,8 @@ module Io
9001
9104
  EXPERIENCE_UPSERTED = 'experience_upserted' unless defined?(EXPERIENCE_UPSERTED)
9002
9105
  EXPERIENCE_DELETED_V2 = 'experience_deleted_v2' unless defined?(EXPERIENCE_DELETED_V2)
9003
9106
  EXPERIENCE_UPSERTED_V2 = 'experience_upserted_v2' unless defined?(EXPERIENCE_UPSERTED_V2)
9107
+ COUNTRY_STATUS_UPSERTED = 'country_status_upserted' unless defined?(COUNTRY_STATUS_UPSERTED)
9108
+ COUNTRY_STATUS_DELETED = 'country_status_deleted' unless defined?(COUNTRY_STATUS_DELETED)
9004
9109
  EXPERIENCE_PRICE_BOOK_MAPPING_DELETED = 'experience_price_book_mapping_deleted' unless defined?(EXPERIENCE_PRICE_BOOK_MAPPING_DELETED)
9005
9110
  EXPERIENCE_PRICE_BOOK_MAPPING_UPSERTED = 'experience_price_book_mapping_upserted' unless defined?(EXPERIENCE_PRICE_BOOK_MAPPING_UPSERTED)
9006
9111
  EXPERIENCE_LOGISTICS_SETTINGS_UPSERTED = 'experience_logistics_settings_upserted' unless defined?(EXPERIENCE_LOGISTICS_SETTINGS_UPSERTED)
@@ -9115,6 +9220,8 @@ module Io
9115
9220
  RATECARD_DELETED = 'ratecard_deleted' unless defined?(RATECARD_DELETED)
9116
9221
  RETURN_UPSERTED = 'return_upserted' unless defined?(RETURN_UPSERTED)
9117
9222
  RETURN_DELETED = 'return_deleted' unless defined?(RETURN_DELETED)
9223
+ RETURN_UPSERTED_V2 = 'return_upserted_v2' unless defined?(RETURN_UPSERTED_V2)
9224
+ RETURN_DELETED_V2 = 'return_deleted_v2' unless defined?(RETURN_DELETED_V2)
9118
9225
  SHOPIFY_LOCALIZATION_SETTING_UPSERTED = 'shopify_localization_setting_upserted' unless defined?(SHOPIFY_LOCALIZATION_SETTING_UPSERTED)
9119
9226
  SHOPIFY_LOCALIZATION_SETTING_DELETED = 'shopify_localization_setting_deleted' unless defined?(SHOPIFY_LOCALIZATION_SETTING_DELETED)
9120
9227
  TRACKING_LABEL_EVENT_UPSERTED = 'tracking_label_event_upserted' unless defined?(TRACKING_LABEL_EVENT_UPSERTED)
@@ -9129,7 +9236,7 @@ module Io
9129
9236
  end
9130
9237
 
9131
9238
  def subtype_to_hash
9132
- raise 'Cannot serialize an instance of event directly - must use one of the specific types: attribute_upserted, attribute_deleted, attribute_upserted_v2, attribute_deleted_v2, catalog_upserted, catalog_deleted, subcatalog_upserted, subcatalog_deleted, catalog_item_upserted, catalog_item_deleted, catalog_item_upserted_v2, catalog_item_deleted_v2, subcatalog_item_upserted, subcatalog_item_deleted, b2b_invoice_upserted, b2b_invoice_deleted, b2b_credit_memo_upserted, b2b_credit_memo_deleted, consumer_invoice_upserted, consumer_invoice_deleted, credit_memo_upserted, credit_memo_deleted, crossdock_shipment_upserted, rate_deleted, rate_upserted, rate_deleted_v3, rate_upserted_v3, customer_upserted, customer_deleted, customer_address_book_contact_upserted, customer_address_book_contact_deleted, email_notification_upserted, email_notification_deleted, available_promotions_upserted, available_promotions_deleted, available_promotions_upserted_v2, available_promotions_deleted_v2, allocation_deleted_v2, allocation_upserted_v2, currency_format_deleted, currency_format_upserted, experience_deleted, experience_upserted, experience_deleted_v2, experience_upserted_v2, experience_price_book_mapping_deleted, experience_price_book_mapping_upserted, experience_logistics_settings_upserted, experience_logistics_settings_deleted, item_margin_deleted, item_margin_upserted, item_sales_margin_deleted, item_sales_margin_upserted, label_format_deleted, label_format_upserted, order_deleted, order_upserted, order_deleted_v2, order_upserted_v2, order_identifier_deleted, order_identifier_upserted, order_identifier_deleted_v2, order_identifier_upserted_v2, order_identifier_upserted_v3, pricing_deleted, pricing_upserted, order_service_change_request, fraud_status_changed, center_upserted, center_deleted, shipping_configuration_upserted, shipping_configuration_deleted, tier_upserted_v2, tier_deleted_v2, shipping_lane_upserted, shipping_lane_deleted, shipping_configuration_item_availability_upserted, shipping_configuration_item_availability_deleted, shipping_configuration_item_shipping_pricing_upserted, shipping_configuration_item_shipping_pricing_deleted, hs6_code_upserted, hs6_code_deleted, hs10_code_upserted, hs10_code_deleted, item_origin_upserted, item_origin_deleted, harmonized_landed_cost_upserted, fully_harmonized_item_upserted, rule_upserted, rule_deleted, snapshot_upserted, snapshot_deleted, label_upserted, label_deleted_v2, label_upserted_v2, notification_upserted, notification_deleted, manifested_label_upserted, manifested_label_deleted, local_item_upserted, local_item_deleted, checkout_optin_responses_upserted, checkout_optin_responses_deleted, browse_optin_responses_upserted, browse_optin_responses_deleted, order_placed, order_placed_v2, ready_to_fulfill, membership_upserted_v2, membership_deleted_v2, organization_upserted, organization_deleted, organization_upserted_v2, organization_deleted_v2, organization_short_id_upserted, organization_short_id_deleted, organization_default_configurations_upserted, organization_default_configurations_deleted, ecommerce_platform_upserted, ecommerce_platform_deleted, authorization_deleted_v2, authorization_status_changed, card_authorization_upserted_v2, card_authorization_deleted_v2, online_authorization_upserted_v2, online_authorization_deleted_v2, capture_upserted_v2, capture_deleted, card_upserted_v2, card_deleted, payment_upserted, payment_deleted, refund_upserted_v2, refund_deleted_v2, refund_capture_upserted_v2, reversal_upserted, reversal_deleted, capture_identifier_upserted, capture_identifier_deleted, refund_identifier_upserted, refund_identifier_deleted, virtual_card_capture_upserted, virtual_card_capture_deleted, virtual_card_refund_upserted, virtual_card_refund_deleted, price_book_upserted, price_book_deleted, price_book_item_upserted, price_book_item_deleted, organization_rates_published, ratecard_lane_upserted, ratecard_lane_deleted, ratecard_upserted, ratecard_deleted, return_upserted, return_deleted, shopify_localization_setting_upserted, shopify_localization_setting_deleted, tracking_label_event_upserted'
9239
+ raise 'Cannot serialize an instance of event directly - must use one of the specific types: attribute_upserted, attribute_deleted, attribute_upserted_v2, attribute_deleted_v2, catalog_upserted, catalog_deleted, subcatalog_upserted, subcatalog_deleted, catalog_item_upserted, catalog_item_deleted, catalog_item_upserted_v2, catalog_item_deleted_v2, subcatalog_item_upserted, subcatalog_item_deleted, b2b_invoice_upserted, b2b_invoice_deleted, b2b_credit_memo_upserted, b2b_credit_memo_deleted, consumer_invoice_upserted, consumer_invoice_deleted, credit_memo_upserted, credit_memo_deleted, crossdock_shipment_upserted, rate_deleted, rate_upserted, rate_deleted_v3, rate_upserted_v3, customer_upserted, customer_deleted, customer_address_book_contact_upserted, customer_address_book_contact_deleted, email_notification_upserted, email_notification_deleted, available_promotions_upserted, available_promotions_deleted, available_promotions_upserted_v2, available_promotions_deleted_v2, allocation_deleted_v2, allocation_upserted_v2, currency_format_deleted, currency_format_upserted, experience_deleted, experience_upserted, experience_deleted_v2, experience_upserted_v2, country_status_upserted, country_status_deleted, experience_price_book_mapping_deleted, experience_price_book_mapping_upserted, experience_logistics_settings_upserted, experience_logistics_settings_deleted, item_margin_deleted, item_margin_upserted, item_sales_margin_deleted, item_sales_margin_upserted, label_format_deleted, label_format_upserted, order_deleted, order_upserted, order_deleted_v2, order_upserted_v2, order_identifier_deleted, order_identifier_upserted, order_identifier_deleted_v2, order_identifier_upserted_v2, order_identifier_upserted_v3, pricing_deleted, pricing_upserted, order_service_change_request, fraud_status_changed, center_upserted, center_deleted, shipping_configuration_upserted, shipping_configuration_deleted, tier_upserted_v2, tier_deleted_v2, shipping_lane_upserted, shipping_lane_deleted, shipping_configuration_item_availability_upserted, shipping_configuration_item_availability_deleted, shipping_configuration_item_shipping_pricing_upserted, shipping_configuration_item_shipping_pricing_deleted, hs6_code_upserted, hs6_code_deleted, hs10_code_upserted, hs10_code_deleted, item_origin_upserted, item_origin_deleted, harmonized_landed_cost_upserted, fully_harmonized_item_upserted, rule_upserted, rule_deleted, snapshot_upserted, snapshot_deleted, label_upserted, label_deleted_v2, label_upserted_v2, notification_upserted, notification_deleted, manifested_label_upserted, manifested_label_deleted, local_item_upserted, local_item_deleted, checkout_optin_responses_upserted, checkout_optin_responses_deleted, browse_optin_responses_upserted, browse_optin_responses_deleted, order_placed, order_placed_v2, ready_to_fulfill, membership_upserted_v2, membership_deleted_v2, organization_upserted, organization_deleted, organization_upserted_v2, organization_deleted_v2, organization_short_id_upserted, organization_short_id_deleted, organization_default_configurations_upserted, organization_default_configurations_deleted, ecommerce_platform_upserted, ecommerce_platform_deleted, authorization_deleted_v2, authorization_status_changed, card_authorization_upserted_v2, card_authorization_deleted_v2, online_authorization_upserted_v2, online_authorization_deleted_v2, capture_upserted_v2, capture_deleted, card_upserted_v2, card_deleted, payment_upserted, payment_deleted, refund_upserted_v2, refund_deleted_v2, refund_capture_upserted_v2, reversal_upserted, reversal_deleted, capture_identifier_upserted, capture_identifier_deleted, refund_identifier_upserted, refund_identifier_deleted, virtual_card_capture_upserted, virtual_card_capture_deleted, virtual_card_refund_upserted, virtual_card_refund_deleted, price_book_upserted, price_book_deleted, price_book_item_upserted, price_book_item_deleted, organization_rates_published, ratecard_lane_upserted, ratecard_lane_deleted, ratecard_upserted, ratecard_deleted, return_upserted, return_deleted, return_upserted_v2, return_deleted_v2, shopify_localization_setting_upserted, shopify_localization_setting_deleted, tracking_label_event_upserted'
9133
9240
  end
9134
9241
 
9135
9242
  def to_hash
@@ -9188,6 +9295,8 @@ module Io
9188
9295
  when Types::EXPERIENCE_UPSERTED; ExperienceUpserted.new(hash)
9189
9296
  when Types::EXPERIENCE_DELETED_V2; ExperienceDeletedV2.new(hash)
9190
9297
  when Types::EXPERIENCE_UPSERTED_V2; ExperienceUpsertedV2.new(hash)
9298
+ when Types::COUNTRY_STATUS_UPSERTED; CountryStatusUpserted.new(hash)
9299
+ when Types::COUNTRY_STATUS_DELETED; CountryStatusDeleted.new(hash)
9191
9300
  when Types::EXPERIENCE_PRICE_BOOK_MAPPING_DELETED; ExperiencePriceBookMappingDeleted.new(hash)
9192
9301
  when Types::EXPERIENCE_PRICE_BOOK_MAPPING_UPSERTED; ExperiencePriceBookMappingUpserted.new(hash)
9193
9302
  when Types::EXPERIENCE_LOGISTICS_SETTINGS_UPSERTED; ExperienceLogisticsSettingsUpserted.new(hash)
@@ -9299,6 +9408,8 @@ module Io
9299
9408
  when Types::RATECARD_DELETED; RatecardDeleted.new(hash)
9300
9409
  when Types::RETURN_UPSERTED; ReturnUpserted.new(hash)
9301
9410
  when Types::RETURN_DELETED; ReturnDeleted.new(hash)
9411
+ when Types::RETURN_UPSERTED_V2; ReturnUpsertedV2.new(hash)
9412
+ when Types::RETURN_DELETED_V2; ReturnDeletedV2.new(hash)
9302
9413
  when Types::SHOPIFY_LOCALIZATION_SETTING_UPSERTED; ShopifyLocalizationSettingUpserted.new(hash)
9303
9414
  when Types::SHOPIFY_LOCALIZATION_SETTING_DELETED; ShopifyLocalizationSettingDeleted.new(hash)
9304
9415
  when Types::TRACKING_LABEL_EVENT_UPSERTED; TrackingLabelEventUpserted.new(hash)
@@ -9644,6 +9755,70 @@ module Io
9644
9755
 
9645
9756
  end
9646
9757
 
9758
+ # Information about which payment processor performed the transaction and how it
9759
+ # can be tracked in their system
9760
+ class ExpandablePaymentProcessor
9761
+
9762
+ module Types
9763
+ PAYMENT_PROCESSOR = 'payment_processor' unless defined?(PAYMENT_PROCESSOR)
9764
+ PAYMENT_PROCESSOR_REFERENCE = 'payment_processor_reference' unless defined?(PAYMENT_PROCESSOR_REFERENCE)
9765
+ end
9766
+
9767
+ attr_reader :discriminator
9768
+
9769
+ def initialize(incoming={})
9770
+ opts = HttpClient::Helper.symbolize_keys(incoming)
9771
+ HttpClient::Preconditions.require_keys(opts, [:discriminator], 'ExpandablePaymentProcessor')
9772
+ @discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
9773
+ end
9774
+
9775
+ def subtype_to_hash
9776
+ raise 'Cannot serialize an instance of expandable_payment_processor directly - must use one of the specific types: payment_processor, payment_processor_reference'
9777
+ end
9778
+
9779
+ def to_hash
9780
+ subtype_to_hash.merge(:discriminator => @discriminator)
9781
+ end
9782
+
9783
+ def ExpandablePaymentProcessor.from_json(hash)
9784
+ HttpClient::Preconditions.assert_class('hash', hash, Hash)
9785
+ discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
9786
+ if discriminator.empty?
9787
+ raise "Union type[expandable_payment_processor] requires a field named 'discriminator'"
9788
+ end
9789
+ case discriminator
9790
+ when Types::PAYMENT_PROCESSOR; PaymentProcessor.new(hash)
9791
+ when Types::PAYMENT_PROCESSOR_REFERENCE; PaymentProcessorReference.new(hash)
9792
+ else ExpandablePaymentProcessorUndefinedType.new(:discriminator => discriminator)
9793
+ end
9794
+ end
9795
+
9796
+ end
9797
+
9798
+ class ExpandablePaymentProcessorUndefinedType < ExpandablePaymentProcessor
9799
+
9800
+ attr_reader :name
9801
+
9802
+ def initialize(incoming={})
9803
+ super(:discriminator => 'undefined_type')
9804
+ opts = HttpClient::Helper.symbolize_keys(incoming)
9805
+ @name = HttpClient::Preconditions.assert_class('name', opts.delete(:discriminator), String)
9806
+ end
9807
+
9808
+ def subtype_to_hash
9809
+ raise 'Unable to serialize undefined type to json'
9810
+ end
9811
+
9812
+ def copy(incoming={})
9813
+ raise 'Operation not supported for undefined type'
9814
+ end
9815
+
9816
+ def to_hash
9817
+ raise 'Operation not supported for undefined type'
9818
+ end
9819
+
9820
+ end
9821
+
9647
9822
  # A subcatalog can be represented with just it's ID, or the entire model
9648
9823
  class ExpandableSubcatalog
9649
9824
 
@@ -10111,6 +10286,68 @@ module Io
10111
10286
 
10112
10287
  end
10113
10288
 
10289
+ # Configurations to support inline payment authentication experiences. Mobile to
10290
+ # be supported at a future date.
10291
+ class InlineActionConfiguration
10292
+
10293
+ module Types
10294
+ BROWSER_INLINE_ACTION_CONFIGURATION = 'browser_inline_action_configuration' unless defined?(BROWSER_INLINE_ACTION_CONFIGURATION)
10295
+ end
10296
+
10297
+ attr_reader :discriminator
10298
+
10299
+ def initialize(incoming={})
10300
+ opts = HttpClient::Helper.symbolize_keys(incoming)
10301
+ HttpClient::Preconditions.require_keys(opts, [:discriminator], 'InlineActionConfiguration')
10302
+ @discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
10303
+ end
10304
+
10305
+ def subtype_to_hash
10306
+ raise 'Cannot serialize an instance of inline_action_configuration directly - must use one of the specific types: browser_inline_action_configuration'
10307
+ end
10308
+
10309
+ def to_hash
10310
+ subtype_to_hash.merge(:discriminator => @discriminator)
10311
+ end
10312
+
10313
+ def InlineActionConfiguration.from_json(hash)
10314
+ HttpClient::Preconditions.assert_class('hash', hash, Hash)
10315
+ discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
10316
+ if discriminator.empty?
10317
+ raise "Union type[inline_action_configuration] requires a field named 'discriminator'"
10318
+ end
10319
+ case discriminator
10320
+ when Types::BROWSER_INLINE_ACTION_CONFIGURATION; BrowserInlineActionConfiguration.new(hash)
10321
+ else InlineActionConfigurationUndefinedType.new(:discriminator => discriminator)
10322
+ end
10323
+ end
10324
+
10325
+ end
10326
+
10327
+ class InlineActionConfigurationUndefinedType < InlineActionConfiguration
10328
+
10329
+ attr_reader :name
10330
+
10331
+ def initialize(incoming={})
10332
+ super(:discriminator => 'undefined_type')
10333
+ opts = HttpClient::Helper.symbolize_keys(incoming)
10334
+ @name = HttpClient::Preconditions.assert_class('name', opts.delete(:discriminator), String)
10335
+ end
10336
+
10337
+ def subtype_to_hash
10338
+ raise 'Unable to serialize undefined type to json'
10339
+ end
10340
+
10341
+ def copy(incoming={})
10342
+ raise 'Operation not supported for undefined type'
10343
+ end
10344
+
10345
+ def to_hash
10346
+ raise 'Operation not supported for undefined type'
10347
+ end
10348
+
10349
+ end
10350
+
10114
10351
  class InputSpecificationLimitation
10115
10352
 
10116
10353
  module Types
@@ -11571,6 +11808,68 @@ module Io
11571
11808
 
11572
11809
  end
11573
11810
 
11811
+ class ReturnSource
11812
+
11813
+ module Types
11814
+ RETURN_SOURCE_FLOW = 'return_source_flow' unless defined?(RETURN_SOURCE_FLOW)
11815
+ RETURN_SOURCE_EXTERNAL_VENDOR = 'return_source_external_vendor' unless defined?(RETURN_SOURCE_EXTERNAL_VENDOR)
11816
+ end
11817
+
11818
+ attr_reader :discriminator
11819
+
11820
+ def initialize(incoming={})
11821
+ opts = HttpClient::Helper.symbolize_keys(incoming)
11822
+ HttpClient::Preconditions.require_keys(opts, [:discriminator], 'ReturnSource')
11823
+ @discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
11824
+ end
11825
+
11826
+ def subtype_to_hash
11827
+ raise 'Cannot serialize an instance of return_source directly - must use one of the specific types: return_source_flow, return_source_external_vendor'
11828
+ end
11829
+
11830
+ def to_hash
11831
+ subtype_to_hash.merge(:discriminator => @discriminator)
11832
+ end
11833
+
11834
+ def ReturnSource.from_json(hash)
11835
+ HttpClient::Preconditions.assert_class('hash', hash, Hash)
11836
+ discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
11837
+ if discriminator.empty?
11838
+ raise "Union type[return_source] requires a field named 'discriminator'"
11839
+ end
11840
+ case discriminator
11841
+ when Types::RETURN_SOURCE_FLOW; ReturnSourceFlow.new(hash)
11842
+ when Types::RETURN_SOURCE_EXTERNAL_VENDOR; ReturnSourceExternalVendor.new(hash)
11843
+ else ReturnSourceUndefinedType.new(:discriminator => discriminator)
11844
+ end
11845
+ end
11846
+
11847
+ end
11848
+
11849
+ class ReturnSourceUndefinedType < ReturnSource
11850
+
11851
+ attr_reader :name
11852
+
11853
+ def initialize(incoming={})
11854
+ super(:discriminator => 'undefined_type')
11855
+ opts = HttpClient::Helper.symbolize_keys(incoming)
11856
+ @name = HttpClient::Preconditions.assert_class('name', opts.delete(:discriminator), String)
11857
+ end
11858
+
11859
+ def subtype_to_hash
11860
+ raise 'Unable to serialize undefined type to json'
11861
+ end
11862
+
11863
+ def copy(incoming={})
11864
+ raise 'Operation not supported for undefined type'
11865
+ end
11866
+
11867
+ def to_hash
11868
+ raise 'Operation not supported for undefined type'
11869
+ end
11870
+
11871
+ end
11872
+
11574
11873
  class ServiceFee
11575
11874
 
11576
11875
  module Types
@@ -12676,7 +12975,7 @@ module Io
12676
12975
  end
12677
12976
 
12678
12977
  def AttributeDataType.ALL
12679
- @@all ||= [AttributeDataType.boolean, AttributeDataType.decimal, AttributeDataType.string, AttributeDataType.json_array]
12978
+ @@all ||= [AttributeDataType.boolean, AttributeDataType.integer, AttributeDataType.decimal, AttributeDataType.string, AttributeDataType.json_array]
12680
12979
  end
12681
12980
 
12682
12981
  # Boolean true/false data type
@@ -12684,6 +12983,11 @@ module Io
12684
12983
  @@_boolean ||= AttributeDataType.new('boolean')
12685
12984
  end
12686
12985
 
12986
+ # Value of the attribute must be an integer
12987
+ def AttributeDataType.integer
12988
+ @@_integer ||= AttributeDataType.new('integer')
12989
+ end
12990
+
12687
12991
  # Decimal datatype without size or precision restrictions. Commonly used for
12688
12992
  # currency values.
12689
12993
  def AttributeDataType.decimal
@@ -12731,7 +13035,7 @@ module Io
12731
13035
  end
12732
13036
 
12733
13037
  def AttributeIntent.ALL
12734
- @@all ||= [AttributeIntent.brand, AttributeIntent.color, AttributeIntent.countries_of_origin, AttributeIntent.product_id, AttributeIntent.fulfillment_method, AttributeIntent.hazardous, AttributeIntent.price, AttributeIntent.size, AttributeIntent.sku, AttributeIntent.taxability, AttributeIntent.consumer_url, AttributeIntent.gtin, AttributeIntent.mpn, AttributeIntent.facet, AttributeIntent.eccn, AttributeIntent.returnable, AttributeIntent.searchable]
13038
+ @@all ||= [AttributeIntent.brand, AttributeIntent.color, AttributeIntent.countries_of_origin, AttributeIntent.product_id, AttributeIntent.fulfillment_method, AttributeIntent.hazardous, AttributeIntent.price, AttributeIntent.size, AttributeIntent.sku, AttributeIntent.taxability, AttributeIntent.consumer_url, AttributeIntent.gtin, AttributeIntent.mpn, AttributeIntent.facet, AttributeIntent.eccn, AttributeIntent.returnable, AttributeIntent.searchable, AttributeIntent.barcode, AttributeIntent.min_days_to_ship, AttributeIntent.max_days_to_ship]
12735
13039
  end
12736
13040
 
12737
13041
  # A brand name of the item (for retailers that sell multiple brands)
@@ -12828,6 +13132,23 @@ module Io
12828
13132
  @@_searchable ||= AttributeIntent.new('searchable')
12829
13133
  end
12830
13134
 
13135
+ # The barcode of this item.
13136
+ def AttributeIntent.barcode
13137
+ @@_barcode ||= AttributeIntent.new('barcode')
13138
+ end
13139
+
13140
+ # Indicates a lead time to prepare an item for shipment. If specified, we will
13141
+ # include this lead time in the delivery window calculation
13142
+ def AttributeIntent.min_days_to_ship
13143
+ @@_min_days_to_ship ||= AttributeIntent.new('min_days_to_ship')
13144
+ end
13145
+
13146
+ # Indicates a lead time to prepare an item for shipment. If specified, we will
13147
+ # include this lead time in the delivery window calculation
13148
+ def AttributeIntent.max_days_to_ship
13149
+ @@_max_days_to_ship ||= AttributeIntent.new('max_days_to_ship')
13150
+ end
13151
+
12831
13152
  def to_hash
12832
13153
  value
12833
13154
  end
@@ -12921,7 +13242,7 @@ module Io
12921
13242
  end
12922
13243
 
12923
13244
  def AuthorizationDeclineCode.ALL
12924
- @@all ||= [AuthorizationDeclineCode.expired, AuthorizationDeclineCode.invalid_name, AuthorizationDeclineCode.invalid_number, AuthorizationDeclineCode.invalid_expiration, AuthorizationDeclineCode.invalid_address, AuthorizationDeclineCode.invalid_token_type, AuthorizationDeclineCode.invalid_token, AuthorizationDeclineCode.no_account, AuthorizationDeclineCode.avs, AuthorizationDeclineCode.cvv, AuthorizationDeclineCode.fraud, AuthorizationDeclineCode.duplicate, AuthorizationDeclineCode.not_supported, AuthorizationDeclineCode.unknown]
13245
+ @@all ||= [AuthorizationDeclineCode.expired, AuthorizationDeclineCode.invalid_name, AuthorizationDeclineCode.invalid_number, AuthorizationDeclineCode.invalid_expiration, AuthorizationDeclineCode.invalid_address, AuthorizationDeclineCode.invalid_token_type, AuthorizationDeclineCode.invalid_token, AuthorizationDeclineCode.no_account, AuthorizationDeclineCode.avs, AuthorizationDeclineCode.cvv, AuthorizationDeclineCode.fraud, AuthorizationDeclineCode.duplicate, AuthorizationDeclineCode.not_supported, AuthorizationDeclineCode.unknown, AuthorizationDeclineCode.online_payment_error]
12925
13246
  end
12926
13247
 
12927
13248
  # Payment method has expired
@@ -12995,6 +13316,11 @@ module Io
12995
13316
  @@_unknown ||= AuthorizationDeclineCode.new('unknown')
12996
13317
  end
12997
13318
 
13319
+ # Indicates an online payment error
13320
+ def AuthorizationDeclineCode.online_payment_error
13321
+ @@_online_payment_error ||= AuthorizationDeclineCode.new('online_payment_error')
13322
+ end
13323
+
12998
13324
  def to_hash
12999
13325
  value
13000
13326
  end
@@ -13326,6 +13652,48 @@ module Io
13326
13652
 
13327
13653
  end
13328
13654
 
13655
+ class B2bInvoiceType
13656
+
13657
+ attr_reader :value
13658
+
13659
+ def initialize(value)
13660
+ @value = HttpClient::Preconditions.assert_class('value', value, String)
13661
+ end
13662
+
13663
+ # Returns the instance of B2bInvoiceType for this value, creating a new instance for an unknown value
13664
+ def B2bInvoiceType.apply(value)
13665
+ if value.instance_of?(B2bInvoiceType)
13666
+ value
13667
+ else
13668
+ HttpClient::Preconditions.assert_class_or_nil('value', value, String)
13669
+ value.nil? ? nil : (from_string(value) || B2bInvoiceType.new(value))
13670
+ end
13671
+ end
13672
+
13673
+ # Returns the instance of B2bInvoiceType for this value, or nil if not found
13674
+ def B2bInvoiceType.from_string(value)
13675
+ HttpClient::Preconditions.assert_class('value', value, String)
13676
+ B2bInvoiceType.ALL.find { |v| v.value == value }
13677
+ end
13678
+
13679
+ def B2bInvoiceType.ALL
13680
+ @@all ||= [B2bInvoiceType.self_bill_invoice, B2bInvoiceType.invoice]
13681
+ end
13682
+
13683
+ def B2bInvoiceType.self_bill_invoice
13684
+ @@_self_bill_invoice ||= B2bInvoiceType.new('self_bill_invoice')
13685
+ end
13686
+
13687
+ def B2bInvoiceType.invoice
13688
+ @@_invoice ||= B2bInvoiceType.new('invoice')
13689
+ end
13690
+
13691
+ def to_hash
13692
+ value
13693
+ end
13694
+
13695
+ end
13696
+
13329
13697
  class Calendar
13330
13698
 
13331
13699
  attr_reader :value
@@ -14992,7 +15360,7 @@ module Io
14992
15360
  end
14993
15361
 
14994
15362
  def EventType.ALL
14995
- @@all ||= [EventType.attribute_upserted, EventType.attribute_deleted, EventType.attribute_upserted_v2, EventType.attribute_deleted_v2, EventType.catalog_upserted, EventType.catalog_deleted, EventType.subcatalog_upserted, EventType.subcatalog_deleted, EventType.catalog_item_upserted, EventType.catalog_item_deleted, EventType.catalog_item_upserted_v2, EventType.catalog_item_deleted_v2, EventType.subcatalog_item_upserted, EventType.subcatalog_item_deleted, EventType.b2b_invoice_upserted, EventType.b2b_invoice_deleted, EventType.b2b_credit_memo_upserted, EventType.b2b_credit_memo_deleted, EventType.consumer_invoice_upserted, EventType.consumer_invoice_deleted, EventType.credit_memo_upserted, EventType.credit_memo_deleted, EventType.crossdock_shipment_upserted, EventType.rate_deleted, EventType.rate_upserted, EventType.rate_deleted_v3, EventType.rate_upserted_v3, EventType.customer_upserted, EventType.customer_deleted, EventType.customer_address_book_contact_upserted, EventType.customer_address_book_contact_deleted, EventType.email_notification_upserted, EventType.email_notification_deleted, EventType.available_promotions_upserted, EventType.available_promotions_deleted, EventType.available_promotions_upserted_v2, EventType.available_promotions_deleted_v2, EventType.allocation_deleted_v2, EventType.allocation_upserted_v2, EventType.currency_format_deleted, EventType.currency_format_upserted, EventType.experience_deleted, EventType.experience_upserted, EventType.experience_deleted_v2, EventType.experience_upserted_v2, EventType.experience_price_book_mapping_deleted, EventType.experience_price_book_mapping_upserted, EventType.experience_logistics_settings_upserted, EventType.experience_logistics_settings_deleted, EventType.item_margin_deleted, EventType.item_margin_upserted, EventType.item_sales_margin_deleted, EventType.item_sales_margin_upserted, EventType.label_format_deleted, EventType.label_format_upserted, EventType.order_deleted, EventType.order_upserted, EventType.order_deleted_v2, EventType.order_upserted_v2, EventType.order_identifier_deleted, EventType.order_identifier_upserted, EventType.order_identifier_deleted_v2, EventType.order_identifier_upserted_v2, EventType.order_identifier_upserted_v3, EventType.pricing_deleted, EventType.pricing_upserted, EventType.order_service_change_request, EventType.fraud_status_changed, EventType.center_upserted, EventType.center_deleted, EventType.shipping_configuration_upserted, EventType.shipping_configuration_deleted, EventType.tier_upserted_v2, EventType.tier_deleted_v2, EventType.shipping_lane_upserted, EventType.shipping_lane_deleted, EventType.shipping_configuration_item_availability_upserted, EventType.shipping_configuration_item_availability_deleted, EventType.shipping_configuration_item_shipping_pricing_upserted, EventType.shipping_configuration_item_shipping_pricing_deleted, EventType.hs6_code_upserted, EventType.hs6_code_deleted, EventType.hs10_code_upserted, EventType.hs10_code_deleted, EventType.item_origin_upserted, EventType.item_origin_deleted, EventType.harmonized_landed_cost_upserted, EventType.fully_harmonized_item_upserted, EventType.rule_upserted, EventType.rule_deleted, EventType.snapshot_upserted, EventType.snapshot_deleted, EventType.label_upserted, EventType.label_deleted_v2, EventType.label_upserted_v2, EventType.notification_upserted, EventType.notification_deleted, EventType.manifested_label_upserted, EventType.manifested_label_deleted, EventType.local_item_upserted, EventType.local_item_deleted, EventType.checkout_optin_responses_upserted, EventType.checkout_optin_responses_deleted, EventType.browse_optin_responses_upserted, EventType.browse_optin_responses_deleted, EventType.order_placed, EventType.order_placed_v2, EventType.ready_to_fulfill, EventType.membership_upserted_v2, EventType.membership_deleted_v2, EventType.organization_upserted, EventType.organization_deleted, EventType.organization_upserted_v2, EventType.organization_deleted_v2, EventType.organization_short_id_upserted, EventType.organization_short_id_deleted, EventType.organization_default_configurations_upserted, EventType.organization_default_configurations_deleted, EventType.ecommerce_platform_upserted, EventType.ecommerce_platform_deleted, EventType.authorization_deleted_v2, EventType.authorization_status_changed, EventType.card_authorization_upserted_v2, EventType.card_authorization_deleted_v2, EventType.online_authorization_upserted_v2, EventType.online_authorization_deleted_v2, EventType.capture_upserted_v2, EventType.capture_deleted, EventType.card_upserted_v2, EventType.card_deleted, EventType.payment_upserted, EventType.payment_deleted, EventType.refund_upserted_v2, EventType.refund_deleted_v2, EventType.refund_capture_upserted_v2, EventType.reversal_upserted, EventType.reversal_deleted, EventType.capture_identifier_upserted, EventType.capture_identifier_deleted, EventType.refund_identifier_upserted, EventType.refund_identifier_deleted, EventType.virtual_card_capture_upserted, EventType.virtual_card_capture_deleted, EventType.virtual_card_refund_upserted, EventType.virtual_card_refund_deleted, EventType.price_book_upserted, EventType.price_book_deleted, EventType.price_book_item_upserted, EventType.price_book_item_deleted, EventType.organization_rates_published, EventType.ratecard_lane_upserted, EventType.ratecard_lane_deleted, EventType.ratecard_upserted, EventType.ratecard_deleted, EventType.return_upserted, EventType.return_deleted, EventType.shopify_localization_setting_upserted, EventType.shopify_localization_setting_deleted, EventType.tracking_label_event_upserted]
15363
+ @@all ||= [EventType.attribute_upserted, EventType.attribute_deleted, EventType.attribute_upserted_v2, EventType.attribute_deleted_v2, EventType.catalog_upserted, EventType.catalog_deleted, EventType.subcatalog_upserted, EventType.subcatalog_deleted, EventType.catalog_item_upserted, EventType.catalog_item_deleted, EventType.catalog_item_upserted_v2, EventType.catalog_item_deleted_v2, EventType.subcatalog_item_upserted, EventType.subcatalog_item_deleted, EventType.b2b_invoice_upserted, EventType.b2b_invoice_deleted, EventType.b2b_credit_memo_upserted, EventType.b2b_credit_memo_deleted, EventType.consumer_invoice_upserted, EventType.consumer_invoice_deleted, EventType.credit_memo_upserted, EventType.credit_memo_deleted, EventType.crossdock_shipment_upserted, EventType.rate_deleted, EventType.rate_upserted, EventType.rate_deleted_v3, EventType.rate_upserted_v3, EventType.customer_upserted, EventType.customer_deleted, EventType.customer_address_book_contact_upserted, EventType.customer_address_book_contact_deleted, EventType.email_notification_upserted, EventType.email_notification_deleted, EventType.available_promotions_upserted, EventType.available_promotions_deleted, EventType.available_promotions_upserted_v2, EventType.available_promotions_deleted_v2, EventType.allocation_deleted_v2, EventType.allocation_upserted_v2, EventType.currency_format_deleted, EventType.currency_format_upserted, EventType.experience_deleted, EventType.experience_upserted, EventType.experience_deleted_v2, EventType.experience_upserted_v2, EventType.country_status_upserted, EventType.country_status_deleted, EventType.experience_price_book_mapping_deleted, EventType.experience_price_book_mapping_upserted, EventType.experience_logistics_settings_upserted, EventType.experience_logistics_settings_deleted, EventType.item_margin_deleted, EventType.item_margin_upserted, EventType.item_sales_margin_deleted, EventType.item_sales_margin_upserted, EventType.label_format_deleted, EventType.label_format_upserted, EventType.order_deleted, EventType.order_upserted, EventType.order_deleted_v2, EventType.order_upserted_v2, EventType.order_identifier_deleted, EventType.order_identifier_upserted, EventType.order_identifier_deleted_v2, EventType.order_identifier_upserted_v2, EventType.order_identifier_upserted_v3, EventType.pricing_deleted, EventType.pricing_upserted, EventType.order_service_change_request, EventType.fraud_status_changed, EventType.center_upserted, EventType.center_deleted, EventType.shipping_configuration_upserted, EventType.shipping_configuration_deleted, EventType.tier_upserted_v2, EventType.tier_deleted_v2, EventType.shipping_lane_upserted, EventType.shipping_lane_deleted, EventType.shipping_configuration_item_availability_upserted, EventType.shipping_configuration_item_availability_deleted, EventType.shipping_configuration_item_shipping_pricing_upserted, EventType.shipping_configuration_item_shipping_pricing_deleted, EventType.hs6_code_upserted, EventType.hs6_code_deleted, EventType.hs10_code_upserted, EventType.hs10_code_deleted, EventType.item_origin_upserted, EventType.item_origin_deleted, EventType.harmonized_landed_cost_upserted, EventType.fully_harmonized_item_upserted, EventType.rule_upserted, EventType.rule_deleted, EventType.snapshot_upserted, EventType.snapshot_deleted, EventType.label_upserted, EventType.label_deleted_v2, EventType.label_upserted_v2, EventType.notification_upserted, EventType.notification_deleted, EventType.manifested_label_upserted, EventType.manifested_label_deleted, EventType.local_item_upserted, EventType.local_item_deleted, EventType.checkout_optin_responses_upserted, EventType.checkout_optin_responses_deleted, EventType.browse_optin_responses_upserted, EventType.browse_optin_responses_deleted, EventType.order_placed, EventType.order_placed_v2, EventType.ready_to_fulfill, EventType.membership_upserted_v2, EventType.membership_deleted_v2, EventType.organization_upserted, EventType.organization_deleted, EventType.organization_upserted_v2, EventType.organization_deleted_v2, EventType.organization_short_id_upserted, EventType.organization_short_id_deleted, EventType.organization_default_configurations_upserted, EventType.organization_default_configurations_deleted, EventType.ecommerce_platform_upserted, EventType.ecommerce_platform_deleted, EventType.authorization_deleted_v2, EventType.authorization_status_changed, EventType.card_authorization_upserted_v2, EventType.card_authorization_deleted_v2, EventType.online_authorization_upserted_v2, EventType.online_authorization_deleted_v2, EventType.capture_upserted_v2, EventType.capture_deleted, EventType.card_upserted_v2, EventType.card_deleted, EventType.payment_upserted, EventType.payment_deleted, EventType.refund_upserted_v2, EventType.refund_deleted_v2, EventType.refund_capture_upserted_v2, EventType.reversal_upserted, EventType.reversal_deleted, EventType.capture_identifier_upserted, EventType.capture_identifier_deleted, EventType.refund_identifier_upserted, EventType.refund_identifier_deleted, EventType.virtual_card_capture_upserted, EventType.virtual_card_capture_deleted, EventType.virtual_card_refund_upserted, EventType.virtual_card_refund_deleted, EventType.price_book_upserted, EventType.price_book_deleted, EventType.price_book_item_upserted, EventType.price_book_item_deleted, EventType.organization_rates_published, EventType.ratecard_lane_upserted, EventType.ratecard_lane_deleted, EventType.ratecard_upserted, EventType.ratecard_deleted, EventType.return_upserted, EventType.return_deleted, EventType.return_upserted_v2, EventType.return_deleted_v2, EventType.shopify_localization_setting_upserted, EventType.shopify_localization_setting_deleted, EventType.tracking_label_event_upserted]
14996
15364
  end
14997
15365
 
14998
15366
  def EventType.attribute_upserted
@@ -15175,6 +15543,14 @@ module Io
15175
15543
  @@_experience_upserted_v2 ||= EventType.new('experience_upserted_v2')
15176
15544
  end
15177
15545
 
15546
+ def EventType.country_status_upserted
15547
+ @@_country_status_upserted ||= EventType.new('country_status_upserted')
15548
+ end
15549
+
15550
+ def EventType.country_status_deleted
15551
+ @@_country_status_deleted ||= EventType.new('country_status_deleted')
15552
+ end
15553
+
15178
15554
  def EventType.experience_price_book_mapping_deleted
15179
15555
  @@_experience_price_book_mapping_deleted ||= EventType.new('experience_price_book_mapping_deleted')
15180
15556
  end
@@ -15619,6 +15995,14 @@ module Io
15619
15995
  @@_return_deleted ||= EventType.new('return_deleted')
15620
15996
  end
15621
15997
 
15998
+ def EventType.return_upserted_v2
15999
+ @@_return_upserted_v2 ||= EventType.new('return_upserted_v2')
16000
+ end
16001
+
16002
+ def EventType.return_deleted_v2
16003
+ @@_return_deleted_v2 ||= EventType.new('return_deleted_v2')
16004
+ end
16005
+
15622
16006
  def EventType.shopify_localization_setting_upserted
15623
16007
  @@_shopify_localization_setting_upserted ||= EventType.new('shopify_localization_setting_upserted')
15624
16008
  end
@@ -15775,6 +16159,48 @@ module Io
15775
16159
 
15776
16160
  end
15777
16161
 
16162
+ class ExperienceCountryStatus
16163
+
16164
+ attr_reader :value
16165
+
16166
+ def initialize(value)
16167
+ @value = HttpClient::Preconditions.assert_class('value', value, String)
16168
+ end
16169
+
16170
+ # Returns the instance of ExperienceCountryStatus for this value, creating a new instance for an unknown value
16171
+ def ExperienceCountryStatus.apply(value)
16172
+ if value.instance_of?(ExperienceCountryStatus)
16173
+ value
16174
+ else
16175
+ HttpClient::Preconditions.assert_class_or_nil('value', value, String)
16176
+ value.nil? ? nil : (from_string(value) || ExperienceCountryStatus.new(value))
16177
+ end
16178
+ end
16179
+
16180
+ # Returns the instance of ExperienceCountryStatus for this value, or nil if not found
16181
+ def ExperienceCountryStatus.from_string(value)
16182
+ HttpClient::Preconditions.assert_class('value', value, String)
16183
+ ExperienceCountryStatus.ALL.find { |v| v.value == value }
16184
+ end
16185
+
16186
+ def ExperienceCountryStatus.ALL
16187
+ @@all ||= [ExperienceCountryStatus.enabled, ExperienceCountryStatus.disabled]
16188
+ end
16189
+
16190
+ def ExperienceCountryStatus.enabled
16191
+ @@_enabled ||= ExperienceCountryStatus.new('enabled')
16192
+ end
16193
+
16194
+ def ExperienceCountryStatus.disabled
16195
+ @@_disabled ||= ExperienceCountryStatus.new('disabled')
16196
+ end
16197
+
16198
+ def to_hash
16199
+ value
16200
+ end
16201
+
16202
+ end
16203
+
15778
16204
  class ExperiencePaymentMethodTag < PaymentMethodTag
15779
16205
 
15780
16206
  attr_reader :value
@@ -18298,6 +18724,55 @@ module Io
18298
18724
 
18299
18725
  end
18300
18726
 
18727
+ class OrganizationStatus
18728
+
18729
+ attr_reader :value
18730
+
18731
+ def initialize(value)
18732
+ @value = HttpClient::Preconditions.assert_class('value', value, String)
18733
+ end
18734
+
18735
+ # Returns the instance of OrganizationStatus for this value, creating a new instance for an unknown value
18736
+ def OrganizationStatus.apply(value)
18737
+ if value.instance_of?(OrganizationStatus)
18738
+ value
18739
+ else
18740
+ HttpClient::Preconditions.assert_class_or_nil('value', value, String)
18741
+ value.nil? ? nil : (from_string(value) || OrganizationStatus.new(value))
18742
+ end
18743
+ end
18744
+
18745
+ # Returns the instance of OrganizationStatus for this value, or nil if not found
18746
+ def OrganizationStatus.from_string(value)
18747
+ HttpClient::Preconditions.assert_class('value', value, String)
18748
+ OrganizationStatus.ALL.find { |v| v.value == value }
18749
+ end
18750
+
18751
+ def OrganizationStatus.ALL
18752
+ @@all ||= [OrganizationStatus.active, OrganizationStatus.inactive, OrganizationStatus.deactivated]
18753
+ end
18754
+
18755
+ def OrganizationStatus.active
18756
+ @@_active ||= OrganizationStatus.new('active')
18757
+ end
18758
+
18759
+ # Determined by usage: ex: orders placed, experience updated, catalog items
18760
+ # updated, etc...
18761
+ def OrganizationStatus.inactive
18762
+ @@_inactive ||= OrganizationStatus.new('inactive')
18763
+ end
18764
+
18765
+ # Manually deactivated
18766
+ def OrganizationStatus.deactivated
18767
+ @@_deactivated ||= OrganizationStatus.new('deactivated')
18768
+ end
18769
+
18770
+ def to_hash
18771
+ value
18772
+ end
18773
+
18774
+ end
18775
+
18301
18776
  class PaymentErrorCode
18302
18777
 
18303
18778
  attr_reader :value
@@ -19458,6 +19933,112 @@ module Io
19458
19933
 
19459
19934
  end
19460
19935
 
19936
+ class ReturnTrackingStatus
19937
+
19938
+ attr_reader :value
19939
+
19940
+ def initialize(value)
19941
+ @value = HttpClient::Preconditions.assert_class('value', value, String)
19942
+ end
19943
+
19944
+ # Returns the instance of ReturnTrackingStatus for this value, creating a new instance for an unknown value
19945
+ def ReturnTrackingStatus.apply(value)
19946
+ if value.instance_of?(ReturnTrackingStatus)
19947
+ value
19948
+ else
19949
+ HttpClient::Preconditions.assert_class_or_nil('value', value, String)
19950
+ value.nil? ? nil : (from_string(value) || ReturnTrackingStatus.new(value))
19951
+ end
19952
+ end
19953
+
19954
+ # Returns the instance of ReturnTrackingStatus for this value, or nil if not found
19955
+ def ReturnTrackingStatus.from_string(value)
19956
+ HttpClient::Preconditions.assert_class('value', value, String)
19957
+ ReturnTrackingStatus.ALL.find { |v| v.value == value }
19958
+ end
19959
+
19960
+ def ReturnTrackingStatus.ALL
19961
+ @@all ||= [ReturnTrackingStatus.awaiting_customs_clearance, ReturnTrackingStatus.cancel_requested, ReturnTrackingStatus.canceled, ReturnTrackingStatus.collection_attempt_failed, ReturnTrackingStatus.customs_clearance_completed, ReturnTrackingStatus.delivered_to_retailer, ReturnTrackingStatus.in_transit_to_local_hub, ReturnTrackingStatus.in_transit_to_retailer, ReturnTrackingStatus.parcel_added_to_pallet, ReturnTrackingStatus.parcel_delayed, ReturnTrackingStatus.parcel_extracted_from_pallet, ReturnTrackingStatus.parcel_lost, ReturnTrackingStatus.parcel_processed_by_retailer, ReturnTrackingStatus.parcel_under_investigation, ReturnTrackingStatus.processed_by_local_hub, ReturnTrackingStatus.received_at_local_hub, ReturnTrackingStatus.received_by_the_carrier, ReturnTrackingStatus.return_registered_online]
19962
+ end
19963
+
19964
+ def ReturnTrackingStatus.awaiting_customs_clearance
19965
+ @@_awaiting_customs_clearance ||= ReturnTrackingStatus.new('awaiting_customs_clearance')
19966
+ end
19967
+
19968
+ def ReturnTrackingStatus.cancel_requested
19969
+ @@_cancel_requested ||= ReturnTrackingStatus.new('cancel_requested')
19970
+ end
19971
+
19972
+ def ReturnTrackingStatus.canceled
19973
+ @@_canceled ||= ReturnTrackingStatus.new('canceled')
19974
+ end
19975
+
19976
+ def ReturnTrackingStatus.collection_attempt_failed
19977
+ @@_collection_attempt_failed ||= ReturnTrackingStatus.new('collection_attempt_failed')
19978
+ end
19979
+
19980
+ def ReturnTrackingStatus.customs_clearance_completed
19981
+ @@_customs_clearance_completed ||= ReturnTrackingStatus.new('customs_clearance_completed')
19982
+ end
19983
+
19984
+ def ReturnTrackingStatus.delivered_to_retailer
19985
+ @@_delivered_to_retailer ||= ReturnTrackingStatus.new('delivered_to_retailer')
19986
+ end
19987
+
19988
+ def ReturnTrackingStatus.in_transit_to_local_hub
19989
+ @@_in_transit_to_local_hub ||= ReturnTrackingStatus.new('in_transit_to_local_hub')
19990
+ end
19991
+
19992
+ def ReturnTrackingStatus.in_transit_to_retailer
19993
+ @@_in_transit_to_retailer ||= ReturnTrackingStatus.new('in_transit_to_retailer')
19994
+ end
19995
+
19996
+ def ReturnTrackingStatus.parcel_added_to_pallet
19997
+ @@_parcel_added_to_pallet ||= ReturnTrackingStatus.new('parcel_added_to_pallet')
19998
+ end
19999
+
20000
+ def ReturnTrackingStatus.parcel_delayed
20001
+ @@_parcel_delayed ||= ReturnTrackingStatus.new('parcel_delayed')
20002
+ end
20003
+
20004
+ def ReturnTrackingStatus.parcel_extracted_from_pallet
20005
+ @@_parcel_extracted_from_pallet ||= ReturnTrackingStatus.new('parcel_extracted_from_pallet')
20006
+ end
20007
+
20008
+ def ReturnTrackingStatus.parcel_lost
20009
+ @@_parcel_lost ||= ReturnTrackingStatus.new('parcel_lost')
20010
+ end
20011
+
20012
+ def ReturnTrackingStatus.parcel_processed_by_retailer
20013
+ @@_parcel_processed_by_retailer ||= ReturnTrackingStatus.new('parcel_processed_by_retailer')
20014
+ end
20015
+
20016
+ def ReturnTrackingStatus.parcel_under_investigation
20017
+ @@_parcel_under_investigation ||= ReturnTrackingStatus.new('parcel_under_investigation')
20018
+ end
20019
+
20020
+ def ReturnTrackingStatus.processed_by_local_hub
20021
+ @@_processed_by_local_hub ||= ReturnTrackingStatus.new('processed_by_local_hub')
20022
+ end
20023
+
20024
+ def ReturnTrackingStatus.received_at_local_hub
20025
+ @@_received_at_local_hub ||= ReturnTrackingStatus.new('received_at_local_hub')
20026
+ end
20027
+
20028
+ def ReturnTrackingStatus.received_by_the_carrier
20029
+ @@_received_by_the_carrier ||= ReturnTrackingStatus.new('received_by_the_carrier')
20030
+ end
20031
+
20032
+ def ReturnTrackingStatus.return_registered_online
20033
+ @@_return_registered_online ||= ReturnTrackingStatus.new('return_registered_online')
20034
+ end
20035
+
20036
+ def to_hash
20037
+ value
20038
+ end
20039
+
20040
+ end
20041
+
19461
20042
  class ReversalErrorCode
19462
20043
 
19463
20044
  attr_reader :value
@@ -20437,6 +21018,48 @@ module Io
20437
21018
 
20438
21019
  end
20439
21020
 
21021
+ class TaxReportType
21022
+
21023
+ attr_reader :value
21024
+
21025
+ def initialize(value)
21026
+ @value = HttpClient::Preconditions.assert_class('value', value, String)
21027
+ end
21028
+
21029
+ # Returns the instance of TaxReportType for this value, creating a new instance for an unknown value
21030
+ def TaxReportType.apply(value)
21031
+ if value.instance_of?(TaxReportType)
21032
+ value
21033
+ else
21034
+ HttpClient::Preconditions.assert_class_or_nil('value', value, String)
21035
+ value.nil? ? nil : (from_string(value) || TaxReportType.new(value))
21036
+ end
21037
+ end
21038
+
21039
+ # Returns the instance of TaxReportType for this value, or nil if not found
21040
+ def TaxReportType.from_string(value)
21041
+ HttpClient::Preconditions.assert_class('value', value, String)
21042
+ TaxReportType.ALL.find { |v| v.value == value }
21043
+ end
21044
+
21045
+ def TaxReportType.ALL
21046
+ @@all ||= [TaxReportType.consumer, TaxReportType.b2b]
21047
+ end
21048
+
21049
+ def TaxReportType.consumer
21050
+ @@_consumer ||= TaxReportType.new('consumer')
21051
+ end
21052
+
21053
+ def TaxReportType.b2b
21054
+ @@_b2b ||= TaxReportType.new('b2b')
21055
+ end
21056
+
21057
+ def to_hash
21058
+ value
21059
+ end
21060
+
21061
+ end
21062
+
20440
21063
  class TaxVerificationResult
20441
21064
 
20442
21065
  attr_reader :value
@@ -23513,15 +24136,12 @@ module Io
23513
24136
 
23514
24137
  class AvalaraTaxCsvSetting < TaxSetting
23515
24138
 
23516
- attr_reader :schedule, :timezone, :email_recipients
24139
+ attr_reader :reports
23517
24140
 
23518
24141
  def initialize(incoming={})
23519
24142
  super(:discriminator => TaxSetting::Types::AVALARA_TAX_CSV_SETTING)
23520
24143
  opts = HttpClient::Helper.symbolize_keys(incoming)
23521
- HttpClient::Preconditions.require_keys(opts, [:schedule, :timezone], 'AvalaraTaxCsvSetting')
23522
- @schedule = (x = opts.delete(:schedule); x.is_a?(::Io::Flow::V0::Models::RepeatSchedule) ? x : ::Io::Flow::V0::Models::RepeatSchedule.from_json(x))
23523
- @timezone = HttpClient::Preconditions.assert_class('timezone', opts.delete(:timezone), String)
23524
- @email_recipients = (x = opts.delete(:email_recipients); x.nil? ? nil : HttpClient::Preconditions.assert_class('email_recipients', x, Array).map { |v| HttpClient::Preconditions.assert_class('email_recipients', v, String) })
24144
+ @reports = (x = opts.delete(:reports); x.nil? ? nil : HttpClient::Preconditions.assert_class('reports', x, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::TaxReport) ? x : ::Io::Flow::V0::Models::TaxReport.new(x)) })
23525
24145
  end
23526
24146
 
23527
24147
  def to_json
@@ -23534,9 +24154,7 @@ module Io
23534
24154
 
23535
24155
  def subtype_to_hash
23536
24156
  {
23537
- :schedule => schedule.to_hash,
23538
- :timezone => timezone,
23539
- :email_recipients => email_recipients.nil? ? nil : email_recipients
24157
+ :reports => reports.nil? ? nil : reports.map { |o| o.to_hash }
23540
24158
  }
23541
24159
  end
23542
24160
 
@@ -23612,7 +24230,7 @@ module Io
23612
24230
  # our clients
23613
24231
  class B2bCreditMemo
23614
24232
 
23615
- attr_reader :id, :number, :buyer, :seller, :status, :date, :key, :invoice, :lines, :documents, :attributes
24233
+ attr_reader :id, :number, :buyer, :seller, :status, :date, :key, :invoice, :lines, :documents, :attributes, :b2b_invoice_type
23616
24234
 
23617
24235
  def initialize(incoming={})
23618
24236
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -23628,6 +24246,7 @@ module Io
23628
24246
  @lines = HttpClient::Preconditions.assert_class('lines', opts.delete(:lines), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ConsumerInvoiceLine) ? x : ::Io::Flow::V0::Models::ConsumerInvoiceLine.from_json(x)) }
23629
24247
  @documents = HttpClient::Preconditions.assert_class('documents', opts.delete(:documents), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ConsumerInvoiceDocument) ? x : ::Io::Flow::V0::Models::ConsumerInvoiceDocument.new(x)) }
23630
24248
  @attributes = HttpClient::Preconditions.assert_class('attributes', opts.delete(:attributes), Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('attributes', d[1], String); h }
24249
+ @b2b_invoice_type = (x = (x = opts.delete(:b2b_invoice_type); x.nil? ? "self_bill_invoice" : x); x.is_a?(::Io::Flow::V0::Models::B2bInvoiceType) ? x : ::Io::Flow::V0::Models::B2bInvoiceType.apply(x))
23631
24250
  end
23632
24251
 
23633
24252
  def to_json
@@ -23650,7 +24269,8 @@ module Io
23650
24269
  :invoice => invoice.to_hash,
23651
24270
  :lines => lines.map { |o| o.to_hash },
23652
24271
  :documents => documents.map { |o| o.to_hash },
23653
- :attributes => attributes
24272
+ :attributes => attributes,
24273
+ :b2b_invoice_type => b2b_invoice_type.value
23654
24274
  }
23655
24275
  end
23656
24276
 
@@ -23726,7 +24346,7 @@ module Io
23726
24346
  # (e.g. Flow purchasing inventory to resell to a consumer).
23727
24347
  class B2bInvoice
23728
24348
 
23729
- attr_reader :id, :number, :buyer, :seller, :status, :date, :key, :order, :economic_title_location, :center, :destination, :tax, :lines, :documents, :attributes, :estimated_delivery_date
24349
+ attr_reader :id, :number, :buyer, :seller, :status, :date, :key, :order, :economic_title_location, :center, :destination, :tax, :lines, :documents, :attributes, :estimated_delivery_date, :b2b_invoice_type
23730
24350
 
23731
24351
  def initialize(incoming={})
23732
24352
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -23747,6 +24367,7 @@ module Io
23747
24367
  @documents = HttpClient::Preconditions.assert_class('documents', opts.delete(:documents), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ConsumerInvoiceDocument) ? x : ::Io::Flow::V0::Models::ConsumerInvoiceDocument.new(x)) }
23748
24368
  @attributes = HttpClient::Preconditions.assert_class('attributes', opts.delete(:attributes), Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('attributes', d[1], String); h }
23749
24369
  @estimated_delivery_date = (x = opts.delete(:estimated_delivery_date); x.nil? ? nil : HttpClient::Preconditions.assert_class('estimated_delivery_date', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
24370
+ @b2b_invoice_type = (x = (x = opts.delete(:b2b_invoice_type); x.nil? ? "self_bill_invoice" : x); x.is_a?(::Io::Flow::V0::Models::B2bInvoiceType) ? x : ::Io::Flow::V0::Models::B2bInvoiceType.apply(x))
23750
24371
  end
23751
24372
 
23752
24373
  def to_json
@@ -23774,7 +24395,8 @@ module Io
23774
24395
  :lines => lines.map { |o| o.to_hash },
23775
24396
  :documents => documents.map { |o| o.to_hash },
23776
24397
  :attributes => attributes,
23777
- :estimated_delivery_date => estimated_delivery_date
24398
+ :estimated_delivery_date => estimated_delivery_date,
24399
+ :b2b_invoice_type => b2b_invoice_type.value
23778
24400
  }
23779
24401
  end
23780
24402
 
@@ -24082,6 +24704,37 @@ module Io
24082
24704
 
24083
24705
  end
24084
24706
 
24707
+ # Information to be passed to the payment processor about how to handle browser
24708
+ # inline authorization activities.
24709
+ class BrowserInlineActionConfiguration < InlineActionConfiguration
24710
+
24711
+ attr_reader :inline_notification_urls, :action_configuration
24712
+
24713
+ def initialize(incoming={})
24714
+ super(:discriminator => InlineActionConfiguration::Types::BROWSER_INLINE_ACTION_CONFIGURATION)
24715
+ opts = HttpClient::Helper.symbolize_keys(incoming)
24716
+ HttpClient::Preconditions.require_keys(opts, [:inline_notification_urls], 'BrowserInlineActionConfiguration')
24717
+ @inline_notification_urls = (x = opts.delete(:inline_notification_urls); x.is_a?(::Io::Flow::V0::Models::PostPaymentRedirectUrls) ? x : ::Io::Flow::V0::Models::PostPaymentRedirectUrls.new(x))
24718
+ @action_configuration = (x = opts.delete(:action_configuration); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::BrowserActionConfiguration) ? x : ::Io::Flow::V0::Models::BrowserActionConfiguration.from_json(x)))
24719
+ end
24720
+
24721
+ def to_json
24722
+ JSON.dump(to_hash)
24723
+ end
24724
+
24725
+ def copy(incoming={})
24726
+ BrowserInlineActionConfiguration.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
24727
+ end
24728
+
24729
+ def subtype_to_hash
24730
+ {
24731
+ :inline_notification_urls => inline_notification_urls.to_hash,
24732
+ :action_configuration => action_configuration.nil? ? nil : action_configuration.to_hash
24733
+ }
24734
+ end
24735
+
24736
+ end
24737
+
24085
24738
  # Capture actually transfers funds. You can capture as many times as you'd like
24086
24739
  # up until the total amount of the authorization has been captured or the
24087
24740
  # authorization otherwise becomes unavailable (e.g. expires).
@@ -24480,7 +25133,7 @@ module Io
24480
25133
  # capture up to the amount of the authorization.
24481
25134
  class CardAuthorization < Authorization
24482
25135
 
24483
- attr_reader :id, :key, :merchant_of_record, :method, :card, :amount, :currency, :requested, :customer, :attributes, :destination, :billing_address, :order, :ip, :result, :created_at, :expires_at, :base
25136
+ attr_reader :id, :key, :merchant_of_record, :method, :card, :amount, :currency, :requested, :customer, :attributes, :destination, :billing_address, :order, :ip, :result, :created_at, :expires_at, :base, :processor
24484
25137
 
24485
25138
  def initialize(incoming={})
24486
25139
  super(:discriminator => Authorization::Types::CARD_AUTHORIZATION)
@@ -24504,6 +25157,7 @@ module Io
24504
25157
  @created_at = HttpClient::Preconditions.assert_class('created_at', HttpClient::Helper.to_date_time_iso8601(opts.delete(:created_at)), DateTime)
24505
25158
  @expires_at = (x = opts.delete(:expires_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('expires_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
24506
25159
  @base = (x = opts.delete(:base); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Money) ? x : ::Io::Flow::V0::Models::Money.new(x)))
25160
+ @processor = (x = opts.delete(:processor); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ExpandablePaymentProcessor) ? x : ::Io::Flow::V0::Models::ExpandablePaymentProcessor.from_json(x)))
24507
25161
  end
24508
25162
 
24509
25163
  def to_json
@@ -24533,7 +25187,8 @@ module Io
24533
25187
  :result => result.to_hash,
24534
25188
  :created_at => created_at,
24535
25189
  :expires_at => expires_at,
24536
- :base => base.nil? ? nil : base.to_hash
25190
+ :base => base.nil? ? nil : base.to_hash,
25191
+ :processor => processor.nil? ? nil : processor.to_hash
24537
25192
  }
24538
25193
  end
24539
25194
 
@@ -24608,6 +25263,33 @@ module Io
24608
25263
 
24609
25264
  end
24610
25265
 
25266
+ # Instructions to the card issuer to render challenges to the user
25267
+ class CardBrowserActionConfiguration < BrowserActionConfiguration
25268
+
25269
+ attr_reader :viewport
25270
+
25271
+ def initialize(incoming={})
25272
+ super(:discriminator => BrowserActionConfiguration::Types::CARD_BROWSER_ACTION_CONFIGURATION)
25273
+ opts = HttpClient::Helper.symbolize_keys(incoming)
25274
+ @viewport = (x = (x = opts.delete(:viewport); x.nil? ? "xxx_small" : x); x.is_a?(::Io::Flow::V0::Models::ThreedsTwoChallengeViewport) ? x : ::Io::Flow::V0::Models::ThreedsTwoChallengeViewport.apply(x))
25275
+ end
25276
+
25277
+ def to_json
25278
+ JSON.dump(to_hash)
25279
+ end
25280
+
25281
+ def copy(incoming={})
25282
+ CardBrowserActionConfiguration.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
25283
+ end
25284
+
25285
+ def subtype_to_hash
25286
+ {
25287
+ :viewport => viewport.value
25288
+ }
25289
+ end
25290
+
25291
+ end
25292
+
24611
25293
  class CardDeleted < Event
24612
25294
 
24613
25295
  attr_reader :event_id, :timestamp, :organization, :id
@@ -24844,7 +25526,7 @@ module Io
24844
25526
  # Creates an authorization for a transaction from a card payment source.
24845
25527
  class CardPaymentSourceAuthorizationForm < AuthorizationForm
24846
25528
 
24847
- attr_reader :key, :card_payment_source_id, :order_number, :amount, :currency, :browser_info, :action_configuration
25529
+ attr_reader :key, :card_payment_source_id, :order_number, :amount, :currency, :browser_info, :inline_action_configuration
24848
25530
 
24849
25531
  def initialize(incoming={})
24850
25532
  super(:discriminator => AuthorizationForm::Types::CARD_PAYMENT_SOURCE_AUTHORIZATION_FORM)
@@ -24856,7 +25538,7 @@ module Io
24856
25538
  @amount = HttpClient::Preconditions.assert_class('amount', HttpClient::Helper.to_big_decimal(opts.delete(:amount)), BigDecimal)
24857
25539
  @currency = HttpClient::Preconditions.assert_class('currency', opts.delete(:currency), String)
24858
25540
  @browser_info = (x = opts.delete(:browser_info); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::BrowserInfo) ? x : ::Io::Flow::V0::Models::BrowserInfo.new(x)))
24859
- @action_configuration = (x = opts.delete(:action_configuration); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ActionConfiguration) ? x : ::Io::Flow::V0::Models::ActionConfiguration.from_json(x)))
25541
+ @inline_action_configuration = (x = opts.delete(:inline_action_configuration); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::InlineActionConfiguration) ? x : ::Io::Flow::V0::Models::InlineActionConfiguration.from_json(x)))
24860
25542
  end
24861
25543
 
24862
25544
  def to_json
@@ -24875,7 +25557,7 @@ module Io
24875
25557
  :amount => amount.to_f.to_s,
24876
25558
  :currency => currency,
24877
25559
  :browser_info => browser_info.nil? ? nil : browser_info.to_hash,
24878
- :action_configuration => action_configuration.nil? ? nil : action_configuration.to_hash
25560
+ :inline_action_configuration => inline_action_configuration.nil? ? nil : inline_action_configuration.to_hash
24879
25561
  }
24880
25562
  end
24881
25563
 
@@ -25248,16 +25930,15 @@ module Io
25248
25930
 
25249
25931
  class CatalogDeleted < Event
25250
25932
 
25251
- attr_reader :event_id, :timestamp, :organization, :catalog
25933
+ attr_reader :event_id, :timestamp, :organization
25252
25934
 
25253
25935
  def initialize(incoming={})
25254
25936
  super(:discriminator => Event::Types::CATALOG_DELETED)
25255
25937
  opts = HttpClient::Helper.symbolize_keys(incoming)
25256
- HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :catalog], 'CatalogDeleted')
25938
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization], 'CatalogDeleted')
25257
25939
  @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
25258
25940
  @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
25259
25941
  @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
25260
- @catalog = HttpClient::Preconditions.assert_class('catalog', opts.delete(:catalog), String)
25261
25942
  end
25262
25943
 
25263
25944
  def to_json
@@ -25272,8 +25953,7 @@ module Io
25272
25953
  {
25273
25954
  :event_id => event_id,
25274
25955
  :timestamp => timestamp,
25275
- :organization => organization,
25276
- :catalog => catalog
25956
+ :organization => organization
25277
25957
  }
25278
25958
  end
25279
25959
 
@@ -25281,17 +25961,16 @@ module Io
25281
25961
 
25282
25962
  class CatalogItemDeleted < Event
25283
25963
 
25284
- attr_reader :event_id, :timestamp, :organization, :number, :catalog
25964
+ attr_reader :event_id, :timestamp, :organization, :number
25285
25965
 
25286
25966
  def initialize(incoming={})
25287
25967
  super(:discriminator => Event::Types::CATALOG_ITEM_DELETED)
25288
25968
  opts = HttpClient::Helper.symbolize_keys(incoming)
25289
- HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :number, :catalog], 'CatalogItemDeleted')
25969
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :number], 'CatalogItemDeleted')
25290
25970
  @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
25291
25971
  @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
25292
25972
  @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
25293
25973
  @number = HttpClient::Preconditions.assert_class('number', opts.delete(:number), String)
25294
- @catalog = HttpClient::Preconditions.assert_class('catalog', opts.delete(:catalog), String)
25295
25974
  end
25296
25975
 
25297
25976
  def to_json
@@ -25307,8 +25986,7 @@ module Io
25307
25986
  :event_id => event_id,
25308
25987
  :timestamp => timestamp,
25309
25988
  :organization => organization,
25310
- :number => number,
25311
- :catalog => catalog
25989
+ :number => number
25312
25990
  }
25313
25991
  end
25314
25992
 
@@ -25501,17 +26179,16 @@ module Io
25501
26179
 
25502
26180
  class CatalogItemUpserted < Event
25503
26181
 
25504
- attr_reader :event_id, :timestamp, :organization, :number, :catalog, :locale, :name, :currency, :price, :categories, :description, :attributes, :dimensions, :images
26182
+ attr_reader :event_id, :timestamp, :organization, :number, :locale, :name, :currency, :price, :categories, :description, :attributes, :dimensions, :images
25505
26183
 
25506
26184
  def initialize(incoming={})
25507
26185
  super(:discriminator => Event::Types::CATALOG_ITEM_UPSERTED)
25508
26186
  opts = HttpClient::Helper.symbolize_keys(incoming)
25509
- HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :number, :catalog, :locale, :name, :currency, :price, :categories, :attributes, :dimensions, :images], 'CatalogItemUpserted')
26187
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :number, :locale, :name, :currency, :price, :categories, :attributes, :dimensions, :images], 'CatalogItemUpserted')
25510
26188
  @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
25511
26189
  @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
25512
26190
  @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
25513
26191
  @number = HttpClient::Preconditions.assert_class('number', opts.delete(:number), String)
25514
- @catalog = HttpClient::Preconditions.assert_class('catalog', opts.delete(:catalog), String)
25515
26192
  @locale = HttpClient::Preconditions.assert_class('locale', opts.delete(:locale), String)
25516
26193
  @name = HttpClient::Preconditions.assert_class('name', opts.delete(:name), String)
25517
26194
  @currency = HttpClient::Preconditions.assert_class('currency', opts.delete(:currency), String)
@@ -25537,7 +26214,6 @@ module Io
25537
26214
  :timestamp => timestamp,
25538
26215
  :organization => organization,
25539
26216
  :number => number,
25540
- :catalog => catalog,
25541
26217
  :locale => locale,
25542
26218
  :name => name,
25543
26219
  :currency => currency,
@@ -25680,16 +26356,15 @@ module Io
25680
26356
 
25681
26357
  class CatalogUpserted < Event
25682
26358
 
25683
- attr_reader :event_id, :timestamp, :organization, :catalog
26359
+ attr_reader :event_id, :timestamp, :organization
25684
26360
 
25685
26361
  def initialize(incoming={})
25686
26362
  super(:discriminator => Event::Types::CATALOG_UPSERTED)
25687
26363
  opts = HttpClient::Helper.symbolize_keys(incoming)
25688
- HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :catalog], 'CatalogUpserted')
26364
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization], 'CatalogUpserted')
25689
26365
  @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
25690
26366
  @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
25691
26367
  @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
25692
- @catalog = HttpClient::Preconditions.assert_class('catalog', opts.delete(:catalog), String)
25693
26368
  end
25694
26369
 
25695
26370
  def to_json
@@ -25704,8 +26379,7 @@ module Io
25704
26379
  {
25705
26380
  :event_id => event_id,
25706
26381
  :timestamp => timestamp,
25707
- :organization => organization,
25708
- :catalog => catalog
26382
+ :organization => organization
25709
26383
  }
25710
26384
  end
25711
26385
 
@@ -27418,6 +28092,128 @@ module Io
27418
28092
 
27419
28093
  end
27420
28094
 
28095
+ class CountryStatus
28096
+
28097
+ attr_reader :id, :country, :status
28098
+
28099
+ def initialize(incoming={})
28100
+ opts = HttpClient::Helper.symbolize_keys(incoming)
28101
+ HttpClient::Preconditions.require_keys(opts, [:id, :country, :status], 'CountryStatus')
28102
+ @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
28103
+ @country = HttpClient::Preconditions.assert_class('country', opts.delete(:country), String)
28104
+ @status = (x = opts.delete(:status); x.is_a?(::Io::Flow::V0::Models::ExperienceCountryStatus) ? x : ::Io::Flow::V0::Models::ExperienceCountryStatus.apply(x))
28105
+ end
28106
+
28107
+ def to_json
28108
+ JSON.dump(to_hash)
28109
+ end
28110
+
28111
+ def copy(incoming={})
28112
+ CountryStatus.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
28113
+ end
28114
+
28115
+ def to_hash
28116
+ {
28117
+ :id => id,
28118
+ :country => country,
28119
+ :status => status.value
28120
+ }
28121
+ end
28122
+
28123
+ end
28124
+
28125
+ class CountryStatusDeleted < Event
28126
+
28127
+ attr_reader :event_id, :timestamp, :organization, :country_status
28128
+
28129
+ def initialize(incoming={})
28130
+ super(:discriminator => Event::Types::COUNTRY_STATUS_DELETED)
28131
+ opts = HttpClient::Helper.symbolize_keys(incoming)
28132
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :country_status], 'CountryStatusDeleted')
28133
+ @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
28134
+ @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
28135
+ @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
28136
+ @country_status = (x = opts.delete(:country_status); x.is_a?(::Io::Flow::V0::Models::CountryStatus) ? x : ::Io::Flow::V0::Models::CountryStatus.new(x))
28137
+ end
28138
+
28139
+ def to_json
28140
+ JSON.dump(to_hash)
28141
+ end
28142
+
28143
+ def copy(incoming={})
28144
+ CountryStatusDeleted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
28145
+ end
28146
+
28147
+ def subtype_to_hash
28148
+ {
28149
+ :event_id => event_id,
28150
+ :timestamp => timestamp,
28151
+ :organization => organization,
28152
+ :country_status => country_status.to_hash
28153
+ }
28154
+ end
28155
+
28156
+ end
28157
+
28158
+ class CountryStatusForm
28159
+
28160
+ attr_reader :status
28161
+
28162
+ def initialize(incoming={})
28163
+ opts = HttpClient::Helper.symbolize_keys(incoming)
28164
+ HttpClient::Preconditions.require_keys(opts, [:status], 'CountryStatusForm')
28165
+ @status = (x = opts.delete(:status); x.is_a?(::Io::Flow::V0::Models::ExperienceCountryStatus) ? x : ::Io::Flow::V0::Models::ExperienceCountryStatus.apply(x))
28166
+ end
28167
+
28168
+ def to_json
28169
+ JSON.dump(to_hash)
28170
+ end
28171
+
28172
+ def copy(incoming={})
28173
+ CountryStatusForm.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
28174
+ end
28175
+
28176
+ def to_hash
28177
+ {
28178
+ :status => status.value
28179
+ }
28180
+ end
28181
+
28182
+ end
28183
+
28184
+ class CountryStatusUpserted < Event
28185
+
28186
+ attr_reader :event_id, :timestamp, :organization, :country_status
28187
+
28188
+ def initialize(incoming={})
28189
+ super(:discriminator => Event::Types::COUNTRY_STATUS_UPSERTED)
28190
+ opts = HttpClient::Helper.symbolize_keys(incoming)
28191
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :country_status], 'CountryStatusUpserted')
28192
+ @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
28193
+ @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
28194
+ @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
28195
+ @country_status = (x = opts.delete(:country_status); x.is_a?(::Io::Flow::V0::Models::CountryStatus) ? x : ::Io::Flow::V0::Models::CountryStatus.new(x))
28196
+ end
28197
+
28198
+ def to_json
28199
+ JSON.dump(to_hash)
28200
+ end
28201
+
28202
+ def copy(incoming={})
28203
+ CountryStatusUpserted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
28204
+ end
28205
+
28206
+ def subtype_to_hash
28207
+ {
28208
+ :event_id => event_id,
28209
+ :timestamp => timestamp,
28210
+ :organization => organization,
28211
+ :country_status => country_status.to_hash
28212
+ }
28213
+ end
28214
+
28215
+ end
28216
+
27421
28217
  # The credit memo represents the details of a refund and the reasons for the
27422
28218
  # issuance of the refund.
27423
28219
  class CreditMemo
@@ -27834,23 +28630,20 @@ module Io
27834
28630
 
27835
28631
  end
27836
28632
 
27837
- # Represents the format used to export price book item documents
27838
- class CsvPriceBookItemExportRow
28633
+ class CsvPriceBookItemExportRowByItemNumber
27839
28634
 
27840
- attr_reader :price_book_key, :price_book_item_key, :item_number, :sku, :item_name, :amount, :item_attributes, :starts_at, :ends_at
28635
+ attr_reader :item_number, :price_book_key, :price_book_item_key, :item_name, :amount, :item_attributes, :schedule
27841
28636
 
27842
28637
  def initialize(incoming={})
27843
28638
  opts = HttpClient::Helper.symbolize_keys(incoming)
27844
- HttpClient::Preconditions.require_keys(opts, [:price_book_key, :price_book_item_key, :item_number, :sku, :item_name, :amount, :starts_at], 'CsvPriceBookItemExportRow')
28639
+ HttpClient::Preconditions.require_keys(opts, [:item_number, :price_book_key, :price_book_item_key, :item_name, :amount, :schedule], 'CsvPriceBookItemExportRowByItemNumber')
28640
+ @item_number = HttpClient::Preconditions.assert_class('item_number', opts.delete(:item_number), String)
27845
28641
  @price_book_key = HttpClient::Preconditions.assert_class('price_book_key', opts.delete(:price_book_key), String)
27846
28642
  @price_book_item_key = HttpClient::Preconditions.assert_class('price_book_item_key', opts.delete(:price_book_item_key), String)
27847
- @item_number = HttpClient::Preconditions.assert_class('item_number', opts.delete(:item_number), String)
27848
- @sku = HttpClient::Preconditions.assert_class('sku', opts.delete(:sku), String)
27849
28643
  @item_name = HttpClient::Preconditions.assert_class('item_name', opts.delete(:item_name), String)
27850
28644
  @amount = HttpClient::Preconditions.assert_class('amount', HttpClient::Helper.to_big_decimal(opts.delete(:amount)), BigDecimal)
27851
28645
  @item_attributes = (x = opts.delete(:item_attributes); x.nil? ? nil : HttpClient::Preconditions.assert_class('item_attributes', x, Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('item_attributes', d[1], String); h })
27852
- @starts_at = HttpClient::Preconditions.assert_class('starts_at', HttpClient::Helper.to_date_time_iso8601(opts.delete(:starts_at)), DateTime)
27853
- @ends_at = (x = opts.delete(:ends_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('ends_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
28646
+ @schedule = (x = opts.delete(:schedule); x.is_a?(::Io::Flow::V0::Models::PriceBookItemSchedule) ? x : ::Io::Flow::V0::Models::PriceBookItemSchedule.new(x))
27854
28647
  end
27855
28648
 
27856
28649
  def to_json
@@ -27858,20 +28651,56 @@ module Io
27858
28651
  end
27859
28652
 
27860
28653
  def copy(incoming={})
27861
- CsvPriceBookItemExportRow.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
28654
+ CsvPriceBookItemExportRowByItemNumber.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
27862
28655
  end
27863
28656
 
27864
28657
  def to_hash
27865
28658
  {
28659
+ :item_number => item_number,
27866
28660
  :price_book_key => price_book_key,
27867
28661
  :price_book_item_key => price_book_item_key,
27868
- :item_number => item_number,
28662
+ :item_name => item_name,
28663
+ :amount => amount.to_f.to_s,
28664
+ :item_attributes => item_attributes.nil? ? nil : item_attributes,
28665
+ :schedule => schedule.to_hash
28666
+ }
28667
+ end
28668
+
28669
+ end
28670
+
28671
+ class CsvPriceBookItemExportRowBySku
28672
+
28673
+ attr_reader :sku, :price_book_key, :price_book_item_key, :item_name, :amount, :item_attributes, :schedule
28674
+
28675
+ def initialize(incoming={})
28676
+ opts = HttpClient::Helper.symbolize_keys(incoming)
28677
+ HttpClient::Preconditions.require_keys(opts, [:sku, :price_book_key, :price_book_item_key, :item_name, :amount, :schedule], 'CsvPriceBookItemExportRowBySku')
28678
+ @sku = HttpClient::Preconditions.assert_class('sku', opts.delete(:sku), String)
28679
+ @price_book_key = HttpClient::Preconditions.assert_class('price_book_key', opts.delete(:price_book_key), String)
28680
+ @price_book_item_key = HttpClient::Preconditions.assert_class('price_book_item_key', opts.delete(:price_book_item_key), String)
28681
+ @item_name = HttpClient::Preconditions.assert_class('item_name', opts.delete(:item_name), String)
28682
+ @amount = HttpClient::Preconditions.assert_class('amount', HttpClient::Helper.to_big_decimal(opts.delete(:amount)), BigDecimal)
28683
+ @item_attributes = (x = opts.delete(:item_attributes); x.nil? ? nil : HttpClient::Preconditions.assert_class('item_attributes', x, Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('item_attributes', d[1], String); h })
28684
+ @schedule = (x = opts.delete(:schedule); x.is_a?(::Io::Flow::V0::Models::PriceBookItemSchedule) ? x : ::Io::Flow::V0::Models::PriceBookItemSchedule.new(x))
28685
+ end
28686
+
28687
+ def to_json
28688
+ JSON.dump(to_hash)
28689
+ end
28690
+
28691
+ def copy(incoming={})
28692
+ CsvPriceBookItemExportRowBySku.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
28693
+ end
28694
+
28695
+ def to_hash
28696
+ {
27869
28697
  :sku => sku,
28698
+ :price_book_key => price_book_key,
28699
+ :price_book_item_key => price_book_item_key,
27870
28700
  :item_name => item_name,
27871
28701
  :amount => amount.to_f.to_s,
27872
28702
  :item_attributes => item_attributes.nil? ? nil : item_attributes,
27873
- :starts_at => starts_at,
27874
- :ends_at => ends_at
28703
+ :schedule => schedule.to_hash
27875
28704
  }
27876
28705
  end
27877
28706
 
@@ -29751,7 +30580,7 @@ module Io
29751
30580
  # you can capture up to the amount of the authorization.
29752
30581
  class DirectAuthorizationForm < AuthorizationForm
29753
30582
 
29754
- attr_reader :token, :amount, :currency, :customer, :key, :cvv, :attributes, :destination, :billing_address, :ip, :options, :redirect_urls, :browser_info, :action_configuration
30583
+ attr_reader :token, :amount, :currency, :customer, :key, :cvv, :attributes, :destination, :billing_address, :ip, :options, :redirect_urls, :browser_info, :inline_action_configuration
29755
30584
 
29756
30585
  def initialize(incoming={})
29757
30586
  super(:discriminator => AuthorizationForm::Types::DIRECT_AUTHORIZATION_FORM)
@@ -29770,7 +30599,7 @@ module Io
29770
30599
  @options = (x = opts.delete(:options); x.nil? ? nil : HttpClient::Preconditions.assert_class('options', x, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::AuthorizationOption) ? x : ::Io::Flow::V0::Models::AuthorizationOption.apply(x)) })
29771
30600
  @redirect_urls = (x = opts.delete(:redirect_urls); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::PostPaymentRedirectUrls) ? x : ::Io::Flow::V0::Models::PostPaymentRedirectUrls.new(x)))
29772
30601
  @browser_info = (x = opts.delete(:browser_info); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::BrowserInfo) ? x : ::Io::Flow::V0::Models::BrowserInfo.new(x)))
29773
- @action_configuration = (x = opts.delete(:action_configuration); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ActionConfiguration) ? x : ::Io::Flow::V0::Models::ActionConfiguration.from_json(x)))
30602
+ @inline_action_configuration = (x = opts.delete(:inline_action_configuration); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::InlineActionConfiguration) ? x : ::Io::Flow::V0::Models::InlineActionConfiguration.from_json(x)))
29774
30603
  end
29775
30604
 
29776
30605
  def to_json
@@ -29796,7 +30625,7 @@ module Io
29796
30625
  :options => options.nil? ? nil : options.map { |o| o.value },
29797
30626
  :redirect_urls => redirect_urls.nil? ? nil : redirect_urls.to_hash,
29798
30627
  :browser_info => browser_info.nil? ? nil : browser_info.to_hash,
29799
- :action_configuration => action_configuration.nil? ? nil : action_configuration.to_hash
30628
+ :inline_action_configuration => inline_action_configuration.nil? ? nil : inline_action_configuration.to_hash
29800
30629
  }
29801
30630
  end
29802
30631
 
@@ -31323,7 +32152,7 @@ module Io
31323
32152
  # Experiences define a local experience for a given geographic region
31324
32153
  class ExperienceForm
31325
32154
 
31326
- attr_reader :region_id, :name, :delivered_duty, :country, :currency, :language, :key, :measurement_system, :subcatalog_id
32155
+ attr_reader :region_id, :name, :delivered_duty, :country, :currency, :language, :key, :position, :measurement_system, :subcatalog_id
31327
32156
 
31328
32157
  def initialize(incoming={})
31329
32158
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -31335,6 +32164,7 @@ module Io
31335
32164
  @currency = (x = opts.delete(:currency); x.nil? ? nil : HttpClient::Preconditions.assert_class('currency', x, String))
31336
32165
  @language = (x = opts.delete(:language); x.nil? ? nil : HttpClient::Preconditions.assert_class('language', x, String))
31337
32166
  @key = (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, String))
32167
+ @position = (x = opts.delete(:position); x.nil? ? nil : HttpClient::Preconditions.assert_class('position', x, Integer))
31338
32168
  @measurement_system = (x = opts.delete(:measurement_system); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::MeasurementSystem) ? x : ::Io::Flow::V0::Models::MeasurementSystem.apply(x)))
31339
32169
  @subcatalog_id = (x = opts.delete(:subcatalog_id); x.nil? ? nil : HttpClient::Preconditions.assert_class('subcatalog_id', x, String))
31340
32170
  end
@@ -31356,6 +32186,7 @@ module Io
31356
32186
  :currency => currency,
31357
32187
  :language => language,
31358
32188
  :key => key,
32189
+ :position => position,
31359
32190
  :measurement_system => measurement_system.nil? ? nil : measurement_system.value,
31360
32191
  :subcatalog_id => subcatalog_id
31361
32192
  }
@@ -32763,7 +33594,7 @@ module Io
32763
33594
 
32764
33595
  end
32765
33596
 
32766
- # Rule to apply to enable white-listing and black-listing for an email address.
33597
+ # Rule to apply to enable allow-listing and deny-listing for an email address.
32767
33598
  class FraudEmailRule
32768
33599
 
32769
33600
  attr_reader :id, :email, :decision
@@ -33909,37 +34740,6 @@ module Io
33909
34740
 
33910
34741
  end
33911
34742
 
33912
- # Categories optimized for harmonization
33913
- class HarmonizedCategory
33914
-
33915
- attr_reader :id, :name, :parent
33916
-
33917
- def initialize(incoming={})
33918
- opts = HttpClient::Helper.symbolize_keys(incoming)
33919
- HttpClient::Preconditions.require_keys(opts, [:id, :name], 'HarmonizedCategory')
33920
- @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
33921
- @name = HttpClient::Preconditions.assert_class('name', opts.delete(:name), String)
33922
- @parent = (x = opts.delete(:parent); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::HarmonizedCategoryReference) ? x : ::Io::Flow::V0::Models::HarmonizedCategoryReference.new(x)))
33923
- end
33924
-
33925
- def to_json
33926
- JSON.dump(to_hash)
33927
- end
33928
-
33929
- def copy(incoming={})
33930
- HarmonizedCategory.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
33931
- end
33932
-
33933
- def to_hash
33934
- {
33935
- :id => id,
33936
- :name => name,
33937
- :parent => parent.nil? ? nil : parent.to_hash
33938
- }
33939
- end
33940
-
33941
- end
33942
-
33943
34743
  class HarmonizedCategoryReference
33944
34744
 
33945
34745
  attr_reader :id
@@ -36042,7 +36842,7 @@ module Io
36042
36842
  # many clients, this will map to a Sku.
36043
36843
  class Item
36044
36844
 
36045
- attr_reader :id, :number, :locale, :name, :price, :categories, :description, :attributes, :dimensions, :images, :local
36845
+ attr_reader :id, :number, :locale, :name, :price, :categories, :description, :attributes, :dimensions, :images, :local, :created_at, :updated_at
36046
36846
 
36047
36847
  def initialize(incoming={})
36048
36848
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -36058,6 +36858,8 @@ module Io
36058
36858
  @dimensions = (x = opts.delete(:dimensions); x.is_a?(::Io::Flow::V0::Models::Dimensions) ? x : ::Io::Flow::V0::Models::Dimensions.new(x))
36059
36859
  @images = HttpClient::Preconditions.assert_class('images', (x = opts.delete(:images); x.nil? ? [] : x), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::Image) ? x : ::Io::Flow::V0::Models::Image.new(x)) }
36060
36860
  @local = (x = opts.delete(:local); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Local) ? x : ::Io::Flow::V0::Models::Local.new(x)))
36861
+ @created_at = (x = opts.delete(:created_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('created_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
36862
+ @updated_at = (x = opts.delete(:updated_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('updated_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
36061
36863
  end
36062
36864
 
36063
36865
  def to_json
@@ -36080,7 +36882,9 @@ module Io
36080
36882
  :attributes => attributes,
36081
36883
  :dimensions => dimensions.to_hash,
36082
36884
  :images => images.map { |o| o.to_hash },
36083
- :local => local.nil? ? nil : local.to_hash
36885
+ :local => local.nil? ? nil : local.to_hash,
36886
+ :created_at => created_at,
36887
+ :updated_at => updated_at
36084
36888
  }
36085
36889
  end
36086
36890
 
@@ -37564,6 +38368,39 @@ module Io
37564
38368
 
37565
38369
  end
37566
38370
 
38371
+ # Localized item attribute pricing information
38372
+ class LocalItemAttributePricing
38373
+
38374
+ attr_reader :pretax_price, :vat, :duty, :price
38375
+
38376
+ def initialize(incoming={})
38377
+ opts = HttpClient::Helper.symbolize_keys(incoming)
38378
+ HttpClient::Preconditions.require_keys(opts, [:pretax_price, :price], 'LocalItemAttributePricing')
38379
+ @pretax_price = (x = opts.delete(:pretax_price); x.is_a?(::Io::Flow::V0::Models::PriceWithBase) ? x : ::Io::Flow::V0::Models::PriceWithBase.new(x))
38380
+ @vat = (x = opts.delete(:vat); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::LocalizedItemVat) ? x : ::Io::Flow::V0::Models::LocalizedItemVat.new(x)))
38381
+ @duty = (x = opts.delete(:duty); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::LocalizedItemDuty) ? x : ::Io::Flow::V0::Models::LocalizedItemDuty.new(x)))
38382
+ @price = (x = opts.delete(:price); x.is_a?(::Io::Flow::V0::Models::LocalizedItemPrice) ? x : ::Io::Flow::V0::Models::LocalizedItemPrice.new(x))
38383
+ end
38384
+
38385
+ def to_json
38386
+ JSON.dump(to_hash)
38387
+ end
38388
+
38389
+ def copy(incoming={})
38390
+ LocalItemAttributePricing.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
38391
+ end
38392
+
38393
+ def to_hash
38394
+ {
38395
+ :pretax_price => pretax_price.to_hash,
38396
+ :vat => vat.nil? ? nil : vat.to_hash,
38397
+ :duty => duty.nil? ? nil : duty.to_hash,
38398
+ :price => price.to_hash
38399
+ }
38400
+ end
38401
+
38402
+ end
38403
+
37567
38404
  class LocalItemDeleted < Event
37568
38405
 
37569
38406
  attr_reader :event_id, :timestamp, :organization, :local_item
@@ -37600,7 +38437,7 @@ module Io
37600
38437
  # Localized item pricing information
37601
38438
  class LocalItemPricing
37602
38439
 
37603
- attr_reader :price, :vat, :duty, :attributes
38440
+ attr_reader :price, :vat, :duty, :attributes, :price_attributes
37604
38441
 
37605
38442
  def initialize(incoming={})
37606
38443
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -37609,6 +38446,7 @@ module Io
37609
38446
  @vat = (x = opts.delete(:vat); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::LocalizedItemVat) ? x : ::Io::Flow::V0::Models::LocalizedItemVat.new(x)))
37610
38447
  @duty = (x = opts.delete(:duty); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::LocalizedItemDuty) ? x : ::Io::Flow::V0::Models::LocalizedItemDuty.new(x)))
37611
38448
  @attributes = HttpClient::Preconditions.assert_class('attributes', opts.delete(:attributes), Hash).inject({}) { |h, d| h[d[0]] = (x = d[1]; x.is_a?(::Io::Flow::V0::Models::PriceWithBase) ? x : ::Io::Flow::V0::Models::PriceWithBase.new(x)); h }
38449
+ @price_attributes = (x = opts.delete(:price_attributes); x.nil? ? nil : HttpClient::Preconditions.assert_class('price_attributes', x, Hash).inject({}) { |h, d| h[d[0]] = (x = d[1]; x.is_a?(::Io::Flow::V0::Models::LocalItemAttributePricing) ? x : ::Io::Flow::V0::Models::LocalItemAttributePricing.new(x)); h })
37612
38450
  end
37613
38451
 
37614
38452
  def to_json
@@ -37624,7 +38462,8 @@ module Io
37624
38462
  :price => price.to_hash,
37625
38463
  :vat => vat.nil? ? nil : vat.to_hash,
37626
38464
  :duty => duty.nil? ? nil : duty.to_hash,
37627
- :attributes => attributes.inject({}) { |hash, o| hash[o[0]] = o[1].nil? ? nil : o[1].to_hash; hash }
38465
+ :attributes => attributes.inject({}) { |hash, o| hash[o[0]] = o[1].nil? ? nil : o[1].to_hash; hash },
38466
+ :price_attributes => price_attributes.nil? ? nil : price_attributes.inject({}) { |hash, o| hash[o[0]] = o[1].nil? ? nil : o[1].to_hash; hash }
37628
38467
  }
37629
38468
  end
37630
38469
 
@@ -38795,7 +39634,7 @@ module Io
38795
39634
  # you can capture up to the amount of the authorization
38796
39635
  class MerchantOfRecordAuthorizationForm < AuthorizationForm
38797
39636
 
38798
- attr_reader :token, :order_number, :amount, :currency, :key, :cvv, :attributes, :ip, :options, :redirect_urls, :browser_info, :action_configuration
39637
+ attr_reader :token, :order_number, :amount, :currency, :key, :cvv, :attributes, :ip, :options, :redirect_urls, :browser_info, :inline_action_configuration
38799
39638
 
38800
39639
  def initialize(incoming={})
38801
39640
  super(:discriminator => AuthorizationForm::Types::MERCHANT_OF_RECORD_AUTHORIZATION_FORM)
@@ -38812,7 +39651,7 @@ module Io
38812
39651
  @options = (x = opts.delete(:options); x.nil? ? nil : HttpClient::Preconditions.assert_class('options', x, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::AuthorizationOption) ? x : ::Io::Flow::V0::Models::AuthorizationOption.apply(x)) })
38813
39652
  @redirect_urls = (x = opts.delete(:redirect_urls); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::PostPaymentRedirectUrls) ? x : ::Io::Flow::V0::Models::PostPaymentRedirectUrls.new(x)))
38814
39653
  @browser_info = (x = opts.delete(:browser_info); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::BrowserInfo) ? x : ::Io::Flow::V0::Models::BrowserInfo.new(x)))
38815
- @action_configuration = (x = opts.delete(:action_configuration); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ActionConfiguration) ? x : ::Io::Flow::V0::Models::ActionConfiguration.from_json(x)))
39654
+ @inline_action_configuration = (x = opts.delete(:inline_action_configuration); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::InlineActionConfiguration) ? x : ::Io::Flow::V0::Models::InlineActionConfiguration.from_json(x)))
38816
39655
  end
38817
39656
 
38818
39657
  def to_json
@@ -38836,7 +39675,7 @@ module Io
38836
39675
  :options => options.nil? ? nil : options.map { |o| o.value },
38837
39676
  :redirect_urls => redirect_urls.nil? ? nil : redirect_urls.to_hash,
38838
39677
  :browser_info => browser_info.nil? ? nil : browser_info.to_hash,
38839
- :action_configuration => action_configuration.nil? ? nil : action_configuration.to_hash
39678
+ :inline_action_configuration => inline_action_configuration.nil? ? nil : inline_action_configuration.to_hash
38840
39679
  }
38841
39680
  end
38842
39681
 
@@ -39286,7 +40125,7 @@ module Io
39286
40125
 
39287
40126
  class OnlineAuthorization < Authorization
39288
40127
 
39289
- attr_reader :id, :key, :method, :merchant_of_record, :details, :payment, :amount, :currency, :requested, :customer, :attributes, :destination, :billing_address, :order, :ip, :result, :created_at, :expires_at, :base
40128
+ attr_reader :id, :key, :method, :merchant_of_record, :details, :payment, :amount, :currency, :requested, :customer, :attributes, :destination, :billing_address, :order, :ip, :result, :created_at, :expires_at, :base, :processor
39290
40129
 
39291
40130
  def initialize(incoming={})
39292
40131
  super(:discriminator => Authorization::Types::ONLINE_AUTHORIZATION)
@@ -39311,6 +40150,7 @@ module Io
39311
40150
  @created_at = HttpClient::Preconditions.assert_class('created_at', HttpClient::Helper.to_date_time_iso8601(opts.delete(:created_at)), DateTime)
39312
40151
  @expires_at = (x = opts.delete(:expires_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('expires_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
39313
40152
  @base = (x = opts.delete(:base); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Money) ? x : ::Io::Flow::V0::Models::Money.new(x)))
40153
+ @processor = (x = opts.delete(:processor); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ExpandablePaymentProcessor) ? x : ::Io::Flow::V0::Models::ExpandablePaymentProcessor.from_json(x)))
39314
40154
  end
39315
40155
 
39316
40156
  def to_json
@@ -39341,7 +40181,8 @@ module Io
39341
40181
  :result => result.to_hash,
39342
40182
  :created_at => created_at,
39343
40183
  :expires_at => expires_at,
39344
- :base => base.nil? ? nil : base.to_hash
40184
+ :base => base.nil? ? nil : base.to_hash,
40185
+ :processor => processor.nil? ? nil : processor.to_hash
39345
40186
  }
39346
40187
  end
39347
40188
 
@@ -41758,7 +42599,7 @@ module Io
41758
42599
  # currently operating in.
41759
42600
  class Organization < ExpandableOrganization
41760
42601
 
41761
- attr_reader :id, :name, :environment, :parent, :defaults, :created_at
42602
+ attr_reader :id, :name, :environment, :parent, :defaults, :created_at, :status
41762
42603
 
41763
42604
  def initialize(incoming={})
41764
42605
  super(:discriminator => ExpandableOrganization::Types::ORGANIZATION)
@@ -41770,6 +42611,7 @@ module Io
41770
42611
  @parent = (x = opts.delete(:parent); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::OrganizationReference) ? x : ::Io::Flow::V0::Models::OrganizationReference.new(x)))
41771
42612
  @defaults = (x = opts.delete(:defaults); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::OrganizationDefaults) ? x : ::Io::Flow::V0::Models::OrganizationDefaults.new(x)))
41772
42613
  @created_at = (x = opts.delete(:created_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('created_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
42614
+ @status = (x = (x = opts.delete(:status); x.nil? ? "active" : x); x.is_a?(::Io::Flow::V0::Models::OrganizationStatus) ? x : ::Io::Flow::V0::Models::OrganizationStatus.apply(x))
41773
42615
  end
41774
42616
 
41775
42617
  def to_json
@@ -41787,7 +42629,8 @@ module Io
41787
42629
  :environment => environment.value,
41788
42630
  :parent => parent.nil? ? nil : parent.to_hash,
41789
42631
  :defaults => defaults.nil? ? nil : defaults.to_hash,
41790
- :created_at => created_at
42632
+ :created_at => created_at,
42633
+ :status => status.value
41791
42634
  }
41792
42635
  end
41793
42636
 
@@ -42191,7 +43034,7 @@ module Io
42191
43034
  # Either id or name is required.
42192
43035
  class OrganizationForm
42193
43036
 
42194
- attr_reader :id, :name, :environment, :parent_id, :defaults
43037
+ attr_reader :id, :name, :environment, :parent_id, :defaults, :status
42195
43038
 
42196
43039
  def initialize(incoming={})
42197
43040
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -42200,6 +43043,7 @@ module Io
42200
43043
  @environment = (x = (x = opts.delete(:environment); x.nil? ? "production" : x); x.is_a?(::Io::Flow::V0::Models::Environment) ? x : ::Io::Flow::V0::Models::Environment.apply(x))
42201
43044
  @parent_id = (x = opts.delete(:parent_id); x.nil? ? nil : HttpClient::Preconditions.assert_class('parent_id', x, String))
42202
43045
  @defaults = (x = opts.delete(:defaults); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::OrganizationDefaults) ? x : ::Io::Flow::V0::Models::OrganizationDefaults.new(x)))
43046
+ @status = (x = (x = opts.delete(:status); x.nil? ? "active" : x); x.is_a?(::Io::Flow::V0::Models::OrganizationStatus) ? x : ::Io::Flow::V0::Models::OrganizationStatus.apply(x))
42203
43047
  end
42204
43048
 
42205
43049
  def to_json
@@ -42216,7 +43060,8 @@ module Io
42216
43060
  :name => name,
42217
43061
  :environment => environment.value,
42218
43062
  :parent_id => parent_id,
42219
- :defaults => defaults.nil? ? nil : defaults.to_hash
43063
+ :defaults => defaults.nil? ? nil : defaults.to_hash,
43064
+ :status => status.value
42220
43065
  }
42221
43066
  end
42222
43067
 
@@ -42225,7 +43070,7 @@ module Io
42225
43070
  # Data required to upsert an organization.
42226
43071
  class OrganizationPutForm
42227
43072
 
42228
- attr_reader :name, :environment, :parent_id, :defaults
43073
+ attr_reader :name, :environment, :parent_id, :defaults, :status
42229
43074
 
42230
43075
  def initialize(incoming={})
42231
43076
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -42233,6 +43078,7 @@ module Io
42233
43078
  @environment = (x = opts.delete(:environment); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Environment) ? x : ::Io::Flow::V0::Models::Environment.apply(x)))
42234
43079
  @parent_id = (x = opts.delete(:parent_id); x.nil? ? nil : HttpClient::Preconditions.assert_class('parent_id', x, String))
42235
43080
  @defaults = (x = opts.delete(:defaults); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::OrganizationDefaults) ? x : ::Io::Flow::V0::Models::OrganizationDefaults.new(x)))
43081
+ @status = (x = (x = opts.delete(:status); x.nil? ? "active" : x); x.is_a?(::Io::Flow::V0::Models::OrganizationStatus) ? x : ::Io::Flow::V0::Models::OrganizationStatus.apply(x))
42236
43082
  end
42237
43083
 
42238
43084
  def to_json
@@ -42248,7 +43094,8 @@ module Io
42248
43094
  :name => name,
42249
43095
  :environment => environment.nil? ? nil : environment.value,
42250
43096
  :parent_id => parent_id,
42251
- :defaults => defaults.nil? ? nil : defaults.to_hash
43097
+ :defaults => defaults.nil? ? nil : defaults.to_hash,
43098
+ :status => status.value
42252
43099
  }
42253
43100
  end
42254
43101
 
@@ -42527,13 +43374,14 @@ module Io
42527
43374
 
42528
43375
  class OrganizationSummary
42529
43376
 
42530
- attr_reader :id, :name
43377
+ attr_reader :id, :name, :environment
42531
43378
 
42532
43379
  def initialize(incoming={})
42533
43380
  opts = HttpClient::Helper.symbolize_keys(incoming)
42534
- HttpClient::Preconditions.require_keys(opts, [:id, :name], 'OrganizationSummary')
43381
+ HttpClient::Preconditions.require_keys(opts, [:id, :name, :environment], 'OrganizationSummary')
42535
43382
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
42536
43383
  @name = HttpClient::Preconditions.assert_class('name', opts.delete(:name), String)
43384
+ @environment = (x = opts.delete(:environment); x.is_a?(::Io::Flow::V0::Models::Environment) ? x : ::Io::Flow::V0::Models::Environment.apply(x))
42537
43385
  end
42538
43386
 
42539
43387
  def to_json
@@ -42547,7 +43395,8 @@ module Io
42547
43395
  def to_hash
42548
43396
  {
42549
43397
  :id => id,
42550
- :name => name
43398
+ :name => name,
43399
+ :environment => environment.value
42551
43400
  }
42552
43401
  end
42553
43402
 
@@ -43491,6 +44340,155 @@ module Io
43491
44340
 
43492
44341
  end
43493
44342
 
44343
+ # Information about which payment processor performed the transaction and how it
44344
+ # can be tracked in their system
44345
+ class PaymentProcessor < ExpandablePaymentProcessor
44346
+
44347
+ attr_reader :processor, :operation_identifier, :account
44348
+
44349
+ def initialize(incoming={})
44350
+ super(:discriminator => ExpandablePaymentProcessor::Types::PAYMENT_PROCESSOR)
44351
+ opts = HttpClient::Helper.symbolize_keys(incoming)
44352
+ HttpClient::Preconditions.require_keys(opts, [:processor], 'PaymentProcessor')
44353
+ @processor = HttpClient::Preconditions.assert_class('processor', opts.delete(:processor), String)
44354
+ @operation_identifier = (x = opts.delete(:operation_identifier); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::PaymentProcessorIdentifier) ? x : ::Io::Flow::V0::Models::PaymentProcessorIdentifier.new(x)))
44355
+ @account = (x = opts.delete(:account); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::PaymentProcessorAccount) ? x : ::Io::Flow::V0::Models::PaymentProcessorAccount.new(x)))
44356
+ end
44357
+
44358
+ def to_json
44359
+ JSON.dump(to_hash)
44360
+ end
44361
+
44362
+ def copy(incoming={})
44363
+ PaymentProcessor.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
44364
+ end
44365
+
44366
+ def subtype_to_hash
44367
+ {
44368
+ :processor => processor,
44369
+ :operation_identifier => operation_identifier.nil? ? nil : operation_identifier.to_hash,
44370
+ :account => account.nil? ? nil : account.to_hash
44371
+ }
44372
+ end
44373
+
44374
+ end
44375
+
44376
+ # Information about an account with a payment processor
44377
+ class PaymentProcessorAccount
44378
+
44379
+ attr_reader :organization, :key, :identifier, :parent_account
44380
+
44381
+ def initialize(incoming={})
44382
+ opts = HttpClient::Helper.symbolize_keys(incoming)
44383
+ HttpClient::Preconditions.require_keys(opts, [:organization, :key, :identifier], 'PaymentProcessorAccount')
44384
+ @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
44385
+ @key = HttpClient::Preconditions.assert_class('key', opts.delete(:key), String)
44386
+ @identifier = (x = opts.delete(:identifier); x.is_a?(::Io::Flow::V0::Models::PaymentProcessorIdentifier) ? x : ::Io::Flow::V0::Models::PaymentProcessorIdentifier.new(x))
44387
+ @parent_account = (x = opts.delete(:parent_account); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::PaymentProcessorAccountReference) ? x : ::Io::Flow::V0::Models::PaymentProcessorAccountReference.new(x)))
44388
+ end
44389
+
44390
+ def to_json
44391
+ JSON.dump(to_hash)
44392
+ end
44393
+
44394
+ def copy(incoming={})
44395
+ PaymentProcessorAccount.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
44396
+ end
44397
+
44398
+ def to_hash
44399
+ {
44400
+ :organization => organization,
44401
+ :key => key,
44402
+ :identifier => identifier.to_hash,
44403
+ :parent_account => parent_account.nil? ? nil : parent_account.to_hash
44404
+ }
44405
+ end
44406
+
44407
+ end
44408
+
44409
+ class PaymentProcessorAccountReference
44410
+
44411
+ attr_reader :organization, :key
44412
+
44413
+ def initialize(incoming={})
44414
+ opts = HttpClient::Helper.symbolize_keys(incoming)
44415
+ HttpClient::Preconditions.require_keys(opts, [:organization, :key], 'PaymentProcessorAccountReference')
44416
+ @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
44417
+ @key = HttpClient::Preconditions.assert_class('key', opts.delete(:key), String)
44418
+ end
44419
+
44420
+ def to_json
44421
+ JSON.dump(to_hash)
44422
+ end
44423
+
44424
+ def copy(incoming={})
44425
+ PaymentProcessorAccountReference.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
44426
+ end
44427
+
44428
+ def to_hash
44429
+ {
44430
+ :organization => organization,
44431
+ :key => key
44432
+ }
44433
+ end
44434
+
44435
+ end
44436
+
44437
+ class PaymentProcessorIdentifier
44438
+
44439
+ attr_reader :id, :label
44440
+
44441
+ def initialize(incoming={})
44442
+ opts = HttpClient::Helper.symbolize_keys(incoming)
44443
+ HttpClient::Preconditions.require_keys(opts, [:id, :label], 'PaymentProcessorIdentifier')
44444
+ @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
44445
+ @label = HttpClient::Preconditions.assert_class('label', opts.delete(:label), String)
44446
+ end
44447
+
44448
+ def to_json
44449
+ JSON.dump(to_hash)
44450
+ end
44451
+
44452
+ def copy(incoming={})
44453
+ PaymentProcessorIdentifier.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
44454
+ end
44455
+
44456
+ def to_hash
44457
+ {
44458
+ :id => id,
44459
+ :label => label
44460
+ }
44461
+ end
44462
+
44463
+ end
44464
+
44465
+ class PaymentProcessorReference < ExpandablePaymentProcessor
44466
+
44467
+ attr_reader :processor
44468
+
44469
+ def initialize(incoming={})
44470
+ super(:discriminator => ExpandablePaymentProcessor::Types::PAYMENT_PROCESSOR_REFERENCE)
44471
+ opts = HttpClient::Helper.symbolize_keys(incoming)
44472
+ HttpClient::Preconditions.require_keys(opts, [:processor], 'PaymentProcessorReference')
44473
+ @processor = HttpClient::Preconditions.assert_class('processor', opts.delete(:processor), String)
44474
+ end
44475
+
44476
+ def to_json
44477
+ JSON.dump(to_hash)
44478
+ end
44479
+
44480
+ def copy(incoming={})
44481
+ PaymentProcessorReference.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
44482
+ end
44483
+
44484
+ def subtype_to_hash
44485
+ {
44486
+ :processor => processor
44487
+ }
44488
+ end
44489
+
44490
+ end
44491
+
43494
44492
  class PaymentReference
43495
44493
 
43496
44494
  attr_reader :id
@@ -44208,6 +45206,32 @@ module Io
44208
45206
 
44209
45207
  end
44210
45208
 
45209
+ class PriceBookItemExportOptions
45210
+
45211
+ attr_reader :available_identifiers
45212
+
45213
+ def initialize(incoming={})
45214
+ opts = HttpClient::Helper.symbolize_keys(incoming)
45215
+ HttpClient::Preconditions.require_keys(opts, [:available_identifiers], 'PriceBookItemExportOptions')
45216
+ @available_identifiers = HttpClient::Preconditions.assert_class('available_identifiers', opts.delete(:available_identifiers), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ItemIdentifier) ? x : ::Io::Flow::V0::Models::ItemIdentifier.apply(x)) }
45217
+ end
45218
+
45219
+ def to_json
45220
+ JSON.dump(to_hash)
45221
+ end
45222
+
45223
+ def copy(incoming={})
45224
+ PriceBookItemExportOptions.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
45225
+ end
45226
+
45227
+ def to_hash
45228
+ {
45229
+ :available_identifiers => available_identifiers.map { |o| o.value }
45230
+ }
45231
+ end
45232
+
45233
+ end
45234
+
44211
45235
  # Defines the filters that can be applied when requesting a price book item data
44212
45236
  # export
44213
45237
  class PriceBookItemExportType < ExportType
@@ -47835,15 +48859,23 @@ module Io
47835
48859
 
47836
48860
  class Return
47837
48861
 
47838
- attr_reader :id, :key, :items, :labels
48862
+ attr_reader :id, :key, :order, :service, :items, :labels, :origin, :destination, :source, :tracking_status, :tracking_status_timestamp, :carrier_tracking_number
47839
48863
 
47840
48864
  def initialize(incoming={})
47841
48865
  opts = HttpClient::Helper.symbolize_keys(incoming)
47842
- HttpClient::Preconditions.require_keys(opts, [:id, :key, :items, :labels], 'Return')
48866
+ HttpClient::Preconditions.require_keys(opts, [:id, :key, :service, :items, :origin, :destination, :source], 'Return')
47843
48867
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
47844
48868
  @key = HttpClient::Preconditions.assert_class('key', opts.delete(:key), String)
48869
+ @order = (x = opts.delete(:order); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ReturnOrderReference) ? x : ::Io::Flow::V0::Models::ReturnOrderReference.new(x)))
48870
+ @service = (x = opts.delete(:service); x.is_a?(::Io::Flow::V0::Models::ServiceSummary) ? x : ::Io::Flow::V0::Models::ServiceSummary.new(x))
47845
48871
  @items = HttpClient::Preconditions.assert_class('items', opts.delete(:items), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ReturnLineItem) ? x : ::Io::Flow::V0::Models::ReturnLineItem.new(x)) }
47846
- @labels = HttpClient::Preconditions.assert_class('labels', opts.delete(:labels), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ShippingLabel) ? x : ::Io::Flow::V0::Models::ShippingLabel.new(x)) }
48872
+ @labels = (x = opts.delete(:labels); x.nil? ? nil : HttpClient::Preconditions.assert_class('labels', x, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ShippingLabel) ? x : ::Io::Flow::V0::Models::ShippingLabel.new(x)) })
48873
+ @origin = (x = opts.delete(:origin); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
48874
+ @destination = (x = opts.delete(:destination); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
48875
+ @source = (x = opts.delete(:source); x.is_a?(::Io::Flow::V0::Models::ReturnSource) ? x : ::Io::Flow::V0::Models::ReturnSource.from_json(x))
48876
+ @tracking_status = (x = opts.delete(:tracking_status); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ReturnTrackingStatus) ? x : ::Io::Flow::V0::Models::ReturnTrackingStatus.apply(x)))
48877
+ @tracking_status_timestamp = (x = opts.delete(:tracking_status_timestamp); x.nil? ? nil : HttpClient::Preconditions.assert_class('tracking_status_timestamp', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
48878
+ @carrier_tracking_number = (x = opts.delete(:carrier_tracking_number); x.nil? ? nil : HttpClient::Preconditions.assert_class('carrier_tracking_number', x, String))
47847
48879
  end
47848
48880
 
47849
48881
  def to_json
@@ -47858,8 +48890,16 @@ module Io
47858
48890
  {
47859
48891
  :id => id,
47860
48892
  :key => key,
48893
+ :order => order.nil? ? nil : order.to_hash,
48894
+ :service => service.to_hash,
47861
48895
  :items => items.map { |o| o.to_hash },
47862
- :labels => labels.map { |o| o.to_hash }
48896
+ :labels => labels.nil? ? nil : labels.map { |o| o.to_hash },
48897
+ :origin => origin.to_hash,
48898
+ :destination => destination.to_hash,
48899
+ :source => source.to_hash,
48900
+ :tracking_status => tracking_status.nil? ? nil : tracking_status.value,
48901
+ :tracking_status_timestamp => tracking_status_timestamp,
48902
+ :carrier_tracking_number => carrier_tracking_number
47863
48903
  }
47864
48904
  end
47865
48905
 
@@ -47896,9 +48936,42 @@ module Io
47896
48936
 
47897
48937
  end
47898
48938
 
48939
+ class ReturnDeletedV2 < Event
48940
+
48941
+ attr_reader :event_id, :timestamp, :organization, :return_
48942
+
48943
+ def initialize(incoming={})
48944
+ super(:discriminator => Event::Types::RETURN_DELETED_V2)
48945
+ opts = HttpClient::Helper.symbolize_keys(incoming)
48946
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :return_], 'ReturnDeletedV2')
48947
+ @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
48948
+ @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
48949
+ @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
48950
+ @return_ = (x = opts.delete(:return); x.is_a?(::Io::Flow::V0::Models::Return) ? x : ::Io::Flow::V0::Models::Return.new(x))
48951
+ end
48952
+
48953
+ def to_json
48954
+ JSON.dump(to_hash)
48955
+ end
48956
+
48957
+ def copy(incoming={})
48958
+ ReturnDeletedV2.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
48959
+ end
48960
+
48961
+ def subtype_to_hash
48962
+ {
48963
+ :event_id => event_id,
48964
+ :timestamp => timestamp,
48965
+ :organization => organization,
48966
+ :return => return_.to_hash
48967
+ }
48968
+ end
48969
+
48970
+ end
48971
+
47899
48972
  class ReturnForm
47900
48973
 
47901
- attr_reader :items, :tier_id, :order_number, :service, :destination, :key, :origin, :center_key
48974
+ attr_reader :items, :tier_id, :order_number, :service, :destination, :key, :origin, :center_key, :source, :tracking_status, :tracking_status_timestamp, :carrier_tracking_number
47902
48975
 
47903
48976
  def initialize(incoming={})
47904
48977
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -47911,6 +48984,10 @@ module Io
47911
48984
  @key = (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, String))
47912
48985
  @origin = (x = opts.delete(:origin); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x)))
47913
48986
  @center_key = (x = opts.delete(:center_key); x.nil? ? nil : HttpClient::Preconditions.assert_class('center_key', x, String))
48987
+ @source = (x = opts.delete(:source); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ReturnSource) ? x : ::Io::Flow::V0::Models::ReturnSource.from_json(x)))
48988
+ @tracking_status = (x = opts.delete(:tracking_status); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ReturnTrackingStatus) ? x : ::Io::Flow::V0::Models::ReturnTrackingStatus.apply(x)))
48989
+ @tracking_status_timestamp = (x = opts.delete(:tracking_status_timestamp); x.nil? ? nil : HttpClient::Preconditions.assert_class('tracking_status_timestamp', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
48990
+ @carrier_tracking_number = (x = opts.delete(:carrier_tracking_number); x.nil? ? nil : HttpClient::Preconditions.assert_class('carrier_tracking_number', x, String))
47914
48991
  end
47915
48992
 
47916
48993
  def to_json
@@ -47930,7 +49007,11 @@ module Io
47930
49007
  :destination => destination.nil? ? nil : destination.to_hash,
47931
49008
  :key => key,
47932
49009
  :origin => origin.nil? ? nil : origin.to_hash,
47933
- :center_key => center_key
49010
+ :center_key => center_key,
49011
+ :source => source.nil? ? nil : source.to_hash,
49012
+ :tracking_status => tracking_status.nil? ? nil : tracking_status.value,
49013
+ :tracking_status_timestamp => tracking_status_timestamp,
49014
+ :carrier_tracking_number => carrier_tracking_number
47934
49015
  }
47935
49016
  end
47936
49017
 
@@ -47964,7 +49045,7 @@ module Io
47964
49045
 
47965
49046
  class ReturnLineItem
47966
49047
 
47967
- attr_reader :item_number, :order_number, :quantity, :reason, :notes
49048
+ attr_reader :item_number, :order_number, :quantity, :reason, :notes, :attributes
47968
49049
 
47969
49050
  def initialize(incoming={})
47970
49051
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -47974,6 +49055,7 @@ module Io
47974
49055
  @quantity = HttpClient::Preconditions.assert_class('quantity', opts.delete(:quantity), Integer)
47975
49056
  @reason = (x = opts.delete(:reason); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ReturnReason) ? x : ::Io::Flow::V0::Models::ReturnReason.new(x)))
47976
49057
  @notes = (x = opts.delete(:notes); x.nil? ? nil : HttpClient::Preconditions.assert_class('notes', x, String))
49058
+ @attributes = (x = opts.delete(:attributes); x.nil? ? nil : HttpClient::Preconditions.assert_class('attributes', x, Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('attributes', d[1], String); h })
47977
49059
  end
47978
49060
 
47979
49061
  def to_json
@@ -47990,7 +49072,8 @@ module Io
47990
49072
  :order_number => order_number,
47991
49073
  :quantity => quantity,
47992
49074
  :reason => reason.nil? ? nil : reason.to_hash,
47993
- :notes => notes
49075
+ :notes => notes,
49076
+ :attributes => attributes.nil? ? nil : attributes
47994
49077
  }
47995
49078
  end
47996
49079
 
@@ -48051,12 +49134,11 @@ module Io
48051
49134
 
48052
49135
  class ReturnReason
48053
49136
 
48054
- attr_reader :key, :name
49137
+ attr_reader :name
48055
49138
 
48056
49139
  def initialize(incoming={})
48057
49140
  opts = HttpClient::Helper.symbolize_keys(incoming)
48058
- HttpClient::Preconditions.require_keys(opts, [:key, :name], 'ReturnReason')
48059
- @key = HttpClient::Preconditions.assert_class('key', opts.delete(:key), String)
49141
+ HttpClient::Preconditions.require_keys(opts, [:name], 'ReturnReason')
48060
49142
  @name = HttpClient::Preconditions.assert_class('name', opts.delete(:name), String)
48061
49143
  end
48062
49144
 
@@ -48070,7 +49152,6 @@ module Io
48070
49152
 
48071
49153
  def to_hash
48072
49154
  {
48073
- :key => key,
48074
49155
  :name => name
48075
49156
  }
48076
49157
  end
@@ -48079,11 +49160,10 @@ module Io
48079
49160
 
48080
49161
  class ReturnReasonForm
48081
49162
 
48082
- attr_reader :key, :name
49163
+ attr_reader :name
48083
49164
 
48084
49165
  def initialize(incoming={})
48085
49166
  opts = HttpClient::Helper.symbolize_keys(incoming)
48086
- @key = (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, String))
48087
49167
  @name = (x = opts.delete(:name); x.nil? ? nil : HttpClient::Preconditions.assert_class('name', x, String))
48088
49168
  end
48089
49169
 
@@ -48097,7 +49177,6 @@ module Io
48097
49177
 
48098
49178
  def to_hash
48099
49179
  {
48100
- :key => key,
48101
49180
  :name => name
48102
49181
  }
48103
49182
  end
@@ -48129,6 +49208,59 @@ module Io
48129
49208
 
48130
49209
  end
48131
49210
 
49211
+ class ReturnSourceExternalVendor < ReturnSource
49212
+
49213
+ attr_reader :key
49214
+
49215
+ def initialize(incoming={})
49216
+ super(:discriminator => ReturnSource::Types::RETURN_SOURCE_EXTERNAL_VENDOR)
49217
+ opts = HttpClient::Helper.symbolize_keys(incoming)
49218
+ HttpClient::Preconditions.require_keys(opts, [:key], 'ReturnSourceExternalVendor')
49219
+ @key = HttpClient::Preconditions.assert_class('key', opts.delete(:key), String)
49220
+ end
49221
+
49222
+ def to_json
49223
+ JSON.dump(to_hash)
49224
+ end
49225
+
49226
+ def copy(incoming={})
49227
+ ReturnSourceExternalVendor.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
49228
+ end
49229
+
49230
+ def subtype_to_hash
49231
+ {
49232
+ :key => key
49233
+ }
49234
+ end
49235
+
49236
+ end
49237
+
49238
+ class ReturnSourceFlow < ReturnSource
49239
+
49240
+ attr_reader :attributes
49241
+
49242
+ def initialize(incoming={})
49243
+ super(:discriminator => ReturnSource::Types::RETURN_SOURCE_FLOW)
49244
+ opts = HttpClient::Helper.symbolize_keys(incoming)
49245
+ @attributes = (x = opts.delete(:attributes); x.nil? ? nil : HttpClient::Preconditions.assert_class('attributes', x, Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('attributes', d[1], String); h })
49246
+ end
49247
+
49248
+ def to_json
49249
+ JSON.dump(to_hash)
49250
+ end
49251
+
49252
+ def copy(incoming={})
49253
+ ReturnSourceFlow.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
49254
+ end
49255
+
49256
+ def subtype_to_hash
49257
+ {
49258
+ :attributes => attributes.nil? ? nil : attributes
49259
+ }
49260
+ end
49261
+
49262
+ end
49263
+
48132
49264
  class ReturnUpserted < Event
48133
49265
 
48134
49266
  attr_reader :event_id, :timestamp, :id, :organization, :destination, :items, :key, :labels, :service, :origin
@@ -48136,7 +49268,7 @@ module Io
48136
49268
  def initialize(incoming={})
48137
49269
  super(:discriminator => Event::Types::RETURN_UPSERTED)
48138
49270
  opts = HttpClient::Helper.symbolize_keys(incoming)
48139
- HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :id, :organization, :destination, :items, :key, :labels, :service, :origin], 'ReturnUpserted')
49271
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :id, :organization, :destination, :items, :key, :service, :origin], 'ReturnUpserted')
48140
49272
  @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
48141
49273
  @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
48142
49274
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
@@ -48144,7 +49276,7 @@ module Io
48144
49276
  @destination = (x = opts.delete(:destination); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
48145
49277
  @items = HttpClient::Preconditions.assert_class('items', opts.delete(:items), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ReturnLineItem) ? x : ::Io::Flow::V0::Models::ReturnLineItem.new(x)) }
48146
49278
  @key = HttpClient::Preconditions.assert_class('key', opts.delete(:key), String)
48147
- @labels = HttpClient::Preconditions.assert_class('labels', opts.delete(:labels), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ShippingLabel) ? x : ::Io::Flow::V0::Models::ShippingLabel.new(x)) }
49279
+ @labels = (x = opts.delete(:labels); x.nil? ? nil : HttpClient::Preconditions.assert_class('labels', x, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ShippingLabel) ? x : ::Io::Flow::V0::Models::ShippingLabel.new(x)) })
48148
49280
  @service = HttpClient::Preconditions.assert_class('service', opts.delete(:service), String)
48149
49281
  @origin = (x = opts.delete(:origin); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
48150
49282
  end
@@ -48166,7 +49298,7 @@ module Io
48166
49298
  :destination => destination.to_hash,
48167
49299
  :items => items.map { |o| o.to_hash },
48168
49300
  :key => key,
48169
- :labels => labels.map { |o| o.to_hash },
49301
+ :labels => labels.nil? ? nil : labels.map { |o| o.to_hash },
48170
49302
  :service => service,
48171
49303
  :origin => origin.to_hash
48172
49304
  }
@@ -48174,6 +49306,39 @@ module Io
48174
49306
 
48175
49307
  end
48176
49308
 
49309
+ class ReturnUpsertedV2 < Event
49310
+
49311
+ attr_reader :event_id, :timestamp, :organization, :return_
49312
+
49313
+ def initialize(incoming={})
49314
+ super(:discriminator => Event::Types::RETURN_UPSERTED_V2)
49315
+ opts = HttpClient::Helper.symbolize_keys(incoming)
49316
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :return_], 'ReturnUpsertedV2')
49317
+ @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
49318
+ @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
49319
+ @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
49320
+ @return_ = (x = opts.delete(:return); x.is_a?(::Io::Flow::V0::Models::Return) ? x : ::Io::Flow::V0::Models::Return.new(x))
49321
+ end
49322
+
49323
+ def to_json
49324
+ JSON.dump(to_hash)
49325
+ end
49326
+
49327
+ def copy(incoming={})
49328
+ ReturnUpsertedV2.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
49329
+ end
49330
+
49331
+ def subtype_to_hash
49332
+ {
49333
+ :event_id => event_id,
49334
+ :timestamp => timestamp,
49335
+ :organization => organization,
49336
+ :return => return_.to_hash
49337
+ }
49338
+ end
49339
+
49340
+ end
49341
+
48177
49342
  class ReturnVersion
48178
49343
 
48179
49344
  attr_reader :id, :timestamp, :type, :return_
@@ -49755,7 +50920,7 @@ module Io
49755
50920
  # shipper to transport a package from a given origin to destination
49756
50921
  class ShippingLabel
49757
50922
 
49758
- attr_reader :id, :attributes, :carrier_tracking_number, :carrier_tracking_number_url, :cost, :destination, :flow_tracking_number, :flow_tracking_number_url, :origin, :service, :window, :label, :invoice, :return_, :order, :package, :order_identifier, :fulfillment_key, :shipment_recipient
50923
+ attr_reader :id, :attributes, :carrier_tracking_number, :carrier_tracking_number_url, :cost, :destination, :flow_tracking_number, :flow_tracking_number_url, :origin, :service, :window, :label, :invoice, :return_, :order, :package, :order_identifier, :fulfillment_key, :shipment_recipient, :created_at, :updated_at
49759
50924
 
49760
50925
  def initialize(incoming={})
49761
50926
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -49779,6 +50944,8 @@ module Io
49779
50944
  @order_identifier = (x = opts.delete(:order_identifier); x.nil? ? nil : HttpClient::Preconditions.assert_class('order_identifier', x, String))
49780
50945
  @fulfillment_key = (x = opts.delete(:fulfillment_key); x.nil? ? nil : HttpClient::Preconditions.assert_class('fulfillment_key', x, String))
49781
50946
  @shipment_recipient = (x = opts.delete(:shipment_recipient); x.is_a?(::Io::Flow::V0::Models::ShipmentRecipient) ? x : ::Io::Flow::V0::Models::ShipmentRecipient.apply(x))
50947
+ @created_at = (x = opts.delete(:created_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('created_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
50948
+ @updated_at = (x = opts.delete(:updated_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('updated_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
49782
50949
  end
49783
50950
 
49784
50951
  def to_json
@@ -49809,7 +50976,9 @@ module Io
49809
50976
  :package => package.nil? ? nil : package.to_hash,
49810
50977
  :order_identifier => order_identifier,
49811
50978
  :fulfillment_key => fulfillment_key,
49812
- :shipment_recipient => shipment_recipient.value
50979
+ :shipment_recipient => shipment_recipient.value,
50980
+ :created_at => created_at,
50981
+ :updated_at => updated_at
49813
50982
  }
49814
50983
  end
49815
50984
 
@@ -51237,12 +52406,13 @@ module Io
51237
52406
  # Model to represent romanized order detail metafield
51238
52407
  class ShopifyOrderRomanizationMetafield
51239
52408
 
51240
- attr_reader :destination
52409
+ attr_reader :destination, :billing
51241
52410
 
51242
52411
  def initialize(incoming={})
51243
52412
  opts = HttpClient::Helper.symbolize_keys(incoming)
51244
52413
  HttpClient::Preconditions.require_keys(opts, [:destination], 'ShopifyOrderRomanizationMetafield')
51245
52414
  @destination = (x = opts.delete(:destination); x.is_a?(::Io::Flow::V0::Models::OrderAddress) ? x : ::Io::Flow::V0::Models::OrderAddress.new(x))
52415
+ @billing = (x = opts.delete(:billing); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::BillingAddress) ? x : ::Io::Flow::V0::Models::BillingAddress.new(x)))
51246
52416
  end
51247
52417
 
51248
52418
  def to_json
@@ -51255,7 +52425,8 @@ module Io
51255
52425
 
51256
52426
  def to_hash
51257
52427
  {
51258
- :destination => destination.to_hash
52428
+ :destination => destination.to_hash,
52429
+ :billing => billing.nil? ? nil : billing.to_hash
51259
52430
  }
51260
52431
  end
51261
52432
 
@@ -51756,8 +52927,8 @@ module Io
51756
52927
 
51757
52928
  end
51758
52929
 
51759
- # A configuration with custom query to select a subset of master catalog items
51760
- # for a localized experience
52930
+ # A configuration with custom query to select a subset of the catalog items for
52931
+ # a localized experience
51761
52932
  class Subcatalog < ExpandableSubcatalog
51762
52933
 
51763
52934
  attr_reader :id, :catalog, :settings
@@ -51791,16 +52962,15 @@ module Io
51791
52962
 
51792
52963
  class SubcatalogDeleted < Event
51793
52964
 
51794
- attr_reader :event_id, :timestamp, :organization, :catalog, :subcatalog_id
52965
+ attr_reader :event_id, :timestamp, :organization, :subcatalog_id
51795
52966
 
51796
52967
  def initialize(incoming={})
51797
52968
  super(:discriminator => Event::Types::SUBCATALOG_DELETED)
51798
52969
  opts = HttpClient::Helper.symbolize_keys(incoming)
51799
- HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :catalog, :subcatalog_id], 'SubcatalogDeleted')
52970
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :subcatalog_id], 'SubcatalogDeleted')
51800
52971
  @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
51801
52972
  @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
51802
52973
  @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
51803
- @catalog = HttpClient::Preconditions.assert_class('catalog', opts.delete(:catalog), String)
51804
52974
  @subcatalog_id = HttpClient::Preconditions.assert_class('subcatalog_id', opts.delete(:subcatalog_id), String)
51805
52975
  end
51806
52976
 
@@ -51817,7 +52987,6 @@ module Io
51817
52987
  :event_id => event_id,
51818
52988
  :timestamp => timestamp,
51819
52989
  :organization => organization,
51820
- :catalog => catalog,
51821
52990
  :subcatalog_id => subcatalog_id
51822
52991
  }
51823
52992
  end
@@ -51882,17 +53051,16 @@ module Io
51882
53051
 
51883
53052
  class SubcatalogItemDeleted < Event
51884
53053
 
51885
- attr_reader :event_id, :timestamp, :organization, :number, :catalog, :subcatalog_id
53054
+ attr_reader :event_id, :timestamp, :organization, :number, :subcatalog_id
51886
53055
 
51887
53056
  def initialize(incoming={})
51888
53057
  super(:discriminator => Event::Types::SUBCATALOG_ITEM_DELETED)
51889
53058
  opts = HttpClient::Helper.symbolize_keys(incoming)
51890
- HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :number, :catalog, :subcatalog_id], 'SubcatalogItemDeleted')
53059
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :number, :subcatalog_id], 'SubcatalogItemDeleted')
51891
53060
  @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
51892
53061
  @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
51893
53062
  @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
51894
53063
  @number = HttpClient::Preconditions.assert_class('number', opts.delete(:number), String)
51895
- @catalog = HttpClient::Preconditions.assert_class('catalog', opts.delete(:catalog), String)
51896
53064
  @subcatalog_id = HttpClient::Preconditions.assert_class('subcatalog_id', opts.delete(:subcatalog_id), String)
51897
53065
  end
51898
53066
 
@@ -51910,7 +53078,6 @@ module Io
51910
53078
  :timestamp => timestamp,
51911
53079
  :organization => organization,
51912
53080
  :number => number,
51913
- :catalog => catalog,
51914
53081
  :subcatalog_id => subcatalog_id
51915
53082
  }
51916
53083
  end
@@ -51919,17 +53086,16 @@ module Io
51919
53086
 
51920
53087
  class SubcatalogItemUpserted < Event
51921
53088
 
51922
- attr_reader :event_id, :timestamp, :organization, :number, :catalog, :subcatalog_id, :status
53089
+ attr_reader :event_id, :timestamp, :organization, :number, :subcatalog_id, :status
51923
53090
 
51924
53091
  def initialize(incoming={})
51925
53092
  super(:discriminator => Event::Types::SUBCATALOG_ITEM_UPSERTED)
51926
53093
  opts = HttpClient::Helper.symbolize_keys(incoming)
51927
- HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :number, :catalog, :subcatalog_id, :status], 'SubcatalogItemUpserted')
53094
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :number, :subcatalog_id, :status], 'SubcatalogItemUpserted')
51928
53095
  @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
51929
53096
  @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
51930
53097
  @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
51931
53098
  @number = HttpClient::Preconditions.assert_class('number', opts.delete(:number), String)
51932
- @catalog = HttpClient::Preconditions.assert_class('catalog', opts.delete(:catalog), String)
51933
53099
  @subcatalog_id = HttpClient::Preconditions.assert_class('subcatalog_id', opts.delete(:subcatalog_id), String)
51934
53100
  @status = HttpClient::Preconditions.assert_class('status', opts.delete(:status), String)
51935
53101
  end
@@ -51948,7 +53114,6 @@ module Io
51948
53114
  :timestamp => timestamp,
51949
53115
  :organization => organization,
51950
53116
  :number => number,
51951
- :catalog => catalog,
51952
53117
  :subcatalog_id => subcatalog_id,
51953
53118
  :status => status
51954
53119
  }
@@ -52103,16 +53268,15 @@ module Io
52103
53268
 
52104
53269
  class SubcatalogUpserted < Event
52105
53270
 
52106
- attr_reader :event_id, :timestamp, :organization, :catalog, :subcatalog_id
53271
+ attr_reader :event_id, :timestamp, :organization, :subcatalog_id
52107
53272
 
52108
53273
  def initialize(incoming={})
52109
53274
  super(:discriminator => Event::Types::SUBCATALOG_UPSERTED)
52110
53275
  opts = HttpClient::Helper.symbolize_keys(incoming)
52111
- HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :catalog, :subcatalog_id], 'SubcatalogUpserted')
53276
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :subcatalog_id], 'SubcatalogUpserted')
52112
53277
  @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
52113
53278
  @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
52114
53279
  @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
52115
- @catalog = HttpClient::Preconditions.assert_class('catalog', opts.delete(:catalog), String)
52116
53280
  @subcatalog_id = HttpClient::Preconditions.assert_class('subcatalog_id', opts.delete(:subcatalog_id), String)
52117
53281
  end
52118
53282
 
@@ -52129,7 +53293,6 @@ module Io
52129
53293
  :event_id => event_id,
52130
53294
  :timestamp => timestamp,
52131
53295
  :organization => organization,
52132
- :catalog => catalog,
52133
53296
  :subcatalog_id => subcatalog_id
52134
53297
  }
52135
53298
  end
@@ -52771,6 +53934,38 @@ module Io
52771
53934
 
52772
53935
  end
52773
53936
 
53937
+ class TaxReport
53938
+
53939
+ attr_reader :schedule, :timezone, :types, :email_recipients
53940
+
53941
+ def initialize(incoming={})
53942
+ opts = HttpClient::Helper.symbolize_keys(incoming)
53943
+ HttpClient::Preconditions.require_keys(opts, [:schedule, :timezone], 'TaxReport')
53944
+ @schedule = (x = opts.delete(:schedule); x.is_a?(::Io::Flow::V0::Models::RepeatSchedule) ? x : ::Io::Flow::V0::Models::RepeatSchedule.from_json(x))
53945
+ @timezone = HttpClient::Preconditions.assert_class('timezone', opts.delete(:timezone), String)
53946
+ @types = HttpClient::Preconditions.assert_class('types', (x = opts.delete(:types); x.nil? ? ["consumer","b2b"] : x), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::TaxReportType) ? x : ::Io::Flow::V0::Models::TaxReportType.apply(x)) }
53947
+ @email_recipients = (x = opts.delete(:email_recipients); x.nil? ? nil : HttpClient::Preconditions.assert_class('email_recipients', x, Array).map { |v| HttpClient::Preconditions.assert_class('email_recipients', v, String) })
53948
+ end
53949
+
53950
+ def to_json
53951
+ JSON.dump(to_hash)
53952
+ end
53953
+
53954
+ def copy(incoming={})
53955
+ TaxReport.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
53956
+ end
53957
+
53958
+ def to_hash
53959
+ {
53960
+ :schedule => schedule.to_hash,
53961
+ :timezone => timezone,
53962
+ :types => types.map { |o| o.value },
53963
+ :email_recipients => email_recipients.nil? ? nil : email_recipients
53964
+ }
53965
+ end
53966
+
53967
+ end
53968
+
52774
53969
  # Represents the results from 3D Secure, if applied to an authorization
52775
53970
  class ThreeDSecure
52776
53971
 
@@ -52862,33 +54057,6 @@ module Io
52862
54057
 
52863
54058
  end
52864
54059
 
52865
- # Instructions to the card issuer to render challenges to the user
52866
- class ThreedsTwoBrowserActionConfiguration < ActionConfiguration
52867
-
52868
- attr_reader :viewport
52869
-
52870
- def initialize(incoming={})
52871
- super(:discriminator => ActionConfiguration::Types::THREEDS_TWO_BROWSER_ACTION_CONFIGURATION)
52872
- opts = HttpClient::Helper.symbolize_keys(incoming)
52873
- @viewport = (x = (x = opts.delete(:viewport); x.nil? ? "xxx_small" : x); x.is_a?(::Io::Flow::V0::Models::ThreedsTwoChallengeViewport) ? x : ::Io::Flow::V0::Models::ThreedsTwoChallengeViewport.apply(x))
52874
- end
52875
-
52876
- def to_json
52877
- JSON.dump(to_hash)
52878
- end
52879
-
52880
- def copy(incoming={})
52881
- ThreedsTwoBrowserActionConfiguration.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
52882
- end
52883
-
52884
- def subtype_to_hash
52885
- {
52886
- :viewport => viewport.value
52887
- }
52888
- end
52889
-
52890
- end
52891
-
52892
54060
  # Data that must be passed to the 3DS Client to help the issuer ACS render a
52893
54061
  # challenge for the user.
52894
54062
  class ThreedsTwoChallengeRequest < ThreedsChallengeAction