flowcommerce 0.0.18 → 0.0.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 135ff9ec6e849f931ad6642421dd82912e77c818
4
- data.tar.gz: 39424ef69e0f91b38d0b722d4f5e2b3024edcc2f
3
+ metadata.gz: 3b92bf91f71330ca707d40dc304753db206910a1
4
+ data.tar.gz: 240876db6a950b588d838319faab4609d7e4e428
5
5
  SHA512:
6
- metadata.gz: fad1970b24a77541957f6097cb5cad24e24e1b835e76ea5a0bd61a08761b0014859f3c3953ae10cc364d0a986f544e68dca80ce7b12f7db4d53f9ba0b638c6ec
7
- data.tar.gz: 4e44ec94764a21a991cae4210941e095564d862539a0fe6419060a44728f6720bcf4cda4f65c509f94df2e0bbefaedd77f899ddab04511490be1c33de7e97fb7
6
+ metadata.gz: 19100dabe8a83d1fc692621bafcbfc4d2c7dbe6b6b04a76ff7819d4a7733c54bf87cd1b20596b0b2d6c213b6b96c05cf2db7183fda58411dbe6a25be52779d57
7
+ data.tar.gz: 579139b4d1ae1261bdcccd1c49118f1e2853795825e189027fe3bb852466cdca4e0e08bccaca56bd1c3c00e0b5bc016e6f231db32f39f9d3cfd1ce9897aeb10c
@@ -1,6 +1,6 @@
1
1
  # Generated by apidoc - http://www.apidoc.me
2
- # Service version: 0.0.58
3
- # apidoc:0.11.32 http://www.apidoc.me/flow/api/0.0.58/ruby_client
2
+ # Service version: 0.0.60
3
+ # apidoc:0.11.32 http://www.apidoc.me/flow/api/0.0.60/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.32 http://www.apidoc.me/flow/api/0.0.58/ruby_client' unless defined?(Constants::USER_AGENT)
29
- VERSION = '0.0.58' unless defined?(Constants::VERSION)
28
+ USER_AGENT = 'apidoc:0.11.32 http://www.apidoc.me/flow/api/0.0.60/ruby_client' unless defined?(Constants::USER_AGENT)
29
+ VERSION = '0.0.60' unless defined?(Constants::VERSION)
30
30
  VERSION_MAJOR = 0 unless defined?(VERSION_MAJOR)
31
31
 
32
32
  end
@@ -201,6 +201,10 @@ module Io
201
201
  @tiers ||= ::Io::Flow::V0::Clients::Tiers.new(self)
202
202
  end
203
203
 
204
+ def tier_defaults
205
+ @tier_defaults ||= ::Io::Flow::V0::Clients::TierDefaults.new(self)
206
+ end
207
+
204
208
  def trackings
205
209
  @trackings ||= ::Io::Flow::V0::Clients::Trackings.new(self)
206
210
  end
@@ -688,16 +692,6 @@ module Io
688
692
  nil
689
693
  end
690
694
 
691
- # Sync subcatalog
692
- def post_events_by_id_and_event(organization, id, event, hash)
693
- HttpClient::Preconditions.assert_class('organization', organization, String)
694
- HttpClient::Preconditions.assert_class('id', id, String)
695
- HttpClient::Preconditions.assert_class('event', event, String)
696
- HttpClient::Preconditions.assert_class('hash', hash, Hash)
697
- r = @client.request("/#{CGI.escape(organization)}/catalog/subcatalogs/#{CGI.escape(id)}/events/#{CGI.escape(event)}").with_json(hash.to_json).post
698
- nil
699
- end
700
-
701
695
  # Returns information about a specific subcatalog's settings.
702
696
  def get_settings_by_id(organization, id)
703
697
  HttpClient::Preconditions.assert_class('organization', organization, String)
@@ -878,19 +872,11 @@ module Io
878
872
  :number => (x = opts.delete(:number); x.nil? ? nil : HttpClient::Preconditions.assert_class('number', x, Array).map { |v| HttpClient::Preconditions.assert_class('number', v, String) }),
879
873
  :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
880
874
  :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
881
- :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "name" : x), String)
875
+ :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String),
876
+ :expand => (x = opts.delete(:expand); x.nil? ? nil : HttpClient::Preconditions.assert_class('expand', x, Array).map { |v| HttpClient::Preconditions.assert_class('expand', v, String) })
882
877
  }.delete_if { |k, v| v.nil? }
883
878
  r = @client.request("/#{CGI.escape(organization)}/catalog/subcatalogs/#{CGI.escape(subcatalog_id)}/items").with_query(query).get
884
- r.map { |x| ::Io::Flow::V0::Models::Item.new(x) }
885
- end
886
-
887
- # Add subcatalog item
888
- def post(organization, subcatalog_id, item_form)
889
- HttpClient::Preconditions.assert_class('organization', organization, String)
890
- HttpClient::Preconditions.assert_class('subcatalog_id', subcatalog_id, String)
891
- HttpClient::Preconditions.assert_class('item_form', item_form, ::Io::Flow::V0::Models::ItemForm)
892
- r = @client.request("/#{CGI.escape(organization)}/catalog/subcatalogs/#{CGI.escape(subcatalog_id)}/items").with_json(item_form.to_json).post
893
- ::Io::Flow::V0::Models::Item.new(r)
879
+ r.map { |x| ::Io::Flow::V0::Models::SubcatalogItem.new(x) }
894
880
  end
895
881
 
896
882
  # Returns information about specific subcatalog items.
@@ -899,27 +885,7 @@ module Io
899
885
  HttpClient::Preconditions.assert_class('subcatalog_id', subcatalog_id, String)
900
886
  HttpClient::Preconditions.assert_class('number', number, String)
901
887
  r = @client.request("/#{CGI.escape(organization)}/catalog/subcatalogs/#{CGI.escape(subcatalog_id)}/items/#{CGI.escape(number)}").get
902
- ::Io::Flow::V0::Models::Item.new(r)
903
- end
904
-
905
- # Update subcatalog item with the specified number, creating if it does not
906
- # exist.
907
- def put_by_number(organization, subcatalog_id, number, item_form)
908
- HttpClient::Preconditions.assert_class('organization', organization, String)
909
- HttpClient::Preconditions.assert_class('subcatalog_id', subcatalog_id, String)
910
- HttpClient::Preconditions.assert_class('number', number, String)
911
- HttpClient::Preconditions.assert_class('item_form', item_form, ::Io::Flow::V0::Models::ItemForm)
912
- r = @client.request("/#{CGI.escape(organization)}/catalog/subcatalogs/#{CGI.escape(subcatalog_id)}/items/#{CGI.escape(number)}").with_json(item_form.to_json).put
913
- ::Io::Flow::V0::Models::Item.new(r)
914
- end
915
-
916
- # Delete the subcatalog item with this number
917
- def delete_by_number(organization, subcatalog_id, number)
918
- HttpClient::Preconditions.assert_class('organization', organization, String)
919
- HttpClient::Preconditions.assert_class('subcatalog_id', subcatalog_id, String)
920
- HttpClient::Preconditions.assert_class('number', number, String)
921
- r = @client.request("/#{CGI.escape(organization)}/catalog/subcatalogs/#{CGI.escape(subcatalog_id)}/items/#{CGI.escape(number)}").delete
922
- nil
888
+ ::Io::Flow::V0::Models::SubcatalogItem.new(r)
923
889
  end
924
890
 
925
891
  # Provides visibility into recent changes of each object, including deletion
@@ -953,9 +919,7 @@ module Io
953
919
  query = {
954
920
  :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
955
921
  :key => (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, Array).map { |v| HttpClient::Preconditions.assert_class('key', v, String) }),
956
- :name => (x = opts.delete(:name); x.nil? ? nil : HttpClient::Preconditions.assert_class('name', x, Array).map { |v| HttpClient::Preconditions.assert_class('name', v, String) }),
957
- :position => (x = opts.delete(:position); x.nil? ? nil : HttpClient::Preconditions.assert_class('position', x, Array).map { |v| HttpClient::Preconditions.assert_class('position', v, Integer) }),
958
- :subcatalog => (x = opts.delete(:subcatalog); x.nil? ? nil : HttpClient::Preconditions.assert_class('subcatalog', x, Array).map { |v| HttpClient::Preconditions.assert_class('subcatalog', v, String) }),
922
+ :subcatalog => (x = opts.delete(:subcatalog); x.nil? ? nil : HttpClient::Preconditions.assert_class('subcatalog', x, String)),
959
923
  :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
960
924
  :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
961
925
  :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "name" : x), String)
@@ -2359,6 +2323,56 @@ module Io
2359
2323
 
2360
2324
  end
2361
2325
 
2326
+ class TierDefaults
2327
+
2328
+ def initialize(client)
2329
+ @client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
2330
+ end
2331
+
2332
+ def get(organization, incoming={})
2333
+ HttpClient::Preconditions.assert_class('organization', organization, String)
2334
+ opts = HttpClient::Helper.symbolize_keys(incoming)
2335
+ query = {
2336
+ :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
2337
+ :experience => (x = opts.delete(:experience); x.nil? ? nil : HttpClient::Preconditions.assert_class('experience', x, Array).map { |v| HttpClient::Preconditions.assert_class('experience', v, String) }),
2338
+ :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
2339
+ :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
2340
+ :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String)
2341
+ }.delete_if { |k, v| v.nil? }
2342
+ r = @client.request("/#{CGI.escape(organization)}/tier_defaults").with_query(query).get
2343
+ r.map { |x| ::Io::Flow::V0::Models::TierDefault.new(x) }
2344
+ end
2345
+
2346
+ def post(organization, tier_default_form)
2347
+ HttpClient::Preconditions.assert_class('organization', organization, String)
2348
+ HttpClient::Preconditions.assert_class('tier_default_form', tier_default_form, ::Io::Flow::V0::Models::TierDefaultForm)
2349
+ r = @client.request("/#{CGI.escape(organization)}/tier_defaults").with_json(tier_default_form.to_json).post
2350
+ ::Io::Flow::V0::Models::TierDefault.new(r)
2351
+ end
2352
+
2353
+ def get_by_id(organization, id)
2354
+ HttpClient::Preconditions.assert_class('organization', organization, String)
2355
+ HttpClient::Preconditions.assert_class('id', id, String)
2356
+ r = @client.request("/#{CGI.escape(organization)}/tier_defaults/#{CGI.escape(id)}").get
2357
+ ::Io::Flow::V0::Models::TierDefault.new(r)
2358
+ end
2359
+
2360
+ def get_versions(organization, incoming={})
2361
+ HttpClient::Preconditions.assert_class('organization', organization, String)
2362
+ opts = HttpClient::Helper.symbolize_keys(incoming)
2363
+ query = {
2364
+ :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
2365
+ :tier_default => (x = opts.delete(:tier_default); x.nil? ? nil : HttpClient::Preconditions.assert_class('tier_default', x, Array).map { |v| HttpClient::Preconditions.assert_class('tier_default', v, String) }),
2366
+ :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
2367
+ :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
2368
+ :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "journal_timestamp" : x), String)
2369
+ }.delete_if { |k, v| v.nil? }
2370
+ r = @client.request("/#{CGI.escape(organization)}/tier_defaults/versions").with_query(query).get
2371
+ r.map { |x| ::Io::Flow::V0::Models::TierDefaultVersion.new(x) }
2372
+ end
2373
+
2374
+ end
2375
+
2362
2376
  class Trackings
2363
2377
 
2364
2378
  def initialize(client)
@@ -5103,13 +5117,12 @@ module Io
5103
5117
  # Rule outcome where shipping surfaced in quote is actual cost of the service
5104
5118
  class AtCost < TierRuleOutcome
5105
5119
 
5106
- attr_reader :at_cost
5120
+ attr_reader :ignore
5107
5121
 
5108
5122
  def initialize(incoming={})
5109
5123
  super(:name => TierRuleOutcome::Types::AT_COST)
5110
5124
  opts = HttpClient::Helper.symbolize_keys(incoming)
5111
- HttpClient::Preconditions.require_keys(opts, [:at_cost], 'AtCost')
5112
- @at_cost = HttpClient::Preconditions.assert_class('at_cost', opts.delete(:at_cost), String)
5125
+ @ignore = (x = opts.delete(:ignore); x.nil? ? nil : HttpClient::Preconditions.assert_class('ignore', x, String))
5113
5126
  end
5114
5127
 
5115
5128
  def to_json
@@ -5122,7 +5135,7 @@ module Io
5122
5135
 
5123
5136
  def subtype_to_hash
5124
5137
  {
5125
- :at_cost => at_cost
5138
+ :ignore => ignore
5126
5139
  }
5127
5140
  end
5128
5141
 
@@ -5259,18 +5272,18 @@ module Io
5259
5272
  # capture up to the amount of the authorization.
5260
5273
  class Authorization
5261
5274
 
5262
- attr_reader :id, :reference, :card, :amount, :currency, :customer, :metadata, :shipping, :ip, :cvv, :details
5275
+ attr_reader :id, :reference, :card, :amount, :currency, :customer, :attributes, :shipping, :ip, :cvv, :details
5263
5276
 
5264
5277
  def initialize(incoming={})
5265
5278
  opts = HttpClient::Helper.symbolize_keys(incoming)
5266
- HttpClient::Preconditions.require_keys(opts, [:id, :card, :amount, :currency, :customer, :metadata, :details], 'Authorization')
5279
+ HttpClient::Preconditions.require_keys(opts, [:id, :card, :amount, :currency, :customer, :attributes, :details], 'Authorization')
5267
5280
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
5268
5281
  @reference = (x = opts.delete(:reference); x.nil? ? nil : HttpClient::Preconditions.assert_class('reference', x, String))
5269
5282
  @card = (x = opts.delete(:card); x.is_a?(::Io::Flow::V0::Models::CardReference) ? x : ::Io::Flow::V0::Models::CardReference.new(x))
5270
5283
  @amount = HttpClient::Preconditions.assert_class('amount', HttpClient::Helper.to_big_decimal(opts.delete(:amount)), BigDecimal)
5271
5284
  @currency = HttpClient::Preconditions.assert_class('currency', opts.delete(:currency), String)
5272
5285
  @customer = (x = opts.delete(:customer); x.is_a?(::Io::Flow::V0::Models::Customer) ? x : ::Io::Flow::V0::Models::Customer.new(x))
5273
- @metadata = HttpClient::Preconditions.assert_class('metadata', opts.delete(:metadata), Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('metadata', d[1], String); h }
5286
+ @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 }
5274
5287
  @shipping = (x = opts.delete(:shipping); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Location) ? x : ::Io::Flow::V0::Models::Location.new(x)))
5275
5288
  @ip = (x = opts.delete(:ip); x.nil? ? nil : HttpClient::Preconditions.assert_class('ip', x, String))
5276
5289
  @cvv = (x = opts.delete(:cvv); x.nil? ? nil : HttpClient::Preconditions.assert_class('cvv', x, String))
@@ -5293,7 +5306,7 @@ module Io
5293
5306
  :amount => amount,
5294
5307
  :currency => currency,
5295
5308
  :customer => customer.to_hash,
5296
- :metadata => metadata,
5309
+ :attributes => attributes,
5297
5310
  :shipping => shipping.nil? ? nil : shipping.to_hash,
5298
5311
  :ip => ip,
5299
5312
  :cvv => cvv,
@@ -5369,7 +5382,7 @@ module Io
5369
5382
  # capture up to the amount of the authorization.
5370
5383
  class AuthorizationForm
5371
5384
 
5372
- attr_reader :reference, :token, :amount, :currency, :customer, :cvv, :metadata, :shipping, :ip
5385
+ attr_reader :reference, :token, :amount, :currency, :customer, :cvv, :attributes, :shipping, :ip
5373
5386
 
5374
5387
  def initialize(incoming={})
5375
5388
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -5380,7 +5393,7 @@ module Io
5380
5393
  @currency = HttpClient::Preconditions.assert_class('currency', opts.delete(:currency), String)
5381
5394
  @customer = (x = opts.delete(:customer); x.is_a?(::Io::Flow::V0::Models::Customer) ? x : ::Io::Flow::V0::Models::Customer.new(x))
5382
5395
  @cvv = (x = opts.delete(:cvv); x.nil? ? nil : HttpClient::Preconditions.assert_class('cvv', x, String))
5383
- @metadata = (x = opts.delete(:metadata); x.nil? ? nil : HttpClient::Preconditions.assert_class('metadata', x, Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('metadata', d[1], String); h })
5396
+ @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 })
5384
5397
  @shipping = (x = opts.delete(:shipping); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Location) ? x : ::Io::Flow::V0::Models::Location.new(x)))
5385
5398
  @ip = (x = opts.delete(:ip); x.nil? ? nil : HttpClient::Preconditions.assert_class('ip', x, String))
5386
5399
  end
@@ -5401,7 +5414,7 @@ module Io
5401
5414
  :currency => currency,
5402
5415
  :customer => customer.to_hash,
5403
5416
  :cvv => cvv,
5404
- :metadata => metadata.nil? ? nil : metadata,
5417
+ :attributes => attributes.nil? ? nil : attributes,
5405
5418
  :shipping => shipping.nil? ? nil : shipping.to_hash,
5406
5419
  :ip => ip
5407
5420
  }
@@ -6766,7 +6779,7 @@ module Io
6766
6779
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
6767
6780
  @cost = (x = opts.delete(:cost); x.is_a?(::Io::Flow::V0::Models::Price) ? x : ::Io::Flow::V0::Models::Price.new(x))
6768
6781
  @price = (x = opts.delete(:price); x.is_a?(::Io::Flow::V0::Models::Price) ? x : ::Io::Flow::V0::Models::Price.new(x))
6769
- @service = (x = opts.delete(:service); x.is_a?(::Io::Flow::V0::Models::Service) ? x : ::Io::Flow::V0::Models::Service.new(x))
6782
+ @service = (x = opts.delete(:service); x.is_a?(::Io::Flow::V0::Models::ServiceSummary) ? x : ::Io::Flow::V0::Models::ServiceSummary.new(x))
6770
6783
  @tier = (x = opts.delete(:tier); x.is_a?(::Io::Flow::V0::Models::TierReference) ? x : ::Io::Flow::V0::Models::TierReference.new(x))
6771
6784
  @window = (x = opts.delete(:window); x.is_a?(::Io::Flow::V0::Models::DatetimeRange) ? x : ::Io::Flow::V0::Models::DatetimeRange.new(x))
6772
6785
  end
@@ -7511,47 +7524,15 @@ module Io
7511
7524
 
7512
7525
  end
7513
7526
 
7514
- # Flow internal model containing an item's origin and classified harmonization
7515
- # code (6 digit)
7516
- class Flow
7517
-
7518
- attr_reader :origin, :function, :hs6
7519
-
7520
- def initialize(incoming={})
7521
- opts = HttpClient::Helper.symbolize_keys(incoming)
7522
- @origin = (x = opts.delete(:origin); x.nil? ? nil : HttpClient::Preconditions.assert_class('origin', x, String))
7523
- @function = (x = opts.delete(:function); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ExpandableFunction) ? x : ::Io::Flow::V0::Models::ExpandableFunction.from_json(x)))
7524
- @hs6 = (x = opts.delete(:hs6); x.nil? ? nil : HttpClient::Preconditions.assert_class('hs6', x, String))
7525
- end
7526
-
7527
- def to_json
7528
- JSON.dump(to_hash)
7529
- end
7530
-
7531
- def copy(incoming={})
7532
- Flow.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
7533
- end
7534
-
7535
- def to_hash
7536
- {
7537
- :origin => origin,
7538
- :function => function.nil? ? nil : function.to_hash,
7539
- :hs6 => hs6
7540
- }
7541
- end
7542
-
7543
- end
7544
-
7545
7527
  # Rule outcome where shipping surfaced in quote is free
7546
7528
  class FreeShipping < TierRuleOutcome
7547
7529
 
7548
- attr_reader :free_shipping
7530
+ attr_reader :ignore
7549
7531
 
7550
7532
  def initialize(incoming={})
7551
7533
  super(:name => TierRuleOutcome::Types::FREE_SHIPPING)
7552
7534
  opts = HttpClient::Helper.symbolize_keys(incoming)
7553
- HttpClient::Preconditions.require_keys(opts, [:free_shipping], 'FreeShipping')
7554
- @free_shipping = HttpClient::Preconditions.assert_class('free_shipping', opts.delete(:free_shipping), String)
7535
+ @ignore = (x = opts.delete(:ignore); x.nil? ? nil : HttpClient::Preconditions.assert_class('ignore', x, String))
7555
7536
  end
7556
7537
 
7557
7538
  def to_json
@@ -7564,7 +7545,7 @@ module Io
7564
7545
 
7565
7546
  def subtype_to_hash
7566
7547
  {
7567
- :free_shipping => free_shipping
7548
+ :ignore => ignore
7568
7549
  }
7569
7550
  end
7570
7551
 
@@ -7856,7 +7837,7 @@ module Io
7856
7837
  # assigned, codes will be available via the hs6 and hs10 resources
7857
7838
  class HarmonizedItem
7858
7839
 
7859
- attr_reader :id, :number, :name, :description, :categories, :metadata
7840
+ attr_reader :id, :number, :name, :description, :categories, :attributes
7860
7841
 
7861
7842
  def initialize(incoming={})
7862
7843
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -7866,7 +7847,7 @@ module Io
7866
7847
  @name = HttpClient::Preconditions.assert_class('name', opts.delete(:name), String)
7867
7848
  @description = (x = opts.delete(:description); x.nil? ? nil : HttpClient::Preconditions.assert_class('description', x, String))
7868
7849
  @categories = HttpClient::Preconditions.assert_class('categories', (x = opts.delete(:categories); x.nil? ? [] : x), Array).map { |v| HttpClient::Preconditions.assert_class('categories', v, String) }
7869
- @metadata = HttpClient::Preconditions.assert_class('metadata', (x = opts.delete(:metadata); x.nil? ? {} : x), Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('metadata', d[1], String); h }
7850
+ @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 }
7870
7851
  end
7871
7852
 
7872
7853
  def to_json
@@ -7884,7 +7865,7 @@ module Io
7884
7865
  :name => name,
7885
7866
  :description => description,
7886
7867
  :categories => categories,
7887
- :metadata => metadata
7868
+ :attributes => attributes
7888
7869
  }
7889
7870
  end
7890
7871
 
@@ -7991,7 +7972,7 @@ module Io
7991
7972
 
7992
7973
  class HarmonizedItemForm
7993
7974
 
7994
- attr_reader :name, :number, :categories, :description, :metadata
7975
+ attr_reader :name, :number, :categories, :description, :attributes
7995
7976
 
7996
7977
  def initialize(incoming={})
7997
7978
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -8000,7 +7981,7 @@ module Io
8000
7981
  @number = HttpClient::Preconditions.assert_class('number', opts.delete(:number), String)
8001
7982
  @categories = (x = opts.delete(:categories); x.nil? ? nil : HttpClient::Preconditions.assert_class('categories', x, Array).map { |v| HttpClient::Preconditions.assert_class('categories', v, String) })
8002
7983
  @description = (x = opts.delete(:description); x.nil? ? nil : HttpClient::Preconditions.assert_class('description', x, String))
8003
- @metadata = (x = opts.delete(:metadata); x.nil? ? nil : HttpClient::Preconditions.assert_class('metadata', x, Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('metadata', d[1], String); h })
7984
+ @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 })
8004
7985
  end
8005
7986
 
8006
7987
  def to_json
@@ -8017,7 +7998,7 @@ module Io
8017
7998
  :number => number,
8018
7999
  :categories => categories.nil? ? nil : categories,
8019
8000
  :description => description,
8020
- :metadata => metadata.nil? ? nil : metadata
8001
+ :attributes => attributes.nil? ? nil : attributes
8021
8002
  }
8022
8003
  end
8023
8004
 
@@ -8025,7 +8006,7 @@ module Io
8025
8006
 
8026
8007
  class HarmonizedItemPutForm
8027
8008
 
8028
- attr_reader :name, :categories, :description, :metadata
8009
+ attr_reader :name, :categories, :description, :attributes
8029
8010
 
8030
8011
  def initialize(incoming={})
8031
8012
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -8033,7 +8014,7 @@ module Io
8033
8014
  @name = HttpClient::Preconditions.assert_class('name', opts.delete(:name), String)
8034
8015
  @categories = (x = opts.delete(:categories); x.nil? ? nil : HttpClient::Preconditions.assert_class('categories', x, Array).map { |v| HttpClient::Preconditions.assert_class('categories', v, String) })
8035
8016
  @description = (x = opts.delete(:description); x.nil? ? nil : HttpClient::Preconditions.assert_class('description', x, String))
8036
- @metadata = (x = opts.delete(:metadata); x.nil? ? nil : HttpClient::Preconditions.assert_class('metadata', x, Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('metadata', d[1], String); h })
8017
+ @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 })
8037
8018
  end
8038
8019
 
8039
8020
  def to_json
@@ -8049,7 +8030,7 @@ module Io
8049
8030
  :name => name,
8050
8031
  :categories => categories.nil? ? nil : categories,
8051
8032
  :description => description,
8052
- :metadata => metadata.nil? ? nil : metadata
8033
+ :attributes => attributes.nil? ? nil : attributes
8053
8034
  }
8054
8035
  end
8055
8036
 
@@ -8877,7 +8858,7 @@ module Io
8877
8858
  # many clients, this will map to a Sku.
8878
8859
  class Item
8879
8860
 
8880
- attr_reader :id, :number, :locale, :name, :price, :categories, :description, :attributes, :dimensions, :images, :flow, :local
8861
+ attr_reader :id, :number, :locale, :name, :price, :categories, :description, :attributes, :dimensions, :images, :local
8881
8862
 
8882
8863
  def initialize(incoming={})
8883
8864
  opts = HttpClient::Helper.symbolize_keys(incoming)
@@ -8892,7 +8873,6 @@ module Io
8892
8873
  @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 }
8893
8874
  @dimensions = (x = opts.delete(:dimensions); x.is_a?(::Io::Flow::V0::Models::Dimensions) ? x : ::Io::Flow::V0::Models::Dimensions.new(x))
8894
8875
  @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)) }
8895
- @flow = (x = opts.delete(:flow); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Flow) ? x : ::Io::Flow::V0::Models::Flow.new(x)))
8896
8876
  @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)))
8897
8877
  end
8898
8878
 
@@ -8916,7 +8896,6 @@ module Io
8916
8896
  :attributes => attributes,
8917
8897
  :dimensions => dimensions.to_hash,
8918
8898
  :images => images.map { |o| o.to_hash },
8919
- :flow => flow.nil? ? nil : flow.to_hash,
8920
8899
  :local => local.nil? ? nil : local.to_hash
8921
8900
  }
8922
8901
  end
@@ -10672,14 +10651,15 @@ module Io
10672
10651
  # that delivery
10673
10652
  class Quote
10674
10653
 
10675
- attr_reader :id, :destination, :deliveries
10654
+ attr_reader :id, :destination, :deliveries, :selections
10676
10655
 
10677
10656
  def initialize(incoming={})
10678
10657
  opts = HttpClient::Helper.symbolize_keys(incoming)
10679
- HttpClient::Preconditions.require_keys(opts, [:id, :destination, :deliveries], 'Quote')
10658
+ HttpClient::Preconditions.require_keys(opts, [:id, :destination, :deliveries, :selections], 'Quote')
10680
10659
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
10681
10660
  @destination = (x = opts.delete(:destination); x.is_a?(::Io::Flow::V0::Models::Address) ? x : ::Io::Flow::V0::Models::Address.new(x))
10682
10661
  @deliveries = HttpClient::Preconditions.assert_class('deliveries', opts.delete(:deliveries), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::Delivery) ? x : ::Io::Flow::V0::Models::Delivery.new(x)) }
10662
+ @selections = HttpClient::Preconditions.assert_class('selections', opts.delete(:selections), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::DeliveryOptionReference) ? x : ::Io::Flow::V0::Models::DeliveryOptionReference.new(x)) }
10683
10663
  end
10684
10664
 
10685
10665
  def to_json
@@ -10694,7 +10674,8 @@ module Io
10694
10674
  {
10695
10675
  :id => id,
10696
10676
  :destination => destination.to_hash,
10697
- :deliveries => deliveries.map { |o| o.to_hash }
10677
+ :deliveries => deliveries.map { |o| o.to_hash },
10678
+ :selections => selections.map { |o| o.to_hash }
10698
10679
  }
10699
10680
  end
10700
10681
 
@@ -11249,7 +11230,7 @@ module Io
11249
11230
  opts = HttpClient::Helper.symbolize_keys(incoming)
11250
11231
  HttpClient::Preconditions.require_keys(opts, [:id, :service, :tracking_number], 'ShipmentLabel')
11251
11232
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
11252
- @service = (x = opts.delete(:service); x.is_a?(::Io::Flow::V0::Models::Service) ? x : ::Io::Flow::V0::Models::Service.new(x))
11233
+ @service = (x = opts.delete(:service); x.is_a?(::Io::Flow::V0::Models::ServiceSummary) ? x : ::Io::Flow::V0::Models::ServiceSummary.new(x))
11253
11234
  @tracking_number = HttpClient::Preconditions.assert_class('tracking_number', opts.delete(:tracking_number), String)
11254
11235
  @window = (x = opts.delete(:window); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::DatetimeRange) ? x : ::Io::Flow::V0::Models::DatetimeRange.new(x)))
11255
11236
  @pdf = (x = opts.delete(:pdf); x.nil? ? nil : HttpClient::Preconditions.assert_class('pdf', x, String))
@@ -11556,14 +11537,17 @@ module Io
11556
11537
 
11557
11538
  end
11558
11539
 
11540
+ # Represents information specific to an item in a given subcatalog
11559
11541
  class SubcatalogItem
11560
11542
 
11561
- attr_reader :id
11543
+ attr_reader :id, :item, :function
11562
11544
 
11563
11545
  def initialize(incoming={})
11564
11546
  opts = HttpClient::Helper.symbolize_keys(incoming)
11565
- HttpClient::Preconditions.require_keys(opts, [:id], 'SubcatalogItem')
11547
+ HttpClient::Preconditions.require_keys(opts, [:id, :item], 'SubcatalogItem')
11566
11548
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
11549
+ @item = (x = opts.delete(:item); x.is_a?(::Io::Flow::V0::Models::Item) ? x : ::Io::Flow::V0::Models::Item.new(x))
11550
+ @function = (x = opts.delete(:function); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ExpandableFunction) ? x : ::Io::Flow::V0::Models::ExpandableFunction.from_json(x)))
11567
11551
  end
11568
11552
 
11569
11553
  def to_json
@@ -11576,7 +11560,9 @@ module Io
11576
11560
 
11577
11561
  def to_hash
11578
11562
  {
11579
- :id => id
11563
+ :id => id,
11564
+ :item => item.to_hash,
11565
+ :function => function.nil? ? nil : function.to_hash
11580
11566
  }
11581
11567
  end
11582
11568
 
@@ -11794,6 +11780,101 @@ module Io
11794
11780
 
11795
11781
  end
11796
11782
 
11783
+ # Grouping of shipping tiers by experience to provide logical default
11784
+ # functionality.
11785
+ class TierDefault
11786
+
11787
+ attr_reader :id, :default_tier, :experience
11788
+
11789
+ def initialize(incoming={})
11790
+ opts = HttpClient::Helper.symbolize_keys(incoming)
11791
+ HttpClient::Preconditions.require_keys(opts, [:id, :default_tier, :experience], 'TierDefault')
11792
+ @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
11793
+ @default_tier = (x = opts.delete(:default_tier); x.is_a?(::Io::Flow::V0::Models::TierReference) ? x : ::Io::Flow::V0::Models::TierReference.new(x))
11794
+ @experience = (x = opts.delete(:experience); x.is_a?(::Io::Flow::V0::Models::FulfillmentExperienceReference) ? x : ::Io::Flow::V0::Models::FulfillmentExperienceReference.new(x))
11795
+ end
11796
+
11797
+ def to_json
11798
+ JSON.dump(to_hash)
11799
+ end
11800
+
11801
+ def copy(incoming={})
11802
+ TierDefault.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
11803
+ end
11804
+
11805
+ def to_hash
11806
+ {
11807
+ :id => id,
11808
+ :default_tier => default_tier.to_hash,
11809
+ :experience => experience.to_hash
11810
+ }
11811
+ end
11812
+
11813
+ end
11814
+
11815
+ # Form to set the defualt tier for a given experience
11816
+ class TierDefaultForm
11817
+
11818
+ attr_reader :default_tier, :currency, :experience
11819
+
11820
+ def initialize(incoming={})
11821
+ opts = HttpClient::Helper.symbolize_keys(incoming)
11822
+ HttpClient::Preconditions.require_keys(opts, [:default_tier, :currency, :experience], 'TierDefaultForm')
11823
+ @default_tier = HttpClient::Preconditions.assert_class('default_tier', opts.delete(:default_tier), String)
11824
+ @currency = HttpClient::Preconditions.assert_class('currency', opts.delete(:currency), String)
11825
+ @experience = HttpClient::Preconditions.assert_class('experience', opts.delete(:experience), String)
11826
+ end
11827
+
11828
+ def to_json
11829
+ JSON.dump(to_hash)
11830
+ end
11831
+
11832
+ def copy(incoming={})
11833
+ TierDefaultForm.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
11834
+ end
11835
+
11836
+ def to_hash
11837
+ {
11838
+ :default_tier => default_tier,
11839
+ :currency => currency,
11840
+ :experience => experience
11841
+ }
11842
+ end
11843
+
11844
+ end
11845
+
11846
+ class TierDefaultVersion
11847
+
11848
+ attr_reader :id, :timestamp, :type, :tier_default
11849
+
11850
+ def initialize(incoming={})
11851
+ opts = HttpClient::Helper.symbolize_keys(incoming)
11852
+ HttpClient::Preconditions.require_keys(opts, [:id, :timestamp, :type, :tier_default], 'TierDefaultVersion')
11853
+ @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
11854
+ @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
11855
+ @type = (x = opts.delete(:type); x.is_a?(::Io::Flow::V0::Models::ChangeType) ? x : ::Io::Flow::V0::Models::ChangeType.apply(x))
11856
+ @tier_default = (x = opts.delete(:tier_default); x.is_a?(::Io::Flow::V0::Models::TierDefault) ? x : ::Io::Flow::V0::Models::TierDefault.new(x))
11857
+ end
11858
+
11859
+ def to_json
11860
+ JSON.dump(to_hash)
11861
+ end
11862
+
11863
+ def copy(incoming={})
11864
+ TierDefaultVersion.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
11865
+ end
11866
+
11867
+ def to_hash
11868
+ {
11869
+ :id => id,
11870
+ :timestamp => timestamp,
11871
+ :type => type.value,
11872
+ :tier_default => tier_default.to_hash
11873
+ }
11874
+ end
11875
+
11876
+ end
11877
+
11797
11878
  # Service shipping tier available in this tier gorup. e.g. Standard tier,
11798
11879
  # Express tier, Economy tier
11799
11880
  class TierForm
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flowcommerce
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.18
4
+ version: 0.0.19
5
5
  platform: ruby
6
6
  authors:
7
7
  - Flow Commerce, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-26 00:00:00.000000000 Z
11
+ date: 2016-07-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json