flowcommerce 0.1.15 → 0.1.16

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
  SHA1:
3
- metadata.gz: d5cccb5d3cd576cec3a5db7c43112d034f107767
4
- data.tar.gz: 8144427a492503c2a65edb177d373a723bdb5fd3
3
+ metadata.gz: 095c670a513ef1cb91398a8be4b78178b5934f89
4
+ data.tar.gz: e294e2bfcb6d58a75305d634de2f41f8de5b36f7
5
5
  SHA512:
6
- metadata.gz: eff3e4898cd3af1f2a7dc7b53cd59894bfae7d6c69380a17852a03e42ff217f474d88a111b6cb40d57dde28a95f9f4ca63af39f90014f85364c2196f16943568
7
- data.tar.gz: 2c1e10a3a7e5a0dccb2a5deba64dca2a6acd251962dcce6518ad337250bde07e13adeb22ba85cc1a85331f371b770f2c9484e8b1ec482b1cc7401b7a29d1e8ae
6
+ metadata.gz: 38d861aa193287b28186fa34f61cfd81655f92e79fbde1d219c110ceafc7e05670fc1a78b800ff90544cb9eadc313cd078e89ade66a01153df4d6b127bf815a0
7
+ data.tar.gz: 48cda4e6c64288c8cf065360fa6015746a5a221cf38e69252ce6f3eccb237f58def6c6dbba43264070b0f65f19fa7f563924c6060fd0fb5f97681fbc1e577418
@@ -1,6 +1,6 @@
1
1
  # Generated by apidoc - http://www.apidoc.me
2
- # Service version: 0.2.50
3
- # apidoc:0.11.52 http://www.apidoc.me/flow/api/0.2.52/ruby_client
2
+ # Service version: 0.2.65
3
+ # apidoc:0.11.71 http://www.apidoc.me/flow/api/0.2.65/ruby_client
4
4
 
5
5
  require 'cgi'
6
6
  require 'net/http'
@@ -25,8 +25,8 @@ module Io
25
25
 
26
26
  BASE_URL = 'https://api.flow.io' unless defined?(Constants::BASE_URL)
27
27
  NAMESPACE = 'io.flow.v0' unless defined?(Constants::NAMESPACE)
28
- USER_AGENT = 'apidoc:0.11.52 http://www.apidoc.me/flow/api/0.2.52/ruby_client' unless defined?(Constants::USER_AGENT)
29
- VERSION = '0.2.50' unless defined?(Constants::VERSION)
28
+ USER_AGENT = 'apidoc:0.11.71 http://www.apidoc.me/flow/api/0.2.65/ruby_client' unless defined?(Constants::USER_AGENT)
29
+ VERSION = '0.2.65' unless defined?(Constants::VERSION)
30
30
  VERSION_MAJOR = 0 unless defined?(VERSION_MAJOR)
31
31
 
32
32
  end
@@ -209,10 +209,6 @@ module Io
209
209
  @quotes ||= ::Io::Flow::V0::Clients::Quotes.new(self)
210
210
  end
211
211
 
212
- def rmas
213
- @rmas ||= ::Io::Flow::V0::Clients::Rmas.new(self)
214
- end
215
-
216
212
  def shipping_labels
217
213
  @shipping_labels ||= ::Io::Flow::V0::Clients::ShippingLabels.new(self)
218
214
  end
@@ -325,6 +321,14 @@ module Io
325
321
  @password_reset_forms ||= ::Io::Flow::V0::Clients::PasswordResetForms.new(self)
326
322
  end
327
323
 
324
+ def returns
325
+ @returns ||= ::Io::Flow::V0::Clients::Returns.new(self)
326
+ end
327
+
328
+ def scheduled_exports
329
+ @scheduled_exports ||= ::Io::Flow::V0::Clients::ScheduledExports.new(self)
330
+ end
331
+
328
332
  def suggestions
329
333
  @suggestions ||= ::Io::Flow::V0::Clients::Suggestions.new(self)
330
334
  end
@@ -515,6 +519,7 @@ module Io
515
519
  :region => (x = opts.delete(:region); x.nil? ? nil : HttpClient::Preconditions.assert_class('region', x, String)),
516
520
  :currency => (x = opts.delete(:currency); x.nil? ? nil : HttpClient::Preconditions.assert_class('currency', x, String)),
517
521
  :subcatalog => (x = opts.delete(:subcatalog); x.nil? ? nil : HttpClient::Preconditions.assert_class('subcatalog', x, String)),
522
+ :ip => (x = opts.delete(:ip); x.nil? ? nil : HttpClient::Preconditions.assert_class('ip', x, String)),
518
523
  :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
519
524
  :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
520
525
  :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "name" : x), String)
@@ -2045,6 +2050,7 @@ module Io
2045
2050
  query = {
2046
2051
  :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
2047
2052
  :key => (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, Array).map { |v| HttpClient::Preconditions.assert_class('key', v, String) }),
2053
+ :order_number => (x = opts.delete(:order_number); x.nil? ? nil : HttpClient::Preconditions.assert_class('order_number', x, String)),
2048
2054
  :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
2049
2055
  :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
2050
2056
  :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String)
@@ -2584,60 +2590,6 @@ module Io
2584
2590
 
2585
2591
  end
2586
2592
 
2587
- class Rmas
2588
-
2589
- def initialize(client)
2590
- @client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
2591
- end
2592
-
2593
- def get(organization, incoming={})
2594
- HttpClient::Preconditions.assert_class('organization', organization, String)
2595
- opts = HttpClient::Helper.symbolize_keys(incoming)
2596
- query = {
2597
- :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
2598
- :number => (x = opts.delete(:number); x.nil? ? nil : HttpClient::Preconditions.assert_class('number', x, Array).map { |v| HttpClient::Preconditions.assert_class('number', v, String) }),
2599
- :carrier_tracking_number => (x = opts.delete(:carrier_tracking_number); x.nil? ? nil : HttpClient::Preconditions.assert_class('carrier_tracking_number', x, Array).map { |v| HttpClient::Preconditions.assert_class('carrier_tracking_number', v, String) }),
2600
- :flow_tracking_number => (x = opts.delete(:flow_tracking_number); x.nil? ? nil : HttpClient::Preconditions.assert_class('flow_tracking_number', x, Array).map { |v| HttpClient::Preconditions.assert_class('flow_tracking_number', v, String) }),
2601
- :order_number => (x = opts.delete(:order_number); x.nil? ? nil : HttpClient::Preconditions.assert_class('order_number', x, Array).map { |v| HttpClient::Preconditions.assert_class('order_number', v, String) }),
2602
- :service => (x = opts.delete(:service); x.nil? ? nil : HttpClient::Preconditions.assert_class('service', x, Array).map { |v| HttpClient::Preconditions.assert_class('service', v, String) }),
2603
- :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
2604
- :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
2605
- :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String)
2606
- }.delete_if { |k, v| v.nil? }
2607
- r = @client.request("/#{CGI.escape(organization)}/rmas").with_query(query).get
2608
- r.map { |x| ::Io::Flow::V0::Models::Rma.new(x) }
2609
- end
2610
-
2611
- def post(organization, rma_form)
2612
- HttpClient::Preconditions.assert_class('organization', organization, String)
2613
- HttpClient::Preconditions.assert_class('rma_form', rma_form, ::Io::Flow::V0::Models::RmaForm)
2614
- r = @client.request("/#{CGI.escape(organization)}/rmas").with_json(rma_form.to_json).post
2615
- ::Io::Flow::V0::Models::Rma.new(r)
2616
- end
2617
-
2618
- def get_by_id(organization, id)
2619
- HttpClient::Preconditions.assert_class('organization', organization, String)
2620
- HttpClient::Preconditions.assert_class('id', id, String)
2621
- r = @client.request("/#{CGI.escape(organization)}/rmas/#{CGI.escape(id)}").get
2622
- ::Io::Flow::V0::Models::Rma.new(r)
2623
- end
2624
-
2625
- def get_versions(organization, incoming={})
2626
- HttpClient::Preconditions.assert_class('organization', organization, String)
2627
- opts = HttpClient::Helper.symbolize_keys(incoming)
2628
- query = {
2629
- :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
2630
- :number => (x = opts.delete(:number); x.nil? ? nil : HttpClient::Preconditions.assert_class('number', x, Array).map { |v| HttpClient::Preconditions.assert_class('number', v, String) }),
2631
- :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
2632
- :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
2633
- :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "journal_timestamp" : x), String)
2634
- }.delete_if { |k, v| v.nil? }
2635
- r = @client.request("/#{CGI.escape(organization)}/rmas/versions").with_query(query).get
2636
- r.map { |x| ::Io::Flow::V0::Models::RmaVersion.new(x) }
2637
- end
2638
-
2639
- end
2640
-
2641
2593
  class ShippingLabels
2642
2594
 
2643
2595
  def initialize(client)
@@ -3804,6 +3756,124 @@ module Io
3804
3756
 
3805
3757
  end
3806
3758
 
3759
+ class Returns
3760
+
3761
+ def initialize(client)
3762
+ @client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
3763
+ end
3764
+
3765
+ def get(organization, incoming={})
3766
+ HttpClient::Preconditions.assert_class('organization', organization, String)
3767
+ opts = HttpClient::Helper.symbolize_keys(incoming)
3768
+ query = {
3769
+ :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
3770
+ :key => (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, Array).map { |v| HttpClient::Preconditions.assert_class('key', v, String) }),
3771
+ :order_number => (x = opts.delete(:order_number); x.nil? ? nil : HttpClient::Preconditions.assert_class('order_number', x, Array).map { |v| HttpClient::Preconditions.assert_class('order_number', v, String) }),
3772
+ :flow_tracking_number => (x = opts.delete(:flow_tracking_number); x.nil? ? nil : HttpClient::Preconditions.assert_class('flow_tracking_number', x, Array).map { |v| HttpClient::Preconditions.assert_class('flow_tracking_number', v, String) }),
3773
+ :carrier_tracking_number => (x = opts.delete(:carrier_tracking_number); x.nil? ? nil : HttpClient::Preconditions.assert_class('carrier_tracking_number', x, Array).map { |v| HttpClient::Preconditions.assert_class('carrier_tracking_number', v, String) }),
3774
+ :service => (x = opts.delete(:service); x.nil? ? nil : HttpClient::Preconditions.assert_class('service', x, Array).map { |v| HttpClient::Preconditions.assert_class('service', v, String) }),
3775
+ :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
3776
+ :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
3777
+ :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String)
3778
+ }.delete_if { |k, v| v.nil? }
3779
+ r = @client.request("/#{CGI.escape(organization)}/returns").with_query(query).get
3780
+ r.map { |x| ::Io::Flow::V0::Models::Return.new(x) }
3781
+ end
3782
+
3783
+ def post(organization, return_form)
3784
+ HttpClient::Preconditions.assert_class('organization', organization, String)
3785
+ HttpClient::Preconditions.assert_class('return_form', return_form, ::Io::Flow::V0::Models::ReturnForm)
3786
+ r = @client.request("/#{CGI.escape(organization)}/returns").with_json(return_form.to_json).post
3787
+ ::Io::Flow::V0::Models::Return.new(r)
3788
+ end
3789
+
3790
+ def get_by_key(organization, key)
3791
+ HttpClient::Preconditions.assert_class('organization', organization, String)
3792
+ HttpClient::Preconditions.assert_class('key', key, String)
3793
+ r = @client.request("/#{CGI.escape(organization)}/returns/#{CGI.escape(key)}").get
3794
+ ::Io::Flow::V0::Models::Return.new(r)
3795
+ end
3796
+
3797
+ def put_by_key(organization, key, return_form)
3798
+ HttpClient::Preconditions.assert_class('organization', organization, String)
3799
+ HttpClient::Preconditions.assert_class('key', key, String)
3800
+ HttpClient::Preconditions.assert_class('return_form', return_form, ::Io::Flow::V0::Models::ReturnForm)
3801
+ r = @client.request("/#{CGI.escape(organization)}/returns/#{CGI.escape(key)}").with_json(return_form.to_json).put
3802
+ ::Io::Flow::V0::Models::Return.new(r)
3803
+ end
3804
+
3805
+ def delete_by_key(organization, key)
3806
+ HttpClient::Preconditions.assert_class('organization', organization, String)
3807
+ HttpClient::Preconditions.assert_class('key', key, String)
3808
+ r = @client.request("/#{CGI.escape(organization)}/returns/#{CGI.escape(key)}").delete
3809
+ nil
3810
+ end
3811
+
3812
+ def get_versions(organization, incoming={})
3813
+ HttpClient::Preconditions.assert_class('organization', organization, String)
3814
+ opts = HttpClient::Helper.symbolize_keys(incoming)
3815
+ query = {
3816
+ :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
3817
+ :key => (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, Array).map { |v| HttpClient::Preconditions.assert_class('key', v, String) }),
3818
+ :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
3819
+ :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
3820
+ :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "journal_timestamp" : x), String)
3821
+ }.delete_if { |k, v| v.nil? }
3822
+ r = @client.request("/#{CGI.escape(organization)}/returns/versions").with_query(query).get
3823
+ r.map { |x| ::Io::Flow::V0::Models::ReturnVersion.new(x) }
3824
+ end
3825
+
3826
+ end
3827
+
3828
+ class ScheduledExports
3829
+
3830
+ def initialize(client)
3831
+ @client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
3832
+ end
3833
+
3834
+ # Search scheduled exports. Always paginated.
3835
+ def get(incoming={})
3836
+ opts = HttpClient::Helper.symbolize_keys(incoming)
3837
+ query = {
3838
+ :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
3839
+ :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
3840
+ :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
3841
+ :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String)
3842
+ }.delete_if { |k, v| v.nil? }
3843
+ r = @client.request("/users/scheduled/exports").with_query(query).get
3844
+ r.map { |x| ::Io::Flow::V0::Models::ScheduledExport.new(x) }
3845
+ end
3846
+
3847
+ # Create a scheduled export.
3848
+ def post(scheduled_export_form)
3849
+ HttpClient::Preconditions.assert_class('scheduled_export_form', scheduled_export_form, ::Io::Flow::V0::Models::ScheduledExportForm)
3850
+ r = @client.request("/users/scheduled/exports").with_json(scheduled_export_form.to_json).post
3851
+ ::Io::Flow::V0::Models::ScheduledExport.new(r)
3852
+ end
3853
+
3854
+ # Get a single excheduled export.
3855
+ def get_by_id(id)
3856
+ HttpClient::Preconditions.assert_class('id', id, String)
3857
+ r = @client.request("/users/scheduled/exports/#{CGI.escape(id)}").get
3858
+ ::Io::Flow::V0::Models::ScheduledExport.new(r)
3859
+ end
3860
+
3861
+ # Update a scheduled export.
3862
+ def put_by_id(id, scheduled_export_form)
3863
+ HttpClient::Preconditions.assert_class('id', id, String)
3864
+ HttpClient::Preconditions.assert_class('scheduled_export_form', scheduled_export_form, ::Io::Flow::V0::Models::ScheduledExportForm)
3865
+ r = @client.request("/users/scheduled/exports/#{CGI.escape(id)}").with_json(scheduled_export_form.to_json).put
3866
+ ::Io::Flow::V0::Models::ScheduledExport.new(r)
3867
+ end
3868
+
3869
+ def delete_by_id(id)
3870
+ HttpClient::Preconditions.assert_class('id', id, String)
3871
+ r = @client.request("/users/scheduled/exports/#{CGI.escape(id)}").delete
3872
+ nil
3873
+ end
3874
+
3875
+ end
3876
+
3807
3877
  class Suggestions
3808
3878
 
3809
3879
  def initialize(client)
@@ -4254,6 +4324,8 @@ module Io
4254
4324
  LOCALIZED_ITEM_UPSERTED = 'localized_item_upserted' unless defined?(LOCALIZED_ITEM_UPSERTED)
4255
4325
  LOCALIZED_ITEM_DELETED = 'localized_item_deleted' unless defined?(LOCALIZED_ITEM_DELETED)
4256
4326
  LOCALIZED_ITEM_SNAPSHOT = 'localized_item_snapshot' unless defined?(LOCALIZED_ITEM_SNAPSHOT)
4327
+ MEMBERSHIP_UPSERTED = 'membership_upserted' unless defined?(MEMBERSHIP_UPSERTED)
4328
+ MEMBERSHIP_DELETED = 'membership_deleted' unless defined?(MEMBERSHIP_DELETED)
4257
4329
  ORGANIZATION_UPSERTED = 'organization_upserted' unless defined?(ORGANIZATION_UPSERTED)
4258
4330
  ORGANIZATION_DELETED = 'organization_deleted' unless defined?(ORGANIZATION_DELETED)
4259
4331
  AUTHORIZATION_UPSERTED = 'authorization_upserted' unless defined?(AUTHORIZATION_UPSERTED)
@@ -4276,7 +4348,7 @@ module Io
4276
4348
  end
4277
4349
 
4278
4350
  def subtype_to_hash
4279
- raise 'Cannot serialize an instance of event directly - must use one of the specific types: catalog_upserted, catalog_deleted, subcatalog_upserted, subcatalog_deleted, catalog_item_upserted, catalog_item_deleted, subcatalog_item_upserted, subcatalog_item_deleted, rate_deleted, rate_upserted, experience_deleted, experience_upserted, item_margin_deleted, item_margin_upserted, label_format_deleted, label_format_upserted, order_deleted, order_upserted, order_identifier_deleted, order_identifier_upserted, pricing_deleted, pricing_upserted, hs6_code_upserted, hs6_code_deleted, hs10_code_upserted, hs10_code_deleted, item_origin_upserted, item_origin_deleted, harmonized_item_upserted, harmonized_item_deleted, snapshot_upserted, snapshot_deleted, label_upserted, notification_upserted, notification_deleted, rma_upserted, rma_deleted, localized_item_upserted, localized_item_deleted, localized_item_snapshot, organization_upserted, organization_deleted, authorization_upserted, authorization_deleted, capture_upserted, card_upserted, card_deleted, refund_upserted, targeting_item_upserted, targeting_item_deleted, tracking_label_event_upserted'
4351
+ raise 'Cannot serialize an instance of event directly - must use one of the specific types: catalog_upserted, catalog_deleted, subcatalog_upserted, subcatalog_deleted, catalog_item_upserted, catalog_item_deleted, subcatalog_item_upserted, subcatalog_item_deleted, rate_deleted, rate_upserted, experience_deleted, experience_upserted, item_margin_deleted, item_margin_upserted, label_format_deleted, label_format_upserted, order_deleted, order_upserted, order_identifier_deleted, order_identifier_upserted, pricing_deleted, pricing_upserted, hs6_code_upserted, hs6_code_deleted, hs10_code_upserted, hs10_code_deleted, item_origin_upserted, item_origin_deleted, harmonized_item_upserted, harmonized_item_deleted, snapshot_upserted, snapshot_deleted, label_upserted, notification_upserted, notification_deleted, rma_upserted, rma_deleted, localized_item_upserted, localized_item_deleted, localized_item_snapshot, membership_upserted, membership_deleted, organization_upserted, organization_deleted, authorization_upserted, authorization_deleted, capture_upserted, card_upserted, card_deleted, refund_upserted, targeting_item_upserted, targeting_item_deleted, tracking_label_event_upserted'
4280
4352
  end
4281
4353
 
4282
4354
  def to_hash
@@ -4330,6 +4402,8 @@ module Io
4330
4402
  when Types::LOCALIZED_ITEM_UPSERTED; LocalizedItemUpserted.new(hash)
4331
4403
  when Types::LOCALIZED_ITEM_DELETED; LocalizedItemDeleted.new(hash)
4332
4404
  when Types::LOCALIZED_ITEM_SNAPSHOT; LocalizedItemSnapshot.new(hash)
4405
+ when Types::MEMBERSHIP_UPSERTED; MembershipUpserted.new(hash)
4406
+ when Types::MEMBERSHIP_DELETED; MembershipDeleted.new(hash)
4333
4407
  when Types::ORGANIZATION_UPSERTED; OrganizationUpserted.new(hash)
4334
4408
  when Types::ORGANIZATION_DELETED; OrganizationDeleted.new(hash)
4335
4409
  when Types::AUTHORIZATION_UPSERTED; AuthorizationUpserted.new(hash)
@@ -4690,12 +4764,13 @@ module Io
4690
4764
  class ExportType
4691
4765
 
4692
4766
  module Types
4767
+ ACCOUNT_TRANSACTIONS_EXPORT_TYPE = 'account_transactions_export_type' unless defined?(ACCOUNT_TRANSACTIONS_EXPORT_TYPE)
4768
+ ACCOUNT_ORDERS_EXPORT_TYPE = 'account_orders_export_type' unless defined?(ACCOUNT_ORDERS_EXPORT_TYPE)
4693
4769
  CATALOG_ITEM_EXPORT_TYPE = 'catalog_item_export_type' unless defined?(CATALOG_ITEM_EXPORT_TYPE)
4694
4770
  HARMONIZATION_OVERVIEW_EXPORT_TYPE = 'harmonization_overview_export_type' unless defined?(HARMONIZATION_OVERVIEW_EXPORT_TYPE)
4695
4771
  HARMONIZATION_HS6_EXPORT_TYPE = 'harmonization_hs6_export_type' unless defined?(HARMONIZATION_HS6_EXPORT_TYPE)
4696
4772
  HARMONIZATION_HS10_EXPORT_TYPE = 'harmonization_hs10_export_type' unless defined?(HARMONIZATION_HS10_EXPORT_TYPE)
4697
- ACCOUNT_TRANSACTIONS_EXPORT_TYPE = 'account_transactions_export_type' unless defined?(ACCOUNT_TRANSACTIONS_EXPORT_TYPE)
4698
- ACCOUNT_ORDERS_EXPORT_TYPE = 'account_orders_export_type' unless defined?(ACCOUNT_ORDERS_EXPORT_TYPE)
4773
+ ORDER_EXPORT_TYPE = 'order_export_type' unless defined?(ORDER_EXPORT_TYPE)
4699
4774
  SOLIDUS_PRODUCT_EXPORT_TYPE = 'solidus_product_export_type' unless defined?(SOLIDUS_PRODUCT_EXPORT_TYPE)
4700
4775
  SOLIDUS_VARIANT_EXPORT_TYPE = 'solidus_variant_export_type' unless defined?(SOLIDUS_VARIANT_EXPORT_TYPE)
4701
4776
  end
@@ -4709,7 +4784,7 @@ module Io
4709
4784
  end
4710
4785
 
4711
4786
  def subtype_to_hash
4712
- raise 'Cannot serialize an instance of export_type directly - must use one of the specific types: catalog_item_export_type, harmonization_overview_export_type, harmonization_hs6_export_type, harmonization_hs10_export_type, account_transactions_export_type, account_orders_export_type, solidus_product_export_type, solidus_variant_export_type'
4787
+ raise 'Cannot serialize an instance of export_type directly - must use one of the specific types: account_transactions_export_type, account_orders_export_type, catalog_item_export_type, harmonization_overview_export_type, harmonization_hs6_export_type, harmonization_hs10_export_type, order_export_type, solidus_product_export_type, solidus_variant_export_type'
4713
4788
  end
4714
4789
 
4715
4790
  def to_hash
@@ -4723,12 +4798,13 @@ module Io
4723
4798
  raise "Union type[export_type] requires a field named 'discriminator'"
4724
4799
  end
4725
4800
  case discriminator
4801
+ when Types::ACCOUNT_TRANSACTIONS_EXPORT_TYPE; AccountTransactionsExportType.new(hash)
4802
+ when Types::ACCOUNT_ORDERS_EXPORT_TYPE; AccountOrdersExportType.new(hash)
4726
4803
  when Types::CATALOG_ITEM_EXPORT_TYPE; CatalogItemExportType.new(hash)
4727
4804
  when Types::HARMONIZATION_OVERVIEW_EXPORT_TYPE; HarmonizationOverviewExportType.new(hash)
4728
4805
  when Types::HARMONIZATION_HS6_EXPORT_TYPE; HarmonizationHs6ExportType.new(hash)
4729
4806
  when Types::HARMONIZATION_HS10_EXPORT_TYPE; HarmonizationHs10ExportType.new(hash)
4730
- when Types::ACCOUNT_TRANSACTIONS_EXPORT_TYPE; AccountTransactionsExportType.new(hash)
4731
- when Types::ACCOUNT_ORDERS_EXPORT_TYPE; AccountOrdersExportType.new(hash)
4807
+ when Types::ORDER_EXPORT_TYPE; OrderExportType.new(hash)
4732
4808
  when Types::SOLIDUS_PRODUCT_EXPORT_TYPE; SolidusProductExportType.new(hash)
4733
4809
  when Types::SOLIDUS_VARIANT_EXPORT_TYPE; SolidusVariantExportType.new(hash)
4734
4810
  else ExportTypeUndefinedType.new(:discriminator => discriminator)
@@ -5840,6 +5916,68 @@ module Io
5840
5916
 
5841
5917
  end
5842
5918
 
5919
+ class DayOfWeek
5920
+
5921
+ attr_reader :value
5922
+
5923
+ def initialize(value)
5924
+ @value = HttpClient::Preconditions.assert_class('value', value, String)
5925
+ end
5926
+
5927
+ # Returns the instance of DayOfWeek for this value, creating a new instance for an unknown value
5928
+ def DayOfWeek.apply(value)
5929
+ if value.instance_of?(DayOfWeek)
5930
+ value
5931
+ else
5932
+ HttpClient::Preconditions.assert_class_or_nil('value', value, String)
5933
+ value.nil? ? nil : (from_string(value) || DayOfWeek.new(value))
5934
+ end
5935
+ end
5936
+
5937
+ # Returns the instance of DayOfWeek for this value, or nil if not found
5938
+ def DayOfWeek.from_string(value)
5939
+ HttpClient::Preconditions.assert_class('value', value, String)
5940
+ DayOfWeek.ALL.find { |v| v.value == value }
5941
+ end
5942
+
5943
+ def DayOfWeek.ALL
5944
+ @@all ||= [DayOfWeek.sunday, DayOfWeek.monday, DayOfWeek.tuesday, DayOfWeek.wednesday, DayOfWeek.thursday, DayOfWeek.friday, DayOfWeek.saturday]
5945
+ end
5946
+
5947
+ def DayOfWeek.sunday
5948
+ @@_sunday ||= DayOfWeek.new('sunday')
5949
+ end
5950
+
5951
+ def DayOfWeek.monday
5952
+ @@_monday ||= DayOfWeek.new('monday')
5953
+ end
5954
+
5955
+ def DayOfWeek.tuesday
5956
+ @@_tuesday ||= DayOfWeek.new('tuesday')
5957
+ end
5958
+
5959
+ def DayOfWeek.wednesday
5960
+ @@_wednesday ||= DayOfWeek.new('wednesday')
5961
+ end
5962
+
5963
+ def DayOfWeek.thursday
5964
+ @@_thursday ||= DayOfWeek.new('thursday')
5965
+ end
5966
+
5967
+ def DayOfWeek.friday
5968
+ @@_friday ||= DayOfWeek.new('friday')
5969
+ end
5970
+
5971
+ def DayOfWeek.saturday
5972
+ @@_saturday ||= DayOfWeek.new('saturday')
5973
+ end
5974
+
5975
+ def to_hash
5976
+ value
5977
+ end
5978
+
5979
+ end
5980
+
5843
5981
  class DeliveredDuty
5844
5982
 
5845
5983
  attr_reader :value
@@ -5891,6 +6029,50 @@ module Io
5891
6029
 
5892
6030
  end
5893
6031
 
6032
+ class Direction
6033
+
6034
+ attr_reader :value
6035
+
6036
+ def initialize(value)
6037
+ @value = HttpClient::Preconditions.assert_class('value', value, String)
6038
+ end
6039
+
6040
+ # Returns the instance of Direction for this value, creating a new instance for an unknown value
6041
+ def Direction.apply(value)
6042
+ if value.instance_of?(Direction)
6043
+ value
6044
+ else
6045
+ HttpClient::Preconditions.assert_class_or_nil('value', value, String)
6046
+ value.nil? ? nil : (from_string(value) || Direction.new(value))
6047
+ end
6048
+ end
6049
+
6050
+ # Returns the instance of Direction for this value, or nil if not found
6051
+ def Direction.from_string(value)
6052
+ HttpClient::Preconditions.assert_class('value', value, String)
6053
+ Direction.ALL.find { |v| v.value == value }
6054
+ end
6055
+
6056
+ def Direction.ALL
6057
+ @@all ||= [Direction.outbound, Direction.return]
6058
+ end
6059
+
6060
+ # Outbound shipment to typically fulfill a customer order
6061
+ def Direction.outbound
6062
+ @@_outbound ||= Direction.new('outbound')
6063
+ end
6064
+
6065
+ # Inbound or return shipment
6066
+ def Direction.return
6067
+ @@_return ||= Direction.new('return')
6068
+ end
6069
+
6070
+ def to_hash
6071
+ value
6072
+ end
6073
+
6074
+ end
6075
+
5894
6076
  class Environment
5895
6077
 
5896
6078
  attr_reader :value
@@ -5962,7 +6144,7 @@ module Io
5962
6144
  end
5963
6145
 
5964
6146
  def EventType.ALL
5965
- @@all ||= [EventType.catalog_upserted, EventType.catalog_deleted, EventType.subcatalog_upserted, EventType.subcatalog_deleted, EventType.catalog_item_upserted, EventType.catalog_item_deleted, EventType.subcatalog_item_upserted, EventType.subcatalog_item_deleted, EventType.rate_deleted, EventType.rate_upserted, EventType.experience_deleted, EventType.experience_upserted, EventType.item_margin_deleted, EventType.item_margin_upserted, EventType.label_format_deleted, EventType.label_format_upserted, EventType.order_deleted, EventType.order_upserted, EventType.order_identifier_deleted, EventType.order_identifier_upserted, EventType.pricing_deleted, EventType.pricing_upserted, 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_item_upserted, EventType.harmonized_item_deleted, EventType.snapshot_upserted, EventType.snapshot_deleted, EventType.label_upserted, EventType.notification_upserted, EventType.notification_deleted, EventType.rma_upserted, EventType.rma_deleted, EventType.localized_item_upserted, EventType.localized_item_deleted, EventType.localized_item_snapshot, EventType.organization_upserted, EventType.organization_deleted, EventType.authorization_upserted, EventType.authorization_deleted, EventType.capture_upserted, EventType.card_upserted, EventType.card_deleted, EventType.refund_upserted, EventType.targeting_item_upserted, EventType.targeting_item_deleted, EventType.tracking_label_event_upserted]
6147
+ @@all ||= [EventType.catalog_upserted, EventType.catalog_deleted, EventType.subcatalog_upserted, EventType.subcatalog_deleted, EventType.catalog_item_upserted, EventType.catalog_item_deleted, EventType.subcatalog_item_upserted, EventType.subcatalog_item_deleted, EventType.rate_deleted, EventType.rate_upserted, EventType.experience_deleted, EventType.experience_upserted, EventType.item_margin_deleted, EventType.item_margin_upserted, EventType.label_format_deleted, EventType.label_format_upserted, EventType.order_deleted, EventType.order_upserted, EventType.order_identifier_deleted, EventType.order_identifier_upserted, EventType.pricing_deleted, EventType.pricing_upserted, 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_item_upserted, EventType.harmonized_item_deleted, EventType.snapshot_upserted, EventType.snapshot_deleted, EventType.label_upserted, EventType.notification_upserted, EventType.notification_deleted, EventType.rma_upserted, EventType.rma_deleted, EventType.localized_item_upserted, EventType.localized_item_deleted, EventType.localized_item_snapshot, EventType.membership_upserted, EventType.membership_deleted, EventType.organization_upserted, EventType.organization_deleted, EventType.authorization_upserted, EventType.authorization_deleted, EventType.capture_upserted, EventType.card_upserted, EventType.card_deleted, EventType.refund_upserted, EventType.targeting_item_upserted, EventType.targeting_item_deleted, EventType.tracking_label_event_upserted]
5966
6148
  end
5967
6149
 
5968
6150
  def EventType.catalog_upserted
@@ -6125,6 +6307,14 @@ module Io
6125
6307
  @@_localized_item_snapshot ||= EventType.new('localized_item_snapshot')
6126
6308
  end
6127
6309
 
6310
+ def EventType.membership_upserted
6311
+ @@_membership_upserted ||= EventType.new('membership_upserted')
6312
+ end
6313
+
6314
+ def EventType.membership_deleted
6315
+ @@_membership_deleted ||= EventType.new('membership_deleted')
6316
+ end
6317
+
6128
6318
  def EventType.organization_upserted
6129
6319
  @@_organization_upserted ||= EventType.new('organization_upserted')
6130
6320
  end
@@ -6957,6 +7147,48 @@ module Io
6957
7147
 
6958
7148
  end
6959
7149
 
7150
+ class OrderStatus
7151
+
7152
+ attr_reader :value
7153
+
7154
+ def initialize(value)
7155
+ @value = HttpClient::Preconditions.assert_class('value', value, String)
7156
+ end
7157
+
7158
+ # Returns the instance of OrderStatus for this value, creating a new instance for an unknown value
7159
+ def OrderStatus.apply(value)
7160
+ if value.instance_of?(OrderStatus)
7161
+ value
7162
+ else
7163
+ HttpClient::Preconditions.assert_class_or_nil('value', value, String)
7164
+ value.nil? ? nil : (from_string(value) || OrderStatus.new(value))
7165
+ end
7166
+ end
7167
+
7168
+ # Returns the instance of OrderStatus for this value, or nil if not found
7169
+ def OrderStatus.from_string(value)
7170
+ HttpClient::Preconditions.assert_class('value', value, String)
7171
+ OrderStatus.ALL.find { |v| v.value == value }
7172
+ end
7173
+
7174
+ def OrderStatus.ALL
7175
+ @@all ||= [OrderStatus.open, OrderStatus.submitted]
7176
+ end
7177
+
7178
+ def OrderStatus.open
7179
+ @@_open ||= OrderStatus.new('open')
7180
+ end
7181
+
7182
+ def OrderStatus.submitted
7183
+ @@_submitted ||= OrderStatus.new('submitted')
7184
+ end
7185
+
7186
+ def to_hash
7187
+ value
7188
+ end
7189
+
7190
+ end
7191
+
6960
7192
  class PriceDetailComponentKey
6961
7193
 
6962
7194
  attr_reader :value
@@ -7317,7 +7549,7 @@ module Io
7317
7549
 
7318
7550
  end
7319
7551
 
7320
- class Role
7552
+ class ReturnStatus
7321
7553
 
7322
7554
  attr_reader :value
7323
7555
 
@@ -7325,32 +7557,32 @@ module Io
7325
7557
  @value = HttpClient::Preconditions.assert_class('value', value, String)
7326
7558
  end
7327
7559
 
7328
- # Returns the instance of Role for this value, creating a new instance for an unknown value
7329
- def Role.apply(value)
7330
- if value.instance_of?(Role)
7560
+ # Returns the instance of ReturnStatus for this value, creating a new instance for an unknown value
7561
+ def ReturnStatus.apply(value)
7562
+ if value.instance_of?(ReturnStatus)
7331
7563
  value
7332
7564
  else
7333
7565
  HttpClient::Preconditions.assert_class_or_nil('value', value, String)
7334
- value.nil? ? nil : (from_string(value) || Role.new(value))
7566
+ value.nil? ? nil : (from_string(value) || ReturnStatus.new(value))
7335
7567
  end
7336
7568
  end
7337
7569
 
7338
- # Returns the instance of Role for this value, or nil if not found
7339
- def Role.from_string(value)
7570
+ # Returns the instance of ReturnStatus for this value, or nil if not found
7571
+ def ReturnStatus.from_string(value)
7340
7572
  HttpClient::Preconditions.assert_class('value', value, String)
7341
- Role.ALL.find { |v| v.value == value }
7573
+ ReturnStatus.ALL.find { |v| v.value == value }
7342
7574
  end
7343
7575
 
7344
- def Role.ALL
7345
- @@all ||= [Role.admin, Role.member]
7576
+ def ReturnStatus.ALL
7577
+ @@all ||= [ReturnStatus.open, ReturnStatus.refunded]
7346
7578
  end
7347
7579
 
7348
- def Role.admin
7349
- @@_admin ||= Role.new('admin')
7580
+ def ReturnStatus.open
7581
+ @@_open ||= ReturnStatus.new('open')
7350
7582
  end
7351
7583
 
7352
- def Role.member
7353
- @@_member ||= Role.new('member')
7584
+ def ReturnStatus.refunded
7585
+ @@_refunded ||= ReturnStatus.new('refunded')
7354
7586
  end
7355
7587
 
7356
7588
  def to_hash
@@ -7359,7 +7591,49 @@ module Io
7359
7591
 
7360
7592
  end
7361
7593
 
7362
- class RoundingMethod
7594
+ class Role
7595
+
7596
+ attr_reader :value
7597
+
7598
+ def initialize(value)
7599
+ @value = HttpClient::Preconditions.assert_class('value', value, String)
7600
+ end
7601
+
7602
+ # Returns the instance of Role for this value, creating a new instance for an unknown value
7603
+ def Role.apply(value)
7604
+ if value.instance_of?(Role)
7605
+ value
7606
+ else
7607
+ HttpClient::Preconditions.assert_class_or_nil('value', value, String)
7608
+ value.nil? ? nil : (from_string(value) || Role.new(value))
7609
+ end
7610
+ end
7611
+
7612
+ # Returns the instance of Role for this value, or nil if not found
7613
+ def Role.from_string(value)
7614
+ HttpClient::Preconditions.assert_class('value', value, String)
7615
+ Role.ALL.find { |v| v.value == value }
7616
+ end
7617
+
7618
+ def Role.ALL
7619
+ @@all ||= [Role.admin, Role.member]
7620
+ end
7621
+
7622
+ def Role.admin
7623
+ @@_admin ||= Role.new('admin')
7624
+ end
7625
+
7626
+ def Role.member
7627
+ @@_member ||= Role.new('member')
7628
+ end
7629
+
7630
+ def to_hash
7631
+ value
7632
+ end
7633
+
7634
+ end
7635
+
7636
+ class RoundingMethod
7363
7637
 
7364
7638
  attr_reader :value
7365
7639
 
@@ -8801,7 +9075,7 @@ module Io
8801
9075
  # capture up to the amount of the authorization.
8802
9076
  class Authorization
8803
9077
 
8804
- attr_reader :id, :key, :card, :amount, :currency, :customer, :attributes, :destination, :ip, :result, :created_at
9078
+ attr_reader :id, :key, :card, :amount, :currency, :customer, :attributes, :destination, :order, :ip, :result, :created_at
8805
9079
 
8806
9080
  def initialize(incoming={})
8807
9081
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -8814,6 +9088,7 @@ module Io
8814
9088
  @customer = (x = opts.delete(:customer); x.is_a?(::Io::Flow::V0::Models::Customer) ? x : ::Io::Flow::V0::Models::Customer.new(x))
8815
9089
  @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 }
8816
9090
  @destination = (x = opts.delete(:destination); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Address) ? x : ::Io::Flow::V0::Models::Address.new(x)))
9091
+ @order = (x = opts.delete(:order); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::AuthorizationOrderReference) ? x : ::Io::Flow::V0::Models::AuthorizationOrderReference.new(x)))
8817
9092
  @ip = (x = opts.delete(:ip); x.nil? ? nil : HttpClient::Preconditions.assert_class('ip', x, String))
8818
9093
  @result = (x = opts.delete(:result); x.is_a?(::Io::Flow::V0::Models::AuthorizationResult) ? x : ::Io::Flow::V0::Models::AuthorizationResult.new(x))
8819
9094
  @created_at = HttpClient::Preconditions.assert_class('created_at', HttpClient::Helper.to_date_time_iso8601(opts.delete(:created_at)), DateTime)
@@ -8837,6 +9112,7 @@ module Io
8837
9112
  :customer => customer.to_hash,
8838
9113
  :attributes => attributes,
8839
9114
  :destination => destination.nil? ? nil : destination.to_hash,
9115
+ :order => order.nil? ? nil : order.to_hash,
8840
9116
  :ip => ip,
8841
9117
  :result => result.to_hash,
8842
9118
  :created_at => created_at
@@ -8906,6 +9182,32 @@ module Io
8906
9182
 
8907
9183
  end
8908
9184
 
9185
+ class AuthorizationOrderReference
9186
+
9187
+ attr_reader :number
9188
+
9189
+ def initialize(incoming={})
9190
+ opts = HttpClient::Helper.symbolize_keys(incoming)
9191
+ HttpClient::Preconditions.require_keys(opts, [:number], 'AuthorizationOrderReference')
9192
+ @number = HttpClient::Preconditions.assert_class('number', opts.delete(:number), String)
9193
+ end
9194
+
9195
+ def to_json
9196
+ JSON.dump(to_hash)
9197
+ end
9198
+
9199
+ def copy(incoming={})
9200
+ AuthorizationOrderReference.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
9201
+ end
9202
+
9203
+ def to_hash
9204
+ {
9205
+ :number => number
9206
+ }
9207
+ end
9208
+
9209
+ end
9210
+
8909
9211
  class AuthorizationReference
8910
9212
 
8911
9213
  attr_reader :id
@@ -9053,16 +9355,18 @@ module Io
9053
9355
 
9054
9356
  end
9055
9357
 
9056
- # Representation of a service level available at a center, including misc
9057
- # attributes. Only ID for now, more attributes will be added in the future.
9358
+ # Representation of a service level available at a center and the special pickup
9359
+ # times during the week. If pickup schedules are not provided, assumption is
9360
+ # once a day during the weekdays.
9058
9361
  class AvailableService
9059
9362
 
9060
- attr_reader :service
9363
+ attr_reader :service, :scheduled_pickups
9061
9364
 
9062
9365
  def initialize(incoming={})
9063
9366
  opts = HttpClient::Helper.symbolize_keys(incoming)
9064
9367
  HttpClient::Preconditions.require_keys(opts, [:service], 'AvailableService')
9065
9368
  @service = HttpClient::Preconditions.assert_class('service', opts.delete(:service), String)
9369
+ @scheduled_pickups = (x = opts.delete(:scheduled_pickups); x.nil? ? nil : HttpClient::Preconditions.assert_class('scheduled_pickups', x, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ScheduledPickup) ? x : ::Io::Flow::V0::Models::ScheduledPickup.new(x)) })
9066
9370
  end
9067
9371
 
9068
9372
  def to_json
@@ -9075,7 +9379,8 @@ module Io
9075
9379
 
9076
9380
  def to_hash
9077
9381
  {
9078
- :service => service
9382
+ :service => service,
9383
+ :scheduled_pickups => scheduled_pickups.nil? ? nil : scheduled_pickups.map { |o| o.to_hash }
9079
9384
  }
9080
9385
  end
9081
9386
 
@@ -9745,39 +10050,13 @@ module Io
9745
10050
 
9746
10051
  end
9747
10052
 
9748
- class CatalogItemDocumentImage
9749
-
9750
- attr_reader :url
9751
-
9752
- def initialize(incoming={})
9753
- opts = HttpClient::Helper.symbolize_keys(incoming)
9754
- HttpClient::Preconditions.require_keys(opts, [:url], 'CatalogItemDocumentImage')
9755
- @url = HttpClient::Preconditions.assert_class('url', opts.delete(:url), String)
9756
- end
9757
-
9758
- def to_json
9759
- JSON.dump(to_hash)
9760
- end
9761
-
9762
- def copy(incoming={})
9763
- CatalogItemDocumentImage.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
9764
- end
9765
-
9766
- def to_hash
9767
- {
9768
- :url => url
9769
- }
9770
- end
9771
-
9772
- end
9773
-
9774
10053
  class CatalogItemDocumentImages
9775
10054
 
9776
10055
  attr_reader :thumbnail
9777
10056
 
9778
10057
  def initialize(incoming={})
9779
10058
  opts = HttpClient::Helper.symbolize_keys(incoming)
9780
- @thumbnail = (x = opts.delete(:thumbnail); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::CatalogItemDocumentImage) ? x : ::Io::Flow::V0::Models::CatalogItemDocumentImage.new(x)))
10059
+ @thumbnail = (x = opts.delete(:thumbnail); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Image) ? x : ::Io::Flow::V0::Models::Image.new(x)))
9781
10060
  end
9782
10061
 
9783
10062
  def to_json
@@ -11444,14 +11723,15 @@ module Io
11444
11723
  # a CSV file)
11445
11724
  class Export
11446
11725
 
11447
- attr_reader :id, :type, :status, :created_at, :started_at, :completed_at, :url, :deliveries
11726
+ attr_reader :id, :type, :status, :organization_q, :created_at, :started_at, :completed_at, :url, :deliveries
11448
11727
 
11449
11728
  def initialize(incoming={})
11450
11729
  opts = HttpClient::Helper.symbolize_keys(incoming)
11451
- HttpClient::Preconditions.require_keys(opts, [:id, :type, :status, :created_at, :deliveries], 'Export')
11730
+ HttpClient::Preconditions.require_keys(opts, [:id, :type, :status, :organization_q, :created_at, :deliveries], 'Export')
11452
11731
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
11453
11732
  @type = (x = opts.delete(:type); x.is_a?(::Io::Flow::V0::Models::ExportType) ? x : ::Io::Flow::V0::Models::ExportType.from_json(x))
11454
11733
  @status = (x = opts.delete(:status); x.is_a?(::Io::Flow::V0::Models::ExportStatus) ? x : ::Io::Flow::V0::Models::ExportStatus.apply(x))
11734
+ @organization_q = HttpClient::Preconditions.assert_class('organization_q', opts.delete(:organization_q), String)
11455
11735
  @created_at = HttpClient::Preconditions.assert_class('created_at', HttpClient::Helper.to_date_time_iso8601(opts.delete(:created_at)), DateTime)
11456
11736
  @started_at = (x = opts.delete(:started_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('started_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
11457
11737
  @completed_at = (x = opts.delete(:completed_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('completed_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
@@ -11472,6 +11752,7 @@ module Io
11472
11752
  :id => id,
11473
11753
  :type => type.to_hash,
11474
11754
  :status => status.value,
11755
+ :organization_q => organization_q,
11475
11756
  :created_at => created_at,
11476
11757
  :started_at => started_at,
11477
11758
  :completed_at => completed_at,
@@ -11515,13 +11796,14 @@ module Io
11515
11796
  # export (e.g. the filters to apply to select the desired data).
11516
11797
  class ExportForm
11517
11798
 
11518
- attr_reader :type, :emails
11799
+ attr_reader :type, :emails, :organization_q
11519
11800
 
11520
11801
  def initialize(incoming={})
11521
11802
  opts = HttpClient::Helper.symbolize_keys(incoming)
11522
11803
  HttpClient::Preconditions.require_keys(opts, [:type], 'ExportForm')
11523
11804
  @type = (x = opts.delete(:type); x.is_a?(::Io::Flow::V0::Models::ExportType) ? x : ::Io::Flow::V0::Models::ExportType.from_json(x))
11524
11805
  @emails = (x = opts.delete(:emails); x.nil? ? nil : HttpClient::Preconditions.assert_class('emails', x, Array).map { |v| HttpClient::Preconditions.assert_class('emails', v, String) })
11806
+ @organization_q = (x = opts.delete(:organization_q); x.nil? ? nil : HttpClient::Preconditions.assert_class('organization_q', x, String))
11525
11807
  end
11526
11808
 
11527
11809
  def to_json
@@ -11535,7 +11817,8 @@ module Io
11535
11817
  def to_hash
11536
11818
  {
11537
11819
  :type => type.to_hash,
11538
- :emails => emails.nil? ? nil : emails
11820
+ :emails => emails.nil? ? nil : emails,
11821
+ :organization_q => organization_q
11539
11822
  }
11540
11823
  end
11541
11824
 
@@ -11573,6 +11856,32 @@ module Io
11573
11856
 
11574
11857
  end
11575
11858
 
11859
+ class Ference
11860
+
11861
+ attr_reader :id
11862
+
11863
+ def initialize(incoming={})
11864
+ opts = HttpClient::Helper.symbolize_keys(incoming)
11865
+ HttpClient::Preconditions.require_keys(opts, [:id], 'Ference')
11866
+ @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
11867
+ end
11868
+
11869
+ def to_json
11870
+ JSON.dump(to_hash)
11871
+ end
11872
+
11873
+ def copy(incoming={})
11874
+ Ference.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
11875
+ end
11876
+
11877
+ def to_hash
11878
+ {
11879
+ :id => id
11880
+ }
11881
+ end
11882
+
11883
+ end
11884
+
11576
11885
  # Rule outcome where shipping surfaced in quote is pre-defined flat rate
11577
11886
  class FlatRate < TierRuleOutcome
11578
11887
 
@@ -14896,6 +15205,37 @@ module Io
14896
15205
 
14897
15206
  end
14898
15207
 
15208
+ class MembershipDeleted < Event
15209
+
15210
+ attr_reader :event_id, :timestamp, :id
15211
+
15212
+ def initialize(incoming={})
15213
+ super(:discriminator => Event::Types::MEMBERSHIP_DELETED)
15214
+ opts = HttpClient::Helper.symbolize_keys(incoming)
15215
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :id], 'MembershipDeleted')
15216
+ @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
15217
+ @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
15218
+ @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
15219
+ end
15220
+
15221
+ def to_json
15222
+ JSON.dump(to_hash)
15223
+ end
15224
+
15225
+ def copy(incoming={})
15226
+ MembershipDeleted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
15227
+ end
15228
+
15229
+ def subtype_to_hash
15230
+ {
15231
+ :event_id => event_id,
15232
+ :timestamp => timestamp,
15233
+ :id => id
15234
+ }
15235
+ end
15236
+
15237
+ end
15238
+
14899
15239
  # Top level resource to create a membership.
14900
15240
  class MembershipForm
14901
15241
 
@@ -14953,6 +15293,43 @@ module Io
14953
15293
 
14954
15294
  end
14955
15295
 
15296
+ class MembershipUpserted < Event
15297
+
15298
+ attr_reader :event_id, :timestamp, :id, :organization, :user_id, :role
15299
+
15300
+ def initialize(incoming={})
15301
+ super(:discriminator => Event::Types::MEMBERSHIP_UPSERTED)
15302
+ opts = HttpClient::Helper.symbolize_keys(incoming)
15303
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :id, :organization, :user_id, :role], 'MembershipUpserted')
15304
+ @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
15305
+ @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
15306
+ @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
15307
+ @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
15308
+ @user_id = HttpClient::Preconditions.assert_class('user_id', opts.delete(:user_id), String)
15309
+ @role = HttpClient::Preconditions.assert_class('role', opts.delete(:role), String)
15310
+ end
15311
+
15312
+ def to_json
15313
+ JSON.dump(to_hash)
15314
+ end
15315
+
15316
+ def copy(incoming={})
15317
+ MembershipUpserted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
15318
+ end
15319
+
15320
+ def subtype_to_hash
15321
+ {
15322
+ :event_id => event_id,
15323
+ :timestamp => timestamp,
15324
+ :id => id,
15325
+ :organization => organization,
15326
+ :user_id => user_id,
15327
+ :role => role
15328
+ }
15329
+ end
15330
+
15331
+ end
15332
+
14956
15333
  class MembershipVersion
14957
15334
 
14958
15335
  attr_reader :id, :timestamp, :type, :membership
@@ -15505,6 +15882,45 @@ module Io
15505
15882
 
15506
15883
  end
15507
15884
 
15885
+ # Exports orders
15886
+ class OrderExportType < ExportType
15887
+
15888
+ attr_reader :numbers, :min_hours_since_submitted_at, :submitted_on_or_before, :submitted_on_or_after, :status, :has_tracking_label, :sort
15889
+
15890
+ def initialize(incoming={})
15891
+ super(:discriminator => ExportType::Types::ORDER_EXPORT_TYPE)
15892
+ opts = HttpClient::Helper.symbolize_keys(incoming)
15893
+ @numbers = (x = opts.delete(:numbers); x.nil? ? nil : HttpClient::Preconditions.assert_class('numbers', x, Array).map { |v| HttpClient::Preconditions.assert_class('numbers', v, String) })
15894
+ @min_hours_since_submitted_at = (x = opts.delete(:min_hours_since_submitted_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('min_hours_since_submitted_at', x, Integer))
15895
+ @submitted_on_or_before = (x = opts.delete(:submitted_on_or_before); x.nil? ? nil : HttpClient::Preconditions.assert_class('submitted_on_or_before', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
15896
+ @submitted_on_or_after = (x = opts.delete(:submitted_on_or_after); x.nil? ? nil : HttpClient::Preconditions.assert_class('submitted_on_or_after', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
15897
+ @status = (x = opts.delete(:status); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::OrderStatus) ? x : ::Io::Flow::V0::Models::OrderStatus.apply(x)))
15898
+ @has_tracking_label = (x = opts.delete(:has_tracking_label); x.nil? ? nil : HttpClient::Preconditions.assert_boolean('has_tracking_label', x))
15899
+ @sort = (x = opts.delete(:sort); x.nil? ? nil : HttpClient::Preconditions.assert_class('sort', x, String))
15900
+ end
15901
+
15902
+ def to_json
15903
+ JSON.dump(to_hash)
15904
+ end
15905
+
15906
+ def copy(incoming={})
15907
+ OrderExportType.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
15908
+ end
15909
+
15910
+ def subtype_to_hash
15911
+ {
15912
+ :numbers => numbers.nil? ? nil : numbers,
15913
+ :min_hours_since_submitted_at => min_hours_since_submitted_at,
15914
+ :submitted_on_or_before => submitted_on_or_before,
15915
+ :submitted_on_or_after => submitted_on_or_after,
15916
+ :status => status.nil? ? nil : status.value,
15917
+ :has_tracking_label => has_tracking_label,
15918
+ :sort => sort
15919
+ }
15920
+ end
15921
+
15922
+ end
15923
+
15508
15924
  # The order form is used to create an open order, providing the details on
15509
15925
  # pricing and delivery options for destination and items/quantities specified
15510
15926
  class OrderForm
@@ -17609,7 +18025,7 @@ module Io
17609
18025
  # order number (or all of them as long as they match).
17610
18026
  class RefundForm
17611
18027
 
17612
- attr_reader :authorization_id, :capture_id, :order_number, :key, :amount, :currency
18028
+ attr_reader :authorization_id, :capture_id, :order_number, :key, :amount, :currency, :rma_key
17613
18029
 
17614
18030
  def initialize(incoming={})
17615
18031
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -17619,6 +18035,7 @@ module Io
17619
18035
  @key = (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, String))
17620
18036
  @amount = (x = opts.delete(:amount); x.nil? ? nil : HttpClient::Preconditions.assert_class('amount', HttpClient::Helper.to_big_decimal(x), BigDecimal))
17621
18037
  @currency = (x = opts.delete(:currency); x.nil? ? nil : HttpClient::Preconditions.assert_class('currency', x, String))
18038
+ @rma_key = (x = opts.delete(:rma_key); x.nil? ? nil : HttpClient::Preconditions.assert_class('rma_key', x, String))
17622
18039
  end
17623
18040
 
17624
18041
  def to_json
@@ -17636,7 +18053,8 @@ module Io
17636
18053
  :order_number => order_number,
17637
18054
  :key => key,
17638
18055
  :amount => amount,
17639
- :currency => currency
18056
+ :currency => currency,
18057
+ :rma_key => rma_key
17640
18058
  }
17641
18059
  end
17642
18060
 
@@ -17851,26 +18269,17 @@ module Io
17851
18269
 
17852
18270
  end
17853
18271
 
17854
- class Rma
18272
+ class Return
17855
18273
 
17856
- attr_reader :id, :attributes, :carrier_tracking_number, :commercial_invoice, :destination, :flow_tracking_number, :number, :order_number, :origin, :service, :zpl, :pdf, :png
18274
+ attr_reader :id, :key, :items, :labels
17857
18275
 
17858
18276
  def initialize(incoming={})
17859
18277
  opts = HttpClient::Helper.symbolize_keys(incoming)
17860
- HttpClient::Preconditions.require_keys(opts, [:id, :carrier_tracking_number, :commercial_invoice, :destination, :flow_tracking_number, :number, :order_number, :origin, :service], 'Rma')
18278
+ HttpClient::Preconditions.require_keys(opts, [:id, :key, :items, :labels], 'Return')
17861
18279
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
17862
- @attributes = HttpClient::Preconditions.assert_class('attributes', (x = opts.delete(:attributes); x.nil? ? {} : x), Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('attributes', d[1], String); h }
17863
- @carrier_tracking_number = HttpClient::Preconditions.assert_class('carrier_tracking_number', opts.delete(:carrier_tracking_number), String)
17864
- @commercial_invoice = HttpClient::Preconditions.assert_class('commercial_invoice', opts.delete(:commercial_invoice), String)
17865
- @destination = (x = opts.delete(:destination); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
17866
- @flow_tracking_number = HttpClient::Preconditions.assert_class('flow_tracking_number', opts.delete(:flow_tracking_number), String)
17867
- @number = HttpClient::Preconditions.assert_class('number', opts.delete(:number), String)
17868
- @order_number = HttpClient::Preconditions.assert_class('order_number', opts.delete(:order_number), String)
17869
- @origin = (x = opts.delete(:origin); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
17870
- @service = (x = opts.delete(:service); x.is_a?(::Io::Flow::V0::Models::ServiceSummary) ? x : ::Io::Flow::V0::Models::ServiceSummary.new(x))
17871
- @zpl = (x = opts.delete(:zpl); x.nil? ? nil : HttpClient::Preconditions.assert_class('zpl', x, String))
17872
- @pdf = (x = opts.delete(:pdf); x.nil? ? nil : HttpClient::Preconditions.assert_class('pdf', x, String))
17873
- @png = (x = opts.delete(:png); x.nil? ? nil : HttpClient::Preconditions.assert_class('png', x, String))
18280
+ @key = HttpClient::Preconditions.assert_class('key', opts.delete(:key), String)
18281
+ @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)) }
18282
+ @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)) }
17874
18283
  end
17875
18284
 
17876
18285
  def to_json
@@ -17878,42 +18287,32 @@ module Io
17878
18287
  end
17879
18288
 
17880
18289
  def copy(incoming={})
17881
- Rma.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18290
+ Return.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
17882
18291
  end
17883
18292
 
17884
18293
  def to_hash
17885
18294
  {
17886
18295
  :id => id,
17887
- :attributes => attributes,
17888
- :carrier_tracking_number => carrier_tracking_number,
17889
- :commercial_invoice => commercial_invoice,
17890
- :destination => destination.to_hash,
17891
- :flow_tracking_number => flow_tracking_number,
17892
- :number => number,
17893
- :order_number => order_number,
17894
- :origin => origin.to_hash,
17895
- :service => service.to_hash,
17896
- :zpl => zpl,
17897
- :pdf => pdf,
17898
- :png => png
18296
+ :key => key,
18297
+ :items => items.map { |o| o.to_hash },
18298
+ :labels => labels.map { |o| o.to_hash }
17899
18299
  }
17900
18300
  end
17901
18301
 
17902
18302
  end
17903
18303
 
17904
- class RmaDeleted < Event
18304
+ class ReturnForm
17905
18305
 
17906
- attr_reader :event_id, :timestamp, :organization, :number, :rma_id
18306
+ attr_reader :items, :service, :destination, :key, :origin
17907
18307
 
17908
18308
  def initialize(incoming={})
17909
- super(:discriminator => Event::Types::RMA_DELETED)
17910
18309
  opts = HttpClient::Helper.symbolize_keys(incoming)
17911
- HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :number, :rma_id], 'RmaDeleted')
17912
- @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
17913
- @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
17914
- @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
17915
- @number = HttpClient::Preconditions.assert_class('number', opts.delete(:number), String)
17916
- @rma_id = HttpClient::Preconditions.assert_class('rma_id', opts.delete(:rma_id), String)
18310
+ HttpClient::Preconditions.require_keys(opts, [:items], 'ReturnForm')
18311
+ @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)) }
18312
+ @service = (x = opts.delete(:service); x.nil? ? nil : HttpClient::Preconditions.assert_class('service', x, String))
18313
+ @destination = (x = opts.delete(:destination); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x)))
18314
+ @key = (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, String))
18315
+ @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)))
17917
18316
  end
17918
18317
 
17919
18318
  def to_json
@@ -17921,35 +18320,29 @@ module Io
17921
18320
  end
17922
18321
 
17923
18322
  def copy(incoming={})
17924
- RmaDeleted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18323
+ ReturnForm.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
17925
18324
  end
17926
18325
 
17927
- def subtype_to_hash
18326
+ def to_hash
17928
18327
  {
17929
- :event_id => event_id,
17930
- :timestamp => timestamp,
17931
- :organization => organization,
17932
- :number => number,
17933
- :rma_id => rma_id
18328
+ :items => items.map { |o| o.to_hash },
18329
+ :service => service,
18330
+ :destination => destination.nil? ? nil : destination.to_hash,
18331
+ :key => key,
18332
+ :origin => origin.nil? ? nil : origin.to_hash
17934
18333
  }
17935
18334
  end
17936
18335
 
17937
18336
  end
17938
18337
 
17939
- class RmaForm
18338
+ class ReturnItemReference
17940
18339
 
17941
- attr_reader :destination, :number, :order_number, :origin, :package, :service, :attributes
18340
+ attr_reader :number
17942
18341
 
17943
18342
  def initialize(incoming={})
17944
18343
  opts = HttpClient::Helper.symbolize_keys(incoming)
17945
- HttpClient::Preconditions.require_keys(opts, [:destination, :number, :order_number, :origin, :package, :service], 'RmaForm')
17946
- @destination = (x = opts.delete(:destination); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
18344
+ HttpClient::Preconditions.require_keys(opts, [:number], 'ReturnItemReference')
17947
18345
  @number = HttpClient::Preconditions.assert_class('number', opts.delete(:number), String)
17948
- @order_number = HttpClient::Preconditions.assert_class('order_number', opts.delete(:order_number), String)
17949
- @origin = (x = opts.delete(:origin); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
17950
- @package = (x = opts.delete(:package); x.is_a?(::Io::Flow::V0::Models::ShippingLabelPackage) ? x : ::Io::Flow::V0::Models::ShippingLabelPackage.new(x))
17951
- @service = HttpClient::Preconditions.assert_class('service', opts.delete(:service), String)
17952
- @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 })
17953
18346
  end
17954
18347
 
17955
18348
  def to_json
@@ -17957,18 +18350,219 @@ module Io
17957
18350
  end
17958
18351
 
17959
18352
  def copy(incoming={})
17960
- RmaForm.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18353
+ ReturnItemReference.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
17961
18354
  end
17962
18355
 
17963
18356
  def to_hash
17964
18357
  {
17965
- :destination => destination.to_hash,
17966
- :number => number,
17967
- :order_number => order_number,
17968
- :origin => origin.to_hash,
17969
- :package => package.to_hash,
17970
- :service => service,
17971
- :attributes => attributes.nil? ? nil : attributes
18358
+ :number => number
18359
+ }
18360
+ end
18361
+
18362
+ end
18363
+
18364
+ class ReturnLineItem
18365
+
18366
+ attr_reader :item_number, :order_number, :quantity, :reason, :notes
18367
+
18368
+ def initialize(incoming={})
18369
+ opts = HttpClient::Helper.symbolize_keys(incoming)
18370
+ HttpClient::Preconditions.require_keys(opts, [:item_number, :quantity], 'ReturnLineItem')
18371
+ @item_number = HttpClient::Preconditions.assert_class('item_number', opts.delete(:item_number), String)
18372
+ @order_number = (x = opts.delete(:order_number); x.nil? ? nil : HttpClient::Preconditions.assert_class('order_number', x, String))
18373
+ @quantity = HttpClient::Preconditions.assert_class('quantity', opts.delete(:quantity), Integer)
18374
+ @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)))
18375
+ @notes = (x = opts.delete(:notes); x.nil? ? nil : HttpClient::Preconditions.assert_class('notes', x, String))
18376
+ end
18377
+
18378
+ def to_json
18379
+ JSON.dump(to_hash)
18380
+ end
18381
+
18382
+ def copy(incoming={})
18383
+ ReturnLineItem.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18384
+ end
18385
+
18386
+ def to_hash
18387
+ {
18388
+ :item_number => item_number,
18389
+ :order_number => order_number,
18390
+ :quantity => quantity,
18391
+ :reason => reason.nil? ? nil : reason.to_hash,
18392
+ :notes => notes
18393
+ }
18394
+ end
18395
+
18396
+ end
18397
+
18398
+ class ReturnOrderReference
18399
+
18400
+ attr_reader :number
18401
+
18402
+ def initialize(incoming={})
18403
+ opts = HttpClient::Helper.symbolize_keys(incoming)
18404
+ HttpClient::Preconditions.require_keys(opts, [:number], 'ReturnOrderReference')
18405
+ @number = HttpClient::Preconditions.assert_class('number', opts.delete(:number), String)
18406
+ end
18407
+
18408
+ def to_json
18409
+ JSON.dump(to_hash)
18410
+ end
18411
+
18412
+ def copy(incoming={})
18413
+ ReturnOrderReference.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18414
+ end
18415
+
18416
+ def to_hash
18417
+ {
18418
+ :number => number
18419
+ }
18420
+ end
18421
+
18422
+ end
18423
+
18424
+ class ReturnReason
18425
+
18426
+ attr_reader :key, :name
18427
+
18428
+ def initialize(incoming={})
18429
+ opts = HttpClient::Helper.symbolize_keys(incoming)
18430
+ HttpClient::Preconditions.require_keys(opts, [:key, :name], 'ReturnReason')
18431
+ @key = HttpClient::Preconditions.assert_class('key', opts.delete(:key), String)
18432
+ @name = HttpClient::Preconditions.assert_class('name', opts.delete(:name), String)
18433
+ end
18434
+
18435
+ def to_json
18436
+ JSON.dump(to_hash)
18437
+ end
18438
+
18439
+ def copy(incoming={})
18440
+ ReturnReason.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18441
+ end
18442
+
18443
+ def to_hash
18444
+ {
18445
+ :key => key,
18446
+ :name => name
18447
+ }
18448
+ end
18449
+
18450
+ end
18451
+
18452
+ class ReturnReasonForm
18453
+
18454
+ attr_reader :key, :name
18455
+
18456
+ def initialize(incoming={})
18457
+ opts = HttpClient::Helper.symbolize_keys(incoming)
18458
+ @key = (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, String))
18459
+ @name = (x = opts.delete(:name); x.nil? ? nil : HttpClient::Preconditions.assert_class('name', x, String))
18460
+ end
18461
+
18462
+ def to_json
18463
+ JSON.dump(to_hash)
18464
+ end
18465
+
18466
+ def copy(incoming={})
18467
+ ReturnReasonForm.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18468
+ end
18469
+
18470
+ def to_hash
18471
+ {
18472
+ :key => key,
18473
+ :name => name
18474
+ }
18475
+ end
18476
+
18477
+ end
18478
+
18479
+ class ReturnReasonPutForm
18480
+
18481
+ attr_reader :name
18482
+
18483
+ def initialize(incoming={})
18484
+ opts = HttpClient::Helper.symbolize_keys(incoming)
18485
+ @name = (x = opts.delete(:name); x.nil? ? nil : HttpClient::Preconditions.assert_class('name', x, String))
18486
+ end
18487
+
18488
+ def to_json
18489
+ JSON.dump(to_hash)
18490
+ end
18491
+
18492
+ def copy(incoming={})
18493
+ ReturnReasonPutForm.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18494
+ end
18495
+
18496
+ def to_hash
18497
+ {
18498
+ :name => name
18499
+ }
18500
+ end
18501
+
18502
+ end
18503
+
18504
+ class ReturnVersion
18505
+
18506
+ attr_reader :id, :timestamp, :type, :return_
18507
+
18508
+ def initialize(incoming={})
18509
+ opts = HttpClient::Helper.symbolize_keys(incoming)
18510
+ HttpClient::Preconditions.require_keys(opts, [:id, :timestamp, :type, :return_], 'ReturnVersion')
18511
+ @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
18512
+ @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
18513
+ @type = (x = opts.delete(:type); x.is_a?(::Io::Flow::V0::Models::ChangeType) ? x : ::Io::Flow::V0::Models::ChangeType.apply(x))
18514
+ @return_ = (x = opts.delete(:return); x.is_a?(::Io::Flow::V0::Models::Return) ? x : ::Io::Flow::V0::Models::Return.new(x))
18515
+ end
18516
+
18517
+ def to_json
18518
+ JSON.dump(to_hash)
18519
+ end
18520
+
18521
+ def copy(incoming={})
18522
+ ReturnVersion.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18523
+ end
18524
+
18525
+ def to_hash
18526
+ {
18527
+ :id => id,
18528
+ :timestamp => timestamp,
18529
+ :type => type.value,
18530
+ :return => return_.to_hash
18531
+ }
18532
+ end
18533
+
18534
+ end
18535
+
18536
+ class RmaDeleted < Event
18537
+
18538
+ attr_reader :event_id, :timestamp, :organization, :number, :rma_id
18539
+
18540
+ def initialize(incoming={})
18541
+ super(:discriminator => Event::Types::RMA_DELETED)
18542
+ opts = HttpClient::Helper.symbolize_keys(incoming)
18543
+ HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :number, :rma_id], 'RmaDeleted')
18544
+ @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
18545
+ @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
18546
+ @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
18547
+ @number = HttpClient::Preconditions.assert_class('number', opts.delete(:number), String)
18548
+ @rma_id = HttpClient::Preconditions.assert_class('rma_id', opts.delete(:rma_id), String)
18549
+ end
18550
+
18551
+ def to_json
18552
+ JSON.dump(to_hash)
18553
+ end
18554
+
18555
+ def copy(incoming={})
18556
+ RmaDeleted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18557
+ end
18558
+
18559
+ def subtype_to_hash
18560
+ {
18561
+ :event_id => event_id,
18562
+ :timestamp => timestamp,
18563
+ :organization => organization,
18564
+ :number => number,
18565
+ :rma_id => rma_id
17972
18566
  }
17973
18567
  end
17974
18568
 
@@ -18031,38 +18625,6 @@ module Io
18031
18625
 
18032
18626
  end
18033
18627
 
18034
- class RmaVersion
18035
-
18036
- attr_reader :id, :timestamp, :type, :rma
18037
-
18038
- def initialize(incoming={})
18039
- opts = HttpClient::Helper.symbolize_keys(incoming)
18040
- HttpClient::Preconditions.require_keys(opts, [:id, :timestamp, :type, :rma], 'RmaVersion')
18041
- @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
18042
- @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
18043
- @type = (x = opts.delete(:type); x.is_a?(::Io::Flow::V0::Models::ChangeType) ? x : ::Io::Flow::V0::Models::ChangeType.apply(x))
18044
- @rma = (x = opts.delete(:rma); x.is_a?(::Io::Flow::V0::Models::Rma) ? x : ::Io::Flow::V0::Models::Rma.new(x))
18045
- end
18046
-
18047
- def to_json
18048
- JSON.dump(to_hash)
18049
- end
18050
-
18051
- def copy(incoming={})
18052
- RmaVersion.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18053
- end
18054
-
18055
- def to_hash
18056
- {
18057
- :id => id,
18058
- :timestamp => timestamp,
18059
- :type => type.value,
18060
- :rma => rma.to_hash
18061
- }
18062
- end
18063
-
18064
- end
18065
-
18066
18628
  class Rounding
18067
18629
 
18068
18630
  attr_reader :type, :method, :value
@@ -18130,6 +18692,114 @@ module Io
18130
18692
 
18131
18693
  end
18132
18694
 
18695
+ # Allows a user to create a scheduled export that will be delivered on a
18696
+ # schedule (currently only support once / day at a set time)
18697
+ class ScheduledExport
18698
+
18699
+ attr_reader :id, :user, :organization_q, :hour, :minute, :timezone, :types, :last_sent_at
18700
+
18701
+ def initialize(incoming={})
18702
+ opts = HttpClient::Helper.symbolize_keys(incoming)
18703
+ HttpClient::Preconditions.require_keys(opts, [:id, :user, :organization_q, :hour, :minute, :timezone, :types], 'ScheduledExport')
18704
+ @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
18705
+ @user = (x = opts.delete(:user); x.is_a?(::Io::Flow::V0::Models::UserReference) ? x : ::Io::Flow::V0::Models::UserReference.new(x))
18706
+ @organization_q = HttpClient::Preconditions.assert_class('organization_q', opts.delete(:organization_q), String)
18707
+ @hour = HttpClient::Preconditions.assert_class('hour', opts.delete(:hour), Integer)
18708
+ @minute = HttpClient::Preconditions.assert_class('minute', opts.delete(:minute), Integer)
18709
+ @timezone = HttpClient::Preconditions.assert_class('timezone', opts.delete(:timezone), String)
18710
+ @types = HttpClient::Preconditions.assert_class('types', opts.delete(:types), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ExportType) ? x : ::Io::Flow::V0::Models::ExportType.from_json(x)) }
18711
+ @last_sent_at = (x = opts.delete(:last_sent_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('last_sent_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime))
18712
+ end
18713
+
18714
+ def to_json
18715
+ JSON.dump(to_hash)
18716
+ end
18717
+
18718
+ def copy(incoming={})
18719
+ ScheduledExport.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18720
+ end
18721
+
18722
+ def to_hash
18723
+ {
18724
+ :id => id,
18725
+ :user => user.to_hash,
18726
+ :organization_q => organization_q,
18727
+ :hour => hour,
18728
+ :minute => minute,
18729
+ :timezone => timezone,
18730
+ :types => types.map { |o| o.to_hash },
18731
+ :last_sent_at => last_sent_at
18732
+ }
18733
+ end
18734
+
18735
+ end
18736
+
18737
+ class ScheduledExportForm
18738
+
18739
+ attr_reader :user_id, :organization_q, :hour, :minute, :timezone, :types
18740
+
18741
+ def initialize(incoming={})
18742
+ opts = HttpClient::Helper.symbolize_keys(incoming)
18743
+ HttpClient::Preconditions.require_keys(opts, [:user_id, :organization_q, :hour, :minute, :timezone, :types], 'ScheduledExportForm')
18744
+ @user_id = HttpClient::Preconditions.assert_class('user_id', opts.delete(:user_id), String)
18745
+ @organization_q = HttpClient::Preconditions.assert_class('organization_q', opts.delete(:organization_q), String)
18746
+ @hour = HttpClient::Preconditions.assert_class('hour', opts.delete(:hour), Integer)
18747
+ @minute = HttpClient::Preconditions.assert_class('minute', opts.delete(:minute), Integer)
18748
+ @timezone = HttpClient::Preconditions.assert_class('timezone', opts.delete(:timezone), String)
18749
+ @types = HttpClient::Preconditions.assert_class('types', opts.delete(:types), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ExportType) ? x : ::Io::Flow::V0::Models::ExportType.from_json(x)) }
18750
+ end
18751
+
18752
+ def to_json
18753
+ JSON.dump(to_hash)
18754
+ end
18755
+
18756
+ def copy(incoming={})
18757
+ ScheduledExportForm.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18758
+ end
18759
+
18760
+ def to_hash
18761
+ {
18762
+ :user_id => user_id,
18763
+ :organization_q => organization_q,
18764
+ :hour => hour,
18765
+ :minute => minute,
18766
+ :timezone => timezone,
18767
+ :types => types.map { |o| o.to_hash }
18768
+ }
18769
+ end
18770
+
18771
+ end
18772
+
18773
+ class ScheduledPickup
18774
+
18775
+ attr_reader :day_of_week, :hour_of_day, :minute_of_hour
18776
+
18777
+ def initialize(incoming={})
18778
+ opts = HttpClient::Helper.symbolize_keys(incoming)
18779
+ HttpClient::Preconditions.require_keys(opts, [:day_of_week, :hour_of_day, :minute_of_hour], 'ScheduledPickup')
18780
+ @day_of_week = (x = opts.delete(:day_of_week); x.is_a?(::Io::Flow::V0::Models::DayOfWeek) ? x : ::Io::Flow::V0::Models::DayOfWeek.apply(x))
18781
+ @hour_of_day = HttpClient::Preconditions.assert_class('hour_of_day', opts.delete(:hour_of_day), String)
18782
+ @minute_of_hour = HttpClient::Preconditions.assert_class('minute_of_hour', opts.delete(:minute_of_hour), String)
18783
+ end
18784
+
18785
+ def to_json
18786
+ JSON.dump(to_hash)
18787
+ end
18788
+
18789
+ def copy(incoming={})
18790
+ ScheduledPickup.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
18791
+ end
18792
+
18793
+ def to_hash
18794
+ {
18795
+ :day_of_week => day_of_week.value,
18796
+ :hour_of_day => hour_of_day,
18797
+ :minute_of_hour => minute_of_hour
18798
+ }
18799
+ end
18800
+
18801
+ end
18802
+
18133
18803
  # Specific service rendered by the carrier (fedex ground saturday, ups overnight
18134
18804
  # weekend, etc)
18135
18805
  class Service
@@ -18250,12 +18920,13 @@ module Io
18250
18920
  # shipper to transport a package from a given origin to destination
18251
18921
  class ShippingLabel
18252
18922
 
18253
- attr_reader :id, :attributes, :carrier_tracking_number, :cost, :destination, :flow_tracking_number, :origin, :service, :window, :commercial_invoice, :zpl, :pdf, :png, :order
18923
+ attr_reader :id, :direction, :attributes, :carrier_tracking_number, :cost, :destination, :flow_tracking_number, :origin, :service, :window, :commercial_invoice, :zpl, :pdf, :png, :order
18254
18924
 
18255
18925
  def initialize(incoming={})
18256
18926
  opts = HttpClient::Helper.symbolize_keys(incoming)
18257
- HttpClient::Preconditions.require_keys(opts, [:id, :carrier_tracking_number, :cost, :destination, :flow_tracking_number, :origin, :service, :window], 'ShippingLabel')
18927
+ HttpClient::Preconditions.require_keys(opts, [:id, :direction, :carrier_tracking_number, :cost, :destination, :flow_tracking_number, :origin, :service, :window], 'ShippingLabel')
18258
18928
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
18929
+ @direction = (x = opts.delete(:direction); x.is_a?(::Io::Flow::V0::Models::Direction) ? x : ::Io::Flow::V0::Models::Direction.apply(x))
18259
18930
  @attributes = HttpClient::Preconditions.assert_class('attributes', (x = opts.delete(:attributes); x.nil? ? {} : x), Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('attributes', d[1], String); h }
18260
18931
  @carrier_tracking_number = HttpClient::Preconditions.assert_class('carrier_tracking_number', opts.delete(:carrier_tracking_number), String)
18261
18932
  @cost = (x = opts.delete(:cost); x.is_a?(::Io::Flow::V0::Models::Price) ? x : ::Io::Flow::V0::Models::Price.new(x))
@@ -18282,6 +18953,7 @@ module Io
18282
18953
  def to_hash
18283
18954
  {
18284
18955
  :id => id,
18956
+ :direction => direction.value,
18285
18957
  :attributes => attributes,
18286
18958
  :carrier_tracking_number => carrier_tracking_number,
18287
18959
  :cost => cost.to_hash,
@@ -18302,18 +18974,19 @@ module Io
18302
18974
 
18303
18975
  class ShippingLabelForm
18304
18976
 
18305
- attr_reader :attributes, :delivered_duty, :service, :destination, :origin, :package, :order_number
18977
+ attr_reader :destination, :origin, :package, :attributes, :delivered_duty, :direction, :order_number, :service
18306
18978
 
18307
18979
  def initialize(incoming={})
18308
18980
  opts = HttpClient::Helper.symbolize_keys(incoming)
18309
- HttpClient::Preconditions.require_keys(opts, [:delivered_duty, :service, :destination, :origin, :package], 'ShippingLabelForm')
18310
- @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 })
18311
- @delivered_duty = (x = opts.delete(:delivered_duty); x.is_a?(::Io::Flow::V0::Models::DeliveredDuty) ? x : ::Io::Flow::V0::Models::DeliveredDuty.apply(x))
18312
- @service = HttpClient::Preconditions.assert_class('service', opts.delete(:service), String)
18981
+ HttpClient::Preconditions.require_keys(opts, [:destination, :origin, :package], 'ShippingLabelForm')
18313
18982
  @destination = (x = opts.delete(:destination); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
18314
18983
  @origin = (x = opts.delete(:origin); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
18315
18984
  @package = (x = opts.delete(:package); x.is_a?(::Io::Flow::V0::Models::ShippingLabelPackage) ? x : ::Io::Flow::V0::Models::ShippingLabelPackage.new(x))
18985
+ @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 })
18986
+ @delivered_duty = (x = opts.delete(:delivered_duty); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::DeliveredDuty) ? x : ::Io::Flow::V0::Models::DeliveredDuty.apply(x)))
18987
+ @direction = (x = opts.delete(:direction); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Direction) ? x : ::Io::Flow::V0::Models::Direction.apply(x)))
18316
18988
  @order_number = (x = opts.delete(:order_number); x.nil? ? nil : HttpClient::Preconditions.assert_class('order_number', x, String))
18989
+ @service = (x = opts.delete(:service); x.nil? ? nil : HttpClient::Preconditions.assert_class('service', x, String))
18317
18990
  end
18318
18991
 
18319
18992
  def to_json
@@ -18326,13 +18999,14 @@ module Io
18326
18999
 
18327
19000
  def to_hash
18328
19001
  {
18329
- :attributes => attributes.nil? ? nil : attributes,
18330
- :delivered_duty => delivered_duty.value,
18331
- :service => service,
18332
19002
  :destination => destination.to_hash,
18333
19003
  :origin => origin.to_hash,
18334
19004
  :package => package.to_hash,
18335
- :order_number => order_number
19005
+ :attributes => attributes.nil? ? nil : attributes,
19006
+ :delivered_duty => delivered_duty.nil? ? nil : delivered_duty.value,
19007
+ :direction => direction.nil? ? nil : direction.value,
19008
+ :order_number => order_number,
19009
+ :service => service
18336
19010
  }
18337
19011
  end
18338
19012
 
@@ -19499,7 +20173,7 @@ module Io
19499
20173
  # Express tier, Economy tier
19500
20174
  class Tier
19501
20175
 
19502
- attr_reader :id, :experience, :integration, :name, :rules, :services, :strategy, :visibility
20176
+ attr_reader :id, :experience, :integration, :name, :rules, :services, :strategy, :visibility, :description
19503
20177
 
19504
20178
  def initialize(incoming={})
19505
20179
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -19512,6 +20186,7 @@ module Io
19512
20186
  @services = HttpClient::Preconditions.assert_class('services', opts.delete(:services), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::Service) ? x : ::Io::Flow::V0::Models::Service.new(x)) }
19513
20187
  @strategy = (x = opts.delete(:strategy); x.is_a?(::Io::Flow::V0::Models::TierStrategy) ? x : ::Io::Flow::V0::Models::TierStrategy.apply(x))
19514
20188
  @visibility = (x = opts.delete(:visibility); x.is_a?(::Io::Flow::V0::Models::Visibility) ? x : ::Io::Flow::V0::Models::Visibility.apply(x))
20189
+ @description = (x = opts.delete(:description); x.nil? ? nil : HttpClient::Preconditions.assert_class('description', x, String))
19515
20190
  end
19516
20191
 
19517
20192
  def to_json
@@ -19531,7 +20206,8 @@ module Io
19531
20206
  :rules => rules.map { |o| o.to_hash },
19532
20207
  :services => services.map { |o| o.to_hash },
19533
20208
  :strategy => strategy.value,
19534
- :visibility => visibility.value
20209
+ :visibility => visibility.value,
20210
+ :description => description
19535
20211
  }
19536
20212
  end
19537
20213
 
@@ -19636,7 +20312,7 @@ module Io
19636
20312
  # Express tier, Economy tier
19637
20313
  class TierForm
19638
20314
 
19639
- attr_reader :currency, :experience, :integration, :name, :rules, :services, :strategy, :visibility
20315
+ attr_reader :currency, :experience, :integration, :name, :rules, :services, :strategy, :visibility, :description
19640
20316
 
19641
20317
  def initialize(incoming={})
19642
20318
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -19649,6 +20325,7 @@ module Io
19649
20325
  @services = HttpClient::Preconditions.assert_class('services', opts.delete(:services), Array).map { |v| HttpClient::Preconditions.assert_class('services', v, String) }
19650
20326
  @strategy = (x = opts.delete(:strategy); x.is_a?(::Io::Flow::V0::Models::TierStrategy) ? x : ::Io::Flow::V0::Models::TierStrategy.apply(x))
19651
20327
  @visibility = (x = opts.delete(:visibility); x.is_a?(::Io::Flow::V0::Models::Visibility) ? x : ::Io::Flow::V0::Models::Visibility.apply(x))
20328
+ @description = (x = opts.delete(:description); x.nil? ? nil : HttpClient::Preconditions.assert_class('description', x, String))
19652
20329
  end
19653
20330
 
19654
20331
  def to_json
@@ -19668,7 +20345,8 @@ module Io
19668
20345
  :rules => rules.map { |o| o.to_hash },
19669
20346
  :services => services,
19670
20347
  :strategy => strategy.value,
19671
- :visibility => visibility.value
20348
+ :visibility => visibility.value,
20349
+ :description => description
19672
20350
  }
19673
20351
  end
19674
20352