flowcommerce 0.0.25 → 0.0.26

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: eaabfe7d15a1dfe0683a8dcccec7903143760c9b
4
- data.tar.gz: df56dd06659b9d0fad759576fd1877d06aae5629
3
+ metadata.gz: e98204cc3cfbdea5327930e9a5d14bc2e1296b08
4
+ data.tar.gz: 068456152943b1e9ecc1271472f0f516abe1aeab
5
5
  SHA512:
6
- metadata.gz: adff2e69a96ab37f44536f817c21e9e61e8fdf134d8fd9571034db617d3f21c5616978a873eb83d800a345d904791153fad489324463a7a976ef075294a7fb91
7
- data.tar.gz: db1b2581d303d76359e3c98d1261cd23dad718c49451133e3ed1c081bc1064dba811d7ca2cabe5b4f6bf23f89c2ecc9cd5d417a45a2aff0e30e20c5108f562cd
6
+ metadata.gz: cacfb3be1afec5231a458dc9a02517032b45cec056b5d18d0808da53465b6c557ff336a02a11069af6ed233c04d76df8cb8d372da0072196ed4a96ce7fa87dfc
7
+ data.tar.gz: 670dc71ce8bd8f3e52f3e3a0903a564078761ff65f9ce9ae12b4042bad633ee17f2381b0e9bae521a9850dce81782c68cc499a2446fcf0abc6188f1b1a076eab
@@ -1,6 +1,6 @@
1
1
  # Generated by apidoc - http://www.apidoc.me
2
- # Service version: 0.0.78
3
- # apidoc:0.11.33 http://www.apidoc.me/flow/api/0.0.78/ruby_client
2
+ # Service version: 0.0.82
3
+ # apidoc:0.11.33 http://www.apidoc.me/flow/api/0.0.82/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.33 http://www.apidoc.me/flow/api/0.0.78/ruby_client' unless defined?(Constants::USER_AGENT)
29
- VERSION = '0.0.78' unless defined?(Constants::VERSION)
28
+ USER_AGENT = 'apidoc:0.11.33 http://www.apidoc.me/flow/api/0.0.82/ruby_client' unless defined?(Constants::USER_AGENT)
29
+ VERSION = '0.0.82' unless defined?(Constants::VERSION)
30
30
  VERSION_MAJOR = 0 unless defined?(VERSION_MAJOR)
31
31
 
32
32
  end
@@ -89,10 +89,6 @@ module Io
89
89
  @subcatalog_items ||= ::Io::Flow::V0::Clients::SubcatalogItems.new(self)
90
90
  end
91
91
 
92
- def flow_currency_settings
93
- @flow_currency_settings ||= ::Io::Flow::V0::Clients::FlowCurrencySettings.new(self)
94
- end
95
-
96
92
  def item_functions
97
93
  @item_functions ||= ::Io::Flow::V0::Clients::ItemFunctions.new(self)
98
94
  end
@@ -209,6 +205,10 @@ module Io
209
205
  @ratecards ||= ::Io::Flow::V0::Clients::Ratecards.new(self)
210
206
  end
211
207
 
208
+ def ratecard_estimates
209
+ @ratecard_estimates ||= ::Io::Flow::V0::Clients::RatecardEstimates.new(self)
210
+ end
211
+
212
212
  def ratecard_lanes
213
213
  @ratecard_lanes ||= ::Io::Flow::V0::Clients::RatecardLanes.new(self)
214
214
  end
@@ -1111,60 +1111,6 @@ module Io
1111
1111
 
1112
1112
  end
1113
1113
 
1114
- class FlowCurrencySettings
1115
-
1116
- def initialize(client)
1117
- @client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
1118
- end
1119
-
1120
- # Search Flow currency settings. Always paginated.
1121
- def get(organization, incoming={})
1122
- HttpClient::Preconditions.assert_class('organization', organization, String)
1123
- opts = HttpClient::Helper.symbolize_keys(incoming)
1124
- query = {
1125
- :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
1126
- :base => (x = opts.delete(:base); x.nil? ? nil : HttpClient::Preconditions.assert_class('base', x, String)),
1127
- :target => (x = opts.delete(:target); x.nil? ? nil : HttpClient::Preconditions.assert_class('target', x, String)),
1128
- :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
1129
- :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
1130
- :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String)
1131
- }.delete_if { |k, v| v.nil? }
1132
- r = @client.request("/#{CGI.escape(organization)}/flow/settings").with_query(query).get
1133
- r.map { |x| ::Io::Flow::V0::Models::FlowCurrencySetting.new(x) }
1134
- end
1135
-
1136
- # Create Flow currency settings.
1137
- def post(organization, flow_currency_setting_form)
1138
- HttpClient::Preconditions.assert_class('organization', organization, String)
1139
- HttpClient::Preconditions.assert_class('flow_currency_setting_form', flow_currency_setting_form, ::Io::Flow::V0::Models::FlowCurrencySettingForm)
1140
- r = @client.request("/#{CGI.escape(organization)}/flow/settings").with_json(flow_currency_setting_form.to_json).post
1141
- ::Io::Flow::V0::Models::FlowCurrencySetting.new(r)
1142
- end
1143
-
1144
- # Create Flow currency settings, or update if they already exist.
1145
- def put(organization, flow_currency_setting_form)
1146
- HttpClient::Preconditions.assert_class('organization', organization, String)
1147
- HttpClient::Preconditions.assert_class('flow_currency_setting_form', flow_currency_setting_form, ::Io::Flow::V0::Models::FlowCurrencySettingForm)
1148
- r = @client.request("/#{CGI.escape(organization)}/flow/settings").with_json(flow_currency_setting_form.to_json).put
1149
- ::Io::Flow::V0::Models::FlowCurrencySetting.new(r)
1150
- end
1151
-
1152
- # Provides visibility into recent changes of each object, including deletion.
1153
- def get_versions(organization, incoming={})
1154
- HttpClient::Preconditions.assert_class('organization', organization, String)
1155
- opts = HttpClient::Helper.symbolize_keys(incoming)
1156
- query = {
1157
- :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
1158
- :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
1159
- :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
1160
- :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "journal_timestamp" : x), String)
1161
- }.delete_if { |k, v| v.nil? }
1162
- r = @client.request("/#{CGI.escape(organization)}/flow/settings/versions").with_query(query).get
1163
- r.map { |x| ::Io::Flow::V0::Models::FlowCurrencySettingVersion.new(x) }
1164
- end
1165
-
1166
- end
1167
-
1168
1114
  class ItemFunctions
1169
1115
 
1170
1116
  def initialize(client)
@@ -1253,7 +1199,7 @@ module Io
1253
1199
  :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
1254
1200
  :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String)
1255
1201
  }.delete_if { |k, v| v.nil? }
1256
- r = @client.request("/#{CGI.escape(organization)}/settings").with_query(query).get
1202
+ r = @client.request("/#{CGI.escape(organization)}/currency/settings").with_query(query).get
1257
1203
  r.map { |x| ::Io::Flow::V0::Models::OrganizationCurrencySetting.new(x) }
1258
1204
  end
1259
1205
 
@@ -1261,7 +1207,7 @@ module Io
1261
1207
  def post(organization, organization_currency_setting_form)
1262
1208
  HttpClient::Preconditions.assert_class('organization', organization, String)
1263
1209
  HttpClient::Preconditions.assert_class('organization_currency_setting_form', organization_currency_setting_form, ::Io::Flow::V0::Models::OrganizationCurrencySettingForm)
1264
- r = @client.request("/#{CGI.escape(organization)}/settings").with_json(organization_currency_setting_form.to_json).post
1210
+ r = @client.request("/#{CGI.escape(organization)}/currency/settings").with_json(organization_currency_setting_form.to_json).post
1265
1211
  ::Io::Flow::V0::Models::OrganizationCurrencySetting.new(r)
1266
1212
  end
1267
1213
 
@@ -1269,7 +1215,7 @@ module Io
1269
1215
  def put(organization, organization_currency_setting_form)
1270
1216
  HttpClient::Preconditions.assert_class('organization', organization, String)
1271
1217
  HttpClient::Preconditions.assert_class('organization_currency_setting_form', organization_currency_setting_form, ::Io::Flow::V0::Models::OrganizationCurrencySettingForm)
1272
- r = @client.request("/#{CGI.escape(organization)}/settings").with_json(organization_currency_setting_form.to_json).put
1218
+ r = @client.request("/#{CGI.escape(organization)}/currency/settings").with_json(organization_currency_setting_form.to_json).put
1273
1219
  ::Io::Flow::V0::Models::OrganizationCurrencySetting.new(r)
1274
1220
  end
1275
1221
 
@@ -1283,7 +1229,7 @@ module Io
1283
1229
  :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
1284
1230
  :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "journal_timestamp" : x), String)
1285
1231
  }.delete_if { |k, v| v.nil? }
1286
- r = @client.request("/#{CGI.escape(organization)}/settings/versions").with_query(query).get
1232
+ r = @client.request("/#{CGI.escape(organization)}/currency/settings/versions").with_query(query).get
1287
1233
  r.map { |x| ::Io::Flow::V0::Models::OrganizationCurrencySettingVersion.new(x) }
1288
1234
  end
1289
1235
 
@@ -1301,13 +1247,13 @@ module Io
1301
1247
  opts = HttpClient::Helper.symbolize_keys(incoming)
1302
1248
  query = {
1303
1249
  :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }),
1304
- :base => (x = opts.delete(:base); x.nil? ? nil : HttpClient::Preconditions.assert_class('base', x, String)),
1250
+ :base => (x = opts.delete(:base); x.nil? ? nil : HttpClient::Preconditions.assert_class('base', x, Array).map { |v| HttpClient::Preconditions.assert_class('base', v, String) }),
1305
1251
  :target => (x = opts.delete(:target); x.nil? ? nil : HttpClient::Preconditions.assert_class('target', x, String)),
1306
1252
  :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
1307
1253
  :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
1308
1254
  :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String)
1309
1255
  }.delete_if { |k, v| v.nil? }
1310
- r = @client.request("/#{CGI.escape(organization)}/rates").with_query(query).get
1256
+ r = @client.request("/#{CGI.escape(organization)}/currency/rates").with_query(query).get
1311
1257
  r.map { |x| ::Io::Flow::V0::Models::Rate.new(x) }
1312
1258
  end
1313
1259
 
@@ -1315,7 +1261,7 @@ module Io
1315
1261
  def post(organization, rate_form)
1316
1262
  HttpClient::Preconditions.assert_class('organization', organization, String)
1317
1263
  HttpClient::Preconditions.assert_class('rate_form', rate_form, ::Io::Flow::V0::Models::RateForm)
1318
- r = @client.request("/#{CGI.escape(organization)}/rates").with_json(rate_form.to_json).post
1264
+ r = @client.request("/#{CGI.escape(organization)}/currency/rates").with_json(rate_form.to_json).post
1319
1265
  ::Io::Flow::V0::Models::Rate.new(r)
1320
1266
  end
1321
1267
 
@@ -1324,7 +1270,7 @@ module Io
1324
1270
  def put(organization, rate_form)
1325
1271
  HttpClient::Preconditions.assert_class('organization', organization, String)
1326
1272
  HttpClient::Preconditions.assert_class('rate_form', rate_form, ::Io::Flow::V0::Models::RateForm)
1327
- r = @client.request("/#{CGI.escape(organization)}/rates").with_json(rate_form.to_json).put
1273
+ r = @client.request("/#{CGI.escape(organization)}/currency/rates").with_json(rate_form.to_json).put
1328
1274
  ::Io::Flow::V0::Models::Rate.new(r)
1329
1275
  end
1330
1276
 
@@ -1340,7 +1286,7 @@ module Io
1340
1286
  :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
1341
1287
  :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "journal_timestamp" : x), String)
1342
1288
  }.delete_if { |k, v| v.nil? }
1343
- r = @client.request("/#{CGI.escape(organization)}/rates/versions").with_query(query).get
1289
+ r = @client.request("/#{CGI.escape(organization)}/currency/rates/versions").with_query(query).get
1344
1290
  r.map { |x| ::Io::Flow::V0::Models::RateVersion.new(x) }
1345
1291
  end
1346
1292
 
@@ -2583,6 +2529,41 @@ module Io
2583
2529
 
2584
2530
  end
2585
2531
 
2532
+ class RatecardEstimates
2533
+
2534
+ def initialize(client)
2535
+ @client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
2536
+ end
2537
+
2538
+ # Endpoint to get shipment cost estimates based on applicable rate cards. An
2539
+ # origin and destination address must be provided. Final amounts are based on
2540
+ # either gravitational weight or dimensional weight. When estimating based off
2541
+ # gravitational weight, the weight field must be set. When estimating based
2542
+ # off dimensional weight, then length/width/depth must be set. For either one,
2543
+ # the appropriate unit of measurement must be given.
2544
+ def get(organization, incoming={})
2545
+ HttpClient::Preconditions.assert_class('organization', organization, String)
2546
+ opts = HttpClient::Helper.symbolize_keys(incoming)
2547
+ query = {
2548
+ :origin => (x = opts.delete(:origin); x.nil? ? nil : HttpClient::Preconditions.assert_class('origin', x, String)),
2549
+ :destination => (x = opts.delete(:destination); x.nil? ? nil : HttpClient::Preconditions.assert_class('destination', x, String)),
2550
+ :weight_unit => (x = opts.delete(:weight_unit); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::UnitOfMeasurement) ? x : ::Io::Flow::V0::Models::UnitOfMeasurement.apply(x)).value),
2551
+ :distance_unit => (x = opts.delete(:distance_unit); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::UnitOfMeasurement) ? x : ::Io::Flow::V0::Models::UnitOfMeasurement.apply(x)).value),
2552
+ :service => (x = opts.delete(:service); x.nil? ? nil : HttpClient::Preconditions.assert_class('service', x, String)),
2553
+ :weight => (x = opts.delete(:weight); x.nil? ? nil : HttpClient::Preconditions.assert_class('weight', x, Numeric)),
2554
+ :length => (x = opts.delete(:length); x.nil? ? nil : HttpClient::Preconditions.assert_class('length', x, Numeric)),
2555
+ :width => (x = opts.delete(:width); x.nil? ? nil : HttpClient::Preconditions.assert_class('width', x, Numeric)),
2556
+ :depth => (x = opts.delete(:depth); x.nil? ? nil : HttpClient::Preconditions.assert_class('depth', x, Numeric)),
2557
+ :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer),
2558
+ :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer),
2559
+ :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String)
2560
+ }.delete_if { |k, v| v.nil? }
2561
+ r = @client.request("/#{CGI.escape(organization)}/ratecard_estimates").with_query(query).get
2562
+ r.map { |x| ::Io::Flow::V0::Models::RatecardEstimate.new(x) }
2563
+ end
2564
+
2565
+ end
2566
+
2586
2567
  class RatecardLanes
2587
2568
 
2588
2569
  def initialize(client)
@@ -6960,7 +6941,7 @@ module Io
6960
6941
  @name = HttpClient::Preconditions.assert_class('name', opts.delete(:name), String)
6961
6942
  @categories = HttpClient::Preconditions.assert_class('categories', opts.delete(:categories), Array).map { |v| HttpClient::Preconditions.assert_class('categories', v, String) }
6962
6943
  @experiences = HttpClient::Preconditions.assert_class('experiences', opts.delete(:experiences), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ExperienceSummary) ? x : ::Io::Flow::V0::Models::ExperienceSummary.new(x)) }
6963
- @attributes = HttpClient::Preconditions.assert_class('attributes', opts.delete(:attributes), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::DocumentAttribute) ? x : ::Io::Flow::V0::Models::DocumentAttribute.new(x)) }
6944
+ @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 }
6964
6945
  end
6965
6946
 
6966
6947
  def to_json
@@ -6977,7 +6958,7 @@ module Io
6977
6958
  :name => name,
6978
6959
  :categories => categories,
6979
6960
  :experiences => experiences.map { |o| o.to_hash },
6980
- :attributes => attributes.map { |o| o.to_hash }
6961
+ :attributes => attributes
6981
6962
  }
6982
6963
  end
6983
6964
 
@@ -7900,34 +7881,6 @@ module Io
7900
7881
 
7901
7882
  end
7902
7883
 
7903
- class DocumentAttribute
7904
-
7905
- attr_reader :name, :value
7906
-
7907
- def initialize(incoming={})
7908
- opts = HttpClient::Helper.symbolize_keys(incoming)
7909
- HttpClient::Preconditions.require_keys(opts, [:name, :value], 'DocumentAttribute')
7910
- @name = HttpClient::Preconditions.assert_class('name', opts.delete(:name), String)
7911
- @value = HttpClient::Preconditions.assert_class('value', opts.delete(:value), String)
7912
- end
7913
-
7914
- def to_json
7915
- JSON.dump(to_hash)
7916
- end
7917
-
7918
- def copy(incoming={})
7919
- DocumentAttribute.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
7920
- end
7921
-
7922
- def to_hash
7923
- {
7924
- :name => name,
7925
- :value => value
7926
- }
7927
- end
7928
-
7929
- end
7930
-
7931
7884
  # Represents a duration of time.
7932
7885
  class Duration
7933
7886
 
@@ -8350,104 +8303,6 @@ module Io
8350
8303
 
8351
8304
  end
8352
8305
 
8353
- class FlowCurrencySetting
8354
-
8355
- attr_reader :id, :base, :target, :margin, :rate_lock
8356
-
8357
- def initialize(incoming={})
8358
- opts = HttpClient::Helper.symbolize_keys(incoming)
8359
- HttpClient::Preconditions.require_keys(opts, [:id, :base, :target, :margin, :rate_lock], 'FlowCurrencySetting')
8360
- @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
8361
- @base = HttpClient::Preconditions.assert_class('base', opts.delete(:base), String)
8362
- @target = HttpClient::Preconditions.assert_class('target', opts.delete(:target), String)
8363
- @margin = HttpClient::Preconditions.assert_class('margin', HttpClient::Helper.to_big_decimal(opts.delete(:margin)), BigDecimal)
8364
- @rate_lock = (x = opts.delete(:rate_lock); x.is_a?(::Io::Flow::V0::Models::Duration) ? x : ::Io::Flow::V0::Models::Duration.new(x))
8365
- end
8366
-
8367
- def to_json
8368
- JSON.dump(to_hash)
8369
- end
8370
-
8371
- def copy(incoming={})
8372
- FlowCurrencySetting.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
8373
- end
8374
-
8375
- def to_hash
8376
- {
8377
- :id => id,
8378
- :base => base,
8379
- :target => target,
8380
- :margin => margin,
8381
- :rate_lock => rate_lock.to_hash
8382
- }
8383
- end
8384
-
8385
- end
8386
-
8387
- class FlowCurrencySettingForm
8388
-
8389
- attr_reader :base, :target, :margin, :rate_lock
8390
-
8391
- def initialize(incoming={})
8392
- opts = HttpClient::Helper.symbolize_keys(incoming)
8393
- HttpClient::Preconditions.require_keys(opts, [:base, :target, :margin, :rate_lock], 'FlowCurrencySettingForm')
8394
- @base = HttpClient::Preconditions.assert_class('base', opts.delete(:base), String)
8395
- @target = HttpClient::Preconditions.assert_class('target', opts.delete(:target), String)
8396
- @margin = HttpClient::Preconditions.assert_class('margin', HttpClient::Helper.to_big_decimal(opts.delete(:margin)), BigDecimal)
8397
- @rate_lock = (x = opts.delete(:rate_lock); x.is_a?(::Io::Flow::V0::Models::Duration) ? x : ::Io::Flow::V0::Models::Duration.new(x))
8398
- end
8399
-
8400
- def to_json
8401
- JSON.dump(to_hash)
8402
- end
8403
-
8404
- def copy(incoming={})
8405
- FlowCurrencySettingForm.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
8406
- end
8407
-
8408
- def to_hash
8409
- {
8410
- :base => base,
8411
- :target => target,
8412
- :margin => margin,
8413
- :rate_lock => rate_lock.to_hash
8414
- }
8415
- end
8416
-
8417
- end
8418
-
8419
- class FlowCurrencySettingVersion
8420
-
8421
- attr_reader :id, :timestamp, :type, :flow_currency_setting
8422
-
8423
- def initialize(incoming={})
8424
- opts = HttpClient::Helper.symbolize_keys(incoming)
8425
- HttpClient::Preconditions.require_keys(opts, [:id, :timestamp, :type, :flow_currency_setting], 'FlowCurrencySettingVersion')
8426
- @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
8427
- @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
8428
- @type = (x = opts.delete(:type); x.is_a?(::Io::Flow::V0::Models::ChangeType) ? x : ::Io::Flow::V0::Models::ChangeType.apply(x))
8429
- @flow_currency_setting = (x = opts.delete(:flow_currency_setting); x.is_a?(::Io::Flow::V0::Models::FlowCurrencySetting) ? x : ::Io::Flow::V0::Models::FlowCurrencySetting.new(x))
8430
- end
8431
-
8432
- def to_json
8433
- JSON.dump(to_hash)
8434
- end
8435
-
8436
- def copy(incoming={})
8437
- FlowCurrencySettingVersion.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
8438
- end
8439
-
8440
- def to_hash
8441
- {
8442
- :id => id,
8443
- :timestamp => timestamp,
8444
- :type => type.value,
8445
- :flow_currency_setting => flow_currency_setting.to_hash
8446
- }
8447
- end
8448
-
8449
- end
8450
-
8451
8306
  class FlowItemIndexMetadata
8452
8307
 
8453
8308
  attr_reader :status
@@ -12027,16 +11882,16 @@ module Io
12027
11882
  # time.
12028
11883
  class Rate
12029
11884
 
12030
- attr_reader :id, :base, :target, :effective_at, :total
11885
+ attr_reader :id, :base, :target, :effective_at, :value
12031
11886
 
12032
11887
  def initialize(incoming={})
12033
11888
  opts = HttpClient::Helper.symbolize_keys(incoming)
12034
- HttpClient::Preconditions.require_keys(opts, [:id, :base, :target, :effective_at, :total], 'Rate')
11889
+ HttpClient::Preconditions.require_keys(opts, [:id, :base, :target, :effective_at, :value], 'Rate')
12035
11890
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
12036
11891
  @base = HttpClient::Preconditions.assert_class('base', opts.delete(:base), String)
12037
11892
  @target = HttpClient::Preconditions.assert_class('target', opts.delete(:target), String)
12038
11893
  @effective_at = HttpClient::Preconditions.assert_class('effective_at', HttpClient::Helper.to_date_time_iso8601(opts.delete(:effective_at)), DateTime)
12039
- @total = HttpClient::Preconditions.assert_class('total', HttpClient::Helper.to_big_decimal(opts.delete(:total)), BigDecimal)
11894
+ @value = HttpClient::Preconditions.assert_class('value', HttpClient::Helper.to_big_decimal(opts.delete(:value)), BigDecimal)
12040
11895
  end
12041
11896
 
12042
11897
  def to_json
@@ -12053,7 +11908,7 @@ module Io
12053
11908
  :base => base,
12054
11909
  :target => target,
12055
11910
  :effective_at => effective_at,
12056
- :total => total
11911
+ :value => value
12057
11912
  }
12058
11913
  end
12059
11914
 
@@ -12159,6 +12014,44 @@ module Io
12159
12014
 
12160
12015
  end
12161
12016
 
12017
+ # Represents a summary of a cost estimate based on rate card data for an
12018
+ # origin/destination and weight, either gravitational or dimensional
12019
+ class RatecardEstimate
12020
+
12021
+ attr_reader :service, :shipment_window, :currency, :amount, :fees, :total
12022
+
12023
+ def initialize(incoming={})
12024
+ opts = HttpClient::Helper.symbolize_keys(incoming)
12025
+ HttpClient::Preconditions.require_keys(opts, [:service, :shipment_window, :currency, :amount, :fees, :total], 'RatecardEstimate')
12026
+ @service = (x = opts.delete(:service); x.is_a?(::Io::Flow::V0::Models::RatecardServiceReference) ? x : ::Io::Flow::V0::Models::RatecardServiceReference.new(x))
12027
+ @shipment_window = (x = opts.delete(:shipment_window); x.is_a?(::Io::Flow::V0::Models::ShipmentWindow) ? x : ::Io::Flow::V0::Models::ShipmentWindow.new(x))
12028
+ @currency = HttpClient::Preconditions.assert_class('currency', opts.delete(:currency), String)
12029
+ @amount = HttpClient::Preconditions.assert_class('amount', opts.delete(:amount), Numeric)
12030
+ @fees = HttpClient::Preconditions.assert_class('fees', opts.delete(:fees), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::RatecardFee) ? x : ::Io::Flow::V0::Models::RatecardFee.from_json(x)) }
12031
+ @total = HttpClient::Preconditions.assert_class('total', opts.delete(:total), Numeric)
12032
+ end
12033
+
12034
+ def to_json
12035
+ JSON.dump(to_hash)
12036
+ end
12037
+
12038
+ def copy(incoming={})
12039
+ RatecardEstimate.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
12040
+ end
12041
+
12042
+ def to_hash
12043
+ {
12044
+ :service => service.to_hash,
12045
+ :shipment_window => shipment_window.to_hash,
12046
+ :currency => currency,
12047
+ :amount => amount,
12048
+ :fees => fees.map { |o| o.to_hash },
12049
+ :total => total
12050
+ }
12051
+ end
12052
+
12053
+ end
12054
+
12162
12055
  class RatecardForm
12163
12056
 
12164
12057
  attr_reader :effective_at, :number, :origination_zones, :service
@@ -12195,11 +12088,11 @@ module Io
12195
12088
  # origin and destination zone
12196
12089
  class RatecardLane
12197
12090
 
12198
- attr_reader :id, :currency, :delivered_duty, :shipment_window, :destination, :dim_factor, :fees, :origin, :rates, :rounding, :weight_unit
12091
+ attr_reader :id, :currency, :delivered_duty, :shipment_window, :destination, :dim_factor, :fees, :origin, :service, :rates, :rounding, :weight_unit, :distance_unit
12199
12092
 
12200
12093
  def initialize(incoming={})
12201
12094
  opts = HttpClient::Helper.symbolize_keys(incoming)
12202
- HttpClient::Preconditions.require_keys(opts, [:id, :currency, :delivered_duty, :shipment_window, :destination, :dim_factor, :fees, :origin, :rates, :rounding, :weight_unit], 'RatecardLane')
12095
+ HttpClient::Preconditions.require_keys(opts, [:id, :currency, :delivered_duty, :shipment_window, :destination, :dim_factor, :fees, :origin, :service, :rates, :rounding, :weight_unit, :distance_unit], 'RatecardLane')
12203
12096
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
12204
12097
  @currency = HttpClient::Preconditions.assert_class('currency', opts.delete(:currency), String)
12205
12098
  @delivered_duty = (x = opts.delete(:delivered_duty); x.is_a?(::Io::Flow::V0::Models::DeliveredDuty) ? x : ::Io::Flow::V0::Models::DeliveredDuty.apply(x))
@@ -12208,9 +12101,11 @@ module Io
12208
12101
  @dim_factor = HttpClient::Preconditions.assert_class('dim_factor', opts.delete(:dim_factor), Numeric)
12209
12102
  @fees = HttpClient::Preconditions.assert_class('fees', opts.delete(:fees), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::RatecardFee) ? x : ::Io::Flow::V0::Models::RatecardFee.from_json(x)) }
12210
12103
  @origin = (x = opts.delete(:origin); x.is_a?(::Io::Flow::V0::Models::Zone) ? x : ::Io::Flow::V0::Models::Zone.new(x))
12104
+ @service = (x = opts.delete(:service); x.is_a?(::Io::Flow::V0::Models::RatecardServiceReference) ? x : ::Io::Flow::V0::Models::RatecardServiceReference.new(x))
12211
12105
  @rates = HttpClient::Preconditions.assert_class('rates', opts.delete(:rates), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::RatecardRate) ? x : ::Io::Flow::V0::Models::RatecardRate.new(x)) }
12212
12106
  @rounding = (x = opts.delete(:rounding); x.is_a?(::Io::Flow::V0::Models::Rounding) ? x : ::Io::Flow::V0::Models::Rounding.new(x))
12213
12107
  @weight_unit = (x = opts.delete(:weight_unit); x.is_a?(::Io::Flow::V0::Models::UnitOfMeasurement) ? x : ::Io::Flow::V0::Models::UnitOfMeasurement.apply(x))
12108
+ @distance_unit = (x = opts.delete(:distance_unit); x.is_a?(::Io::Flow::V0::Models::UnitOfMeasurement) ? x : ::Io::Flow::V0::Models::UnitOfMeasurement.apply(x))
12214
12109
  end
12215
12110
 
12216
12111
  def to_json
@@ -12231,9 +12126,11 @@ module Io
12231
12126
  :dim_factor => dim_factor,
12232
12127
  :fees => fees.map { |o| o.to_hash },
12233
12128
  :origin => origin.to_hash,
12129
+ :service => service.to_hash,
12234
12130
  :rates => rates.map { |o| o.to_hash },
12235
12131
  :rounding => rounding.to_hash,
12236
- :weight_unit => weight_unit.value
12132
+ :weight_unit => weight_unit.value,
12133
+ :distance_unit => distance_unit.value
12237
12134
  }
12238
12135
  end
12239
12136
 
@@ -12241,11 +12138,11 @@ module Io
12241
12138
 
12242
12139
  class RatecardLaneForm
12243
12140
 
12244
- attr_reader :currency, :destination, :shipment_window, :delivered_duty, :dim_factor, :fees, :origin, :rounding, :rates, :weight_unit
12141
+ attr_reader :currency, :destination, :shipment_window, :delivered_duty, :dim_factor, :fees, :origin, :rounding, :rates, :weight_unit, :distance_unit
12245
12142
 
12246
12143
  def initialize(incoming={})
12247
12144
  opts = HttpClient::Helper.symbolize_keys(incoming)
12248
- HttpClient::Preconditions.require_keys(opts, [:currency, :destination, :shipment_window, :delivered_duty, :dim_factor, :fees, :origin, :rounding, :rates, :weight_unit], 'RatecardLaneForm')
12145
+ HttpClient::Preconditions.require_keys(opts, [:currency, :destination, :shipment_window, :delivered_duty, :dim_factor, :fees, :origin, :rounding, :rates, :weight_unit, :distance_unit], 'RatecardLaneForm')
12249
12146
  @currency = HttpClient::Preconditions.assert_class('currency', opts.delete(:currency), String)
12250
12147
  @destination = (x = opts.delete(:destination); x.is_a?(::Io::Flow::V0::Models::Zone) ? x : ::Io::Flow::V0::Models::Zone.new(x))
12251
12148
  @shipment_window = (x = opts.delete(:shipment_window); x.is_a?(::Io::Flow::V0::Models::ShipmentWindow) ? x : ::Io::Flow::V0::Models::ShipmentWindow.new(x))
@@ -12256,6 +12153,7 @@ module Io
12256
12153
  @rounding = (x = opts.delete(:rounding); x.is_a?(::Io::Flow::V0::Models::Rounding) ? x : ::Io::Flow::V0::Models::Rounding.new(x))
12257
12154
  @rates = HttpClient::Preconditions.assert_class('rates', opts.delete(:rates), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::RatecardRateForm) ? x : ::Io::Flow::V0::Models::RatecardRateForm.new(x)) }
12258
12155
  @weight_unit = (x = opts.delete(:weight_unit); x.is_a?(::Io::Flow::V0::Models::UnitOfMeasurement) ? x : ::Io::Flow::V0::Models::UnitOfMeasurement.apply(x))
12156
+ @distance_unit = (x = opts.delete(:distance_unit); x.is_a?(::Io::Flow::V0::Models::UnitOfMeasurement) ? x : ::Io::Flow::V0::Models::UnitOfMeasurement.apply(x))
12259
12157
  end
12260
12158
 
12261
12159
  def to_json
@@ -12277,7 +12175,8 @@ module Io
12277
12175
  :origin => origin.to_hash,
12278
12176
  :rounding => rounding.to_hash,
12279
12177
  :rates => rates.map { |o| o.to_hash },
12280
- :weight_unit => weight_unit.value
12178
+ :weight_unit => weight_unit.value,
12179
+ :distance_unit => distance_unit.value
12281
12180
  }
12282
12181
  end
12283
12182
 
@@ -13230,16 +13129,16 @@ module Io
13230
13129
 
13231
13130
  class SpotRate
13232
13131
 
13233
- attr_reader :id, :timestamp, :base, :target, :rate
13132
+ attr_reader :id, :effective_at, :base, :target, :value
13234
13133
 
13235
13134
  def initialize(incoming={})
13236
13135
  opts = HttpClient::Helper.symbolize_keys(incoming)
13237
- HttpClient::Preconditions.require_keys(opts, [:id, :timestamp, :base, :target, :rate], 'SpotRate')
13136
+ HttpClient::Preconditions.require_keys(opts, [:id, :effective_at, :base, :target, :value], 'SpotRate')
13238
13137
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
13239
- @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
13138
+ @effective_at = HttpClient::Preconditions.assert_class('effective_at', HttpClient::Helper.to_date_time_iso8601(opts.delete(:effective_at)), DateTime)
13240
13139
  @base = HttpClient::Preconditions.assert_class('base', opts.delete(:base), String)
13241
13140
  @target = HttpClient::Preconditions.assert_class('target', opts.delete(:target), String)
13242
- @rate = HttpClient::Preconditions.assert_class('rate', HttpClient::Helper.to_big_decimal(opts.delete(:rate)), BigDecimal)
13141
+ @value = HttpClient::Preconditions.assert_class('value', HttpClient::Helper.to_big_decimal(opts.delete(:value)), BigDecimal)
13243
13142
  end
13244
13143
 
13245
13144
  def to_json
@@ -13253,10 +13152,10 @@ module Io
13253
13152
  def to_hash
13254
13153
  {
13255
13154
  :id => id,
13256
- :timestamp => timestamp,
13155
+ :effective_at => effective_at,
13257
13156
  :base => base,
13258
13157
  :target => target,
13259
- :rate => rate
13158
+ :value => value
13260
13159
  }
13261
13160
  end
13262
13161
 
@@ -13264,15 +13163,15 @@ module Io
13264
13163
 
13265
13164
  class SpotRateForm
13266
13165
 
13267
- attr_reader :timestamp, :base, :target, :rate
13166
+ attr_reader :effective_at, :base, :target, :value
13268
13167
 
13269
13168
  def initialize(incoming={})
13270
13169
  opts = HttpClient::Helper.symbolize_keys(incoming)
13271
- HttpClient::Preconditions.require_keys(opts, [:timestamp, :base, :target, :rate], 'SpotRateForm')
13272
- @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
13170
+ HttpClient::Preconditions.require_keys(opts, [:effective_at, :base, :target, :value], 'SpotRateForm')
13171
+ @effective_at = HttpClient::Preconditions.assert_class('effective_at', HttpClient::Helper.to_date_time_iso8601(opts.delete(:effective_at)), DateTime)
13273
13172
  @base = HttpClient::Preconditions.assert_class('base', opts.delete(:base), String)
13274
13173
  @target = HttpClient::Preconditions.assert_class('target', opts.delete(:target), String)
13275
- @rate = HttpClient::Preconditions.assert_class('rate', HttpClient::Helper.to_big_decimal(opts.delete(:rate)), BigDecimal)
13174
+ @value = HttpClient::Preconditions.assert_class('value', HttpClient::Helper.to_big_decimal(opts.delete(:value)), BigDecimal)
13276
13175
  end
13277
13176
 
13278
13177
  def to_json
@@ -13285,10 +13184,10 @@ module Io
13285
13184
 
13286
13185
  def to_hash
13287
13186
  {
13288
- :timestamp => timestamp,
13187
+ :effective_at => effective_at,
13289
13188
  :base => base,
13290
13189
  :target => target,
13291
- :rate => rate
13190
+ :value => value
13292
13191
  }
13293
13192
  end
13294
13193
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flowcommerce
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.25
4
+ version: 0.0.26
5
5
  platform: ruby
6
6
  authors:
7
7
  - Flow Commerce, Inc.