easypost 4.11.0 → 4.12.0

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.
Files changed (91) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +5 -0
  3. data/README.md +5 -1
  4. data/VERSION +1 -1
  5. data/easypost.gemspec +2 -2
  6. data/lib/easypost/beta/rate.rb +14 -0
  7. data/lib/easypost/beta.rb +1 -0
  8. data/lib/easypost/billing.rb +6 -6
  9. data/lib/easypost/util.rb +52 -0
  10. metadata +3 -83
  11. data/docs/EasyPost/Address.html +0 -222
  12. data/docs/EasyPost/ApiKey.html +0 -99
  13. data/docs/EasyPost/Batch.html +0 -269
  14. data/docs/EasyPost/Beta/EndShipper.html +0 -225
  15. data/docs/EasyPost/Beta/Referral.html +0 -338
  16. data/docs/EasyPost/Beta.html +0 -91
  17. data/docs/EasyPost/Billing.html +0 -253
  18. data/docs/EasyPost/Brand.html +0 -140
  19. data/docs/EasyPost/CarbonOffset.html +0 -99
  20. data/docs/EasyPost/CarrierAccount.html +0 -136
  21. data/docs/EasyPost/CarrierType.html +0 -99
  22. data/docs/EasyPost/CustomsInfo.html +0 -136
  23. data/docs/EasyPost/CustomsItem.html +0 -136
  24. data/docs/EasyPost/EasyPostObject.html +0 -662
  25. data/docs/EasyPost/EndShipper.html +0 -175
  26. data/docs/EasyPost/Error.html +0 -258
  27. data/docs/EasyPost/Event.html +0 -136
  28. data/docs/EasyPost/Insurance.html +0 -99
  29. data/docs/EasyPost/Order.html +0 -222
  30. data/docs/EasyPost/Parcel.html +0 -136
  31. data/docs/EasyPost/PaymentMethod.html +0 -137
  32. data/docs/EasyPost/Pickup.html +0 -222
  33. data/docs/EasyPost/PickupRate.html +0 -99
  34. data/docs/EasyPost/PostageLabel.html +0 -99
  35. data/docs/EasyPost/Rate.html +0 -136
  36. data/docs/EasyPost/Referral.html +0 -334
  37. data/docs/EasyPost/Refund.html +0 -99
  38. data/docs/EasyPost/Report.html +0 -167
  39. data/docs/EasyPost/Resource.html +0 -399
  40. data/docs/EasyPost/ScanForm.html +0 -137
  41. data/docs/EasyPost/Shipment.html +0 -456
  42. data/docs/EasyPost/TaxIdentifier.html +0 -99
  43. data/docs/EasyPost/Tracker.html +0 -139
  44. data/docs/EasyPost/User.html +0 -307
  45. data/docs/EasyPost/Util.html +0 -462
  46. data/docs/EasyPost/Webhook.html +0 -221
  47. data/docs/EasyPost.html +0 -440
  48. data/docs/created.rid +0 -40
  49. data/docs/css/fonts.css +0 -167
  50. data/docs/css/rdoc.css +0 -639
  51. data/docs/fonts/Lato-Light.ttf +0 -0
  52. data/docs/fonts/Lato-LightItalic.ttf +0 -0
  53. data/docs/fonts/Lato-Regular.ttf +0 -0
  54. data/docs/fonts/Lato-RegularItalic.ttf +0 -0
  55. data/docs/fonts/SourceCodePro-Bold.ttf +0 -0
  56. data/docs/fonts/SourceCodePro-Regular.ttf +0 -0
  57. data/docs/images/add.png +0 -0
  58. data/docs/images/arrow_up.png +0 -0
  59. data/docs/images/brick.png +0 -0
  60. data/docs/images/brick_link.png +0 -0
  61. data/docs/images/bug.png +0 -0
  62. data/docs/images/bullet_black.png +0 -0
  63. data/docs/images/bullet_toggle_minus.png +0 -0
  64. data/docs/images/bullet_toggle_plus.png +0 -0
  65. data/docs/images/date.png +0 -0
  66. data/docs/images/delete.png +0 -0
  67. data/docs/images/find.png +0 -0
  68. data/docs/images/loadingAnimation.gif +0 -0
  69. data/docs/images/macFFBgHack.png +0 -0
  70. data/docs/images/package.png +0 -0
  71. data/docs/images/page_green.png +0 -0
  72. data/docs/images/page_white_text.png +0 -0
  73. data/docs/images/page_white_width.png +0 -0
  74. data/docs/images/plugin.png +0 -0
  75. data/docs/images/ruby.png +0 -0
  76. data/docs/images/tag_blue.png +0 -0
  77. data/docs/images/tag_green.png +0 -0
  78. data/docs/images/transparent.png +0 -0
  79. data/docs/images/wrench.png +0 -0
  80. data/docs/images/wrench_orange.png +0 -0
  81. data/docs/images/zoom.png +0 -0
  82. data/docs/index.html +0 -117
  83. data/docs/js/darkfish.js +0 -84
  84. data/docs/js/navigation.js +0 -105
  85. data/docs/js/navigation.js.gz +0 -0
  86. data/docs/js/search.js +0 -110
  87. data/docs/js/search_index.js +0 -1
  88. data/docs/js/search_index.js.gz +0 -0
  89. data/docs/js/searcher.js +0 -229
  90. data/docs/js/searcher.js.gz +0 -0
  91. data/docs/table_of_contents.html +0 -785
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 52156e3c1bbedd38fc28ccad285c19086d178a62635be174f31039d641136277
4
- data.tar.gz: 3d47a62c26c9f8bb27d6430330c4502496f32652c017b4ff026577d4bdbe08bc
3
+ metadata.gz: 5a3e6fa9af948ab36d6bb75ebf7d744f5580f4225b1181fb1d31bc7f834501bb
4
+ data.tar.gz: 5befe3b07667cb4494249eb6524c5ec8584e3f746475ec9162ae8cc6831ffaab
5
5
  SHA512:
6
- metadata.gz: 905456623de704532dbb3a3fe01b0905a455e9d7916bc53eb64d73cf64e3568221943744eaf6474ae22215118922b120dea6fa34dba295623db7c8b086d8b2b0
7
- data.tar.gz: e1b316d90d6a8c5ae4411e85c07b7cf6c7a5e480de7ffeaf96f1678323971814bd248ffe79f823c0339cb896241ce0da278937671a433bb52249cb603f3b55f3
6
+ metadata.gz: 41e81f89a10321e694087652862c373b41c88a704a02584c5978ba1a72c1554f79d45277bea81c679a4211072e6b9d56b2829c8c2d6b832c74177018dc469b5e
7
+ data.tar.gz: 2f4180afe87daf91d6128e555b1ffb3d3befb1a07f8879dea7918887b0f394723901767c394de5e0f3530d03e24f7c355fdf97c68648b2a5c2f6ef47a09daf69
data/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## v4.12.0 (2023-02-21)
4
+
5
+ - Adds beta `retrieve_stateless_rates` function
6
+ - Adds `get_lowest_stateless_rate` utility
7
+
3
8
  ## v4.11.0 (2023-01-18)
4
9
 
5
10
  - Added function to retrieve all pickups, accessible via `EasyPost::Pickup.all`
data/README.md CHANGED
@@ -111,7 +111,11 @@ end
111
111
 
112
112
  ## Documentation
113
113
 
114
- API Documentation can be found at: <https://easypost.com/docs/api>.
114
+ API documentation can be found at: <https://easypost.com/docs/api>.
115
+
116
+ Library documentation can be found on the web at: <https://easypost.github.io/easypost-ruby/> or locally in the `docs` directory.
117
+
118
+ Upgrading major versions of this project? Refer to the [Upgrade Guide](UPGRADE_GUIDE.md).
115
119
 
116
120
  ## Development
117
121
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 4.11.0
1
+ 4.12.0
data/easypost.gemspec CHANGED
@@ -7,7 +7,7 @@ require 'easypost/version'
7
7
  Gem::Specification.new do |spec|
8
8
  spec.name = 'easypost'
9
9
  spec.version = EasyPost::VERSION
10
- spec.licenses = ['MIT']
10
+ spec.license = 'MIT'
11
11
  spec.summary = 'EasyPost Ruby Client Library'
12
12
  spec.description = 'Client library for accessing the EasyPost shipping API via Ruby.'
13
13
  spec.authors = 'EasyPost Developers'
@@ -15,7 +15,7 @@ Gem::Specification.new do |spec|
15
15
  spec.homepage = 'https://www.easypost.com/docs'
16
16
 
17
17
  spec.files = `git ls-files -z`.split("\x0").reject do |f|
18
- f.match(%r{^(test|spec|features)/})
18
+ f.match(%r{^(docs|examples|spec)/})
19
19
  end
20
20
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
21
21
  spec.require_paths = ['lib']
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ # A Rate object contains all the details about the rate of a Shipment.
4
+ class EasyPost::Beta::Rate < EasyPost::Resource
5
+ # Retrieve a list of stateless rates.
6
+ def self.retrieve_stateless_rates(params = {}, api_key = nil)
7
+ wrapped_params = {
8
+ shipment: params,
9
+ }
10
+
11
+ response = EasyPost.make_request(:post, '/beta/rates', api_key, wrapped_params)
12
+ EasyPost::Util.convert_to_easypost_object(response['rates'], api_key)
13
+ end
14
+ end
data/lib/easypost/beta.rb CHANGED
@@ -5,3 +5,4 @@ end
5
5
 
6
6
  require_relative 'beta/end_shipper'
7
7
  require_relative 'beta/referral'
8
+ require_relative 'beta/rate'
@@ -6,14 +6,14 @@ class EasyPost::Billing < EasyPost::Resource
6
6
  protected
7
7
 
8
8
  # Get payment method info (type of the payment method and ID of the payment method)
9
- def get_payment_method_info(primary_or_secondary)
9
+ def get_payment_method_info(priority)
10
10
  payment_methods = EasyPost::Billing.retrieve_payment_methods
11
11
  payment_method_map = {
12
12
  'primary' => 'primary_payment_method',
13
13
  'secondary' => 'secondary_payment_method',
14
14
  }
15
15
 
16
- payment_method_to_use = payment_method_map[primary_or_secondary]
16
+ payment_method_to_use = payment_method_map[priority]
17
17
 
18
18
  error_string = 'The chosen payment method is not valid. Please try again.'
19
19
  raise EasyPost::Error.new(error_string) if payment_methods[payment_method_to_use].nil?
@@ -35,8 +35,8 @@ class EasyPost::Billing < EasyPost::Resource
35
35
  end
36
36
 
37
37
  # Fund your EasyPost wallet by charging your primary or secondary card on file.
38
- def self.fund_wallet(amount, primary_or_secondary = 'primary', api_key = nil)
39
- payment_info = get_payment_method_info(primary_or_secondary.downcase)
38
+ def self.fund_wallet(amount, priority = 'primary', api_key = nil)
39
+ payment_info = get_payment_method_info(priority.downcase)
40
40
  endpoint = payment_info[0]
41
41
  payment_id = payment_info[1]
42
42
 
@@ -48,8 +48,8 @@ class EasyPost::Billing < EasyPost::Resource
48
48
  end
49
49
 
50
50
  # Delete a payment method.
51
- def self.delete_payment_method(primary_or_secondary, api_key = nil)
52
- payment_info = get_payment_method_info(primary_or_secondary.downcase)
51
+ def self.delete_payment_method(priority, api_key = nil)
52
+ payment_info = get_payment_method_info(priority.downcase)
53
53
  endpoint = payment_info[0]
54
54
  payment_id = payment_info[1]
55
55
 
data/lib/easypost/util.rb CHANGED
@@ -228,4 +228,56 @@ module EasyPost::Util
228
228
 
229
229
  lowest_rate
230
230
  end
231
+
232
+ # Gets the lowest stateless rate.
233
+ # You can exclude by having `'!'` as the first element of your optional filter lists
234
+ def self.get_lowest_stateless_rate(stateless_rates, carriers = [], services = [])
235
+ lowest_rate = nil
236
+
237
+ carriers = EasyPost::Util.normalize_string_list(carriers)
238
+ negative_carriers = []
239
+ carriers_copy = carriers.clone
240
+ carriers_copy.each do |carrier|
241
+ if carrier[0, 1] == '!'
242
+ negative_carriers << carrier[1..-1]
243
+ carriers.delete(carrier)
244
+ end
245
+ end
246
+
247
+ services = EasyPost::Util.normalize_string_list(services)
248
+ negative_services = []
249
+ services_copy = services.clone
250
+ services_copy.each do |service|
251
+ if service[0, 1] == '!'
252
+ negative_services << service[1..-1]
253
+ services.delete(service)
254
+ end
255
+ end
256
+
257
+ stateless_rates.each do |rate|
258
+ rate_carrier = rate.carrier.downcase
259
+ if carriers.size.positive? && !carriers.include?(rate_carrier)
260
+ next
261
+ end
262
+ if negative_carriers.size.positive? && negative_carriers.include?(rate_carrier)
263
+ next
264
+ end
265
+
266
+ rate_service = rate.service.downcase
267
+ if services.size.positive? && !services.include?(rate_service)
268
+ next
269
+ end
270
+ if negative_services.size.positive? && negative_services.include?(rate_service)
271
+ next
272
+ end
273
+
274
+ if lowest_rate.nil? || rate.rate.to_f < lowest_rate.rate.to_f
275
+ lowest_rate = rate
276
+ end
277
+ end
278
+
279
+ raise EasyPost::Error.new('No rates found.') if lowest_rate.nil?
280
+
281
+ lowest_rate
282
+ end
231
283
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: easypost
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.11.0
4
+ version: 4.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - EasyPost Developers
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-18 00:00:00.000000000 Z
11
+ date: 2023-02-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: brakeman
@@ -203,87 +203,6 @@ files:
203
203
  - UPGRADE_GUIDE.md
204
204
  - VERSION
205
205
  - bin/easypost-irb
206
- - docs/EasyPost.html
207
- - docs/EasyPost/Address.html
208
- - docs/EasyPost/ApiKey.html
209
- - docs/EasyPost/Batch.html
210
- - docs/EasyPost/Beta.html
211
- - docs/EasyPost/Beta/EndShipper.html
212
- - docs/EasyPost/Beta/Referral.html
213
- - docs/EasyPost/Billing.html
214
- - docs/EasyPost/Brand.html
215
- - docs/EasyPost/CarbonOffset.html
216
- - docs/EasyPost/CarrierAccount.html
217
- - docs/EasyPost/CarrierType.html
218
- - docs/EasyPost/CustomsInfo.html
219
- - docs/EasyPost/CustomsItem.html
220
- - docs/EasyPost/EasyPostObject.html
221
- - docs/EasyPost/EndShipper.html
222
- - docs/EasyPost/Error.html
223
- - docs/EasyPost/Event.html
224
- - docs/EasyPost/Insurance.html
225
- - docs/EasyPost/Order.html
226
- - docs/EasyPost/Parcel.html
227
- - docs/EasyPost/PaymentMethod.html
228
- - docs/EasyPost/Pickup.html
229
- - docs/EasyPost/PickupRate.html
230
- - docs/EasyPost/PostageLabel.html
231
- - docs/EasyPost/Rate.html
232
- - docs/EasyPost/Referral.html
233
- - docs/EasyPost/Refund.html
234
- - docs/EasyPost/Report.html
235
- - docs/EasyPost/Resource.html
236
- - docs/EasyPost/ScanForm.html
237
- - docs/EasyPost/Shipment.html
238
- - docs/EasyPost/TaxIdentifier.html
239
- - docs/EasyPost/Tracker.html
240
- - docs/EasyPost/User.html
241
- - docs/EasyPost/Util.html
242
- - docs/EasyPost/Webhook.html
243
- - docs/created.rid
244
- - docs/css/fonts.css
245
- - docs/css/rdoc.css
246
- - docs/fonts/Lato-Light.ttf
247
- - docs/fonts/Lato-LightItalic.ttf
248
- - docs/fonts/Lato-Regular.ttf
249
- - docs/fonts/Lato-RegularItalic.ttf
250
- - docs/fonts/SourceCodePro-Bold.ttf
251
- - docs/fonts/SourceCodePro-Regular.ttf
252
- - docs/images/add.png
253
- - docs/images/arrow_up.png
254
- - docs/images/brick.png
255
- - docs/images/brick_link.png
256
- - docs/images/bug.png
257
- - docs/images/bullet_black.png
258
- - docs/images/bullet_toggle_minus.png
259
- - docs/images/bullet_toggle_plus.png
260
- - docs/images/date.png
261
- - docs/images/delete.png
262
- - docs/images/find.png
263
- - docs/images/loadingAnimation.gif
264
- - docs/images/macFFBgHack.png
265
- - docs/images/package.png
266
- - docs/images/page_green.png
267
- - docs/images/page_white_text.png
268
- - docs/images/page_white_width.png
269
- - docs/images/plugin.png
270
- - docs/images/ruby.png
271
- - docs/images/tag_blue.png
272
- - docs/images/tag_green.png
273
- - docs/images/transparent.png
274
- - docs/images/wrench.png
275
- - docs/images/wrench_orange.png
276
- - docs/images/zoom.png
277
- - docs/index.html
278
- - docs/js/darkfish.js
279
- - docs/js/navigation.js
280
- - docs/js/navigation.js.gz
281
- - docs/js/search.js
282
- - docs/js/search_index.js
283
- - docs/js/search_index.js.gz
284
- - docs/js/searcher.js
285
- - docs/js/searcher.js.gz
286
- - docs/table_of_contents.html
287
206
  - easycop.yml
288
207
  - easypost.gemspec
289
208
  - lib/easypost.rb
@@ -293,6 +212,7 @@ files:
293
212
  - lib/easypost/beta.rb
294
213
  - lib/easypost/beta/end_shipper.rb
295
214
  - lib/easypost/beta/payment_refund.rb
215
+ - lib/easypost/beta/rate.rb
296
216
  - lib/easypost/beta/referral.rb
297
217
  - lib/easypost/billing.rb
298
218
  - lib/easypost/brand.rb
@@ -1,222 +0,0 @@
1
- <!DOCTYPE html>
2
-
3
- <html>
4
- <head>
5
- <meta charset="UTF-8">
6
-
7
- <title>class EasyPost::Address - EasyPost Ruby Docs</title>
8
-
9
- <script type="text/javascript">
10
- var rdoc_rel_prefix = "../";
11
- var index_rel_prefix = "../";
12
- </script>
13
-
14
- <script src="../js/navigation.js" defer></script>
15
- <script src="../js/search.js" defer></script>
16
- <script src="../js/search_index.js" defer></script>
17
- <script src="../js/searcher.js" defer></script>
18
- <script src="../js/darkfish.js" defer></script>
19
-
20
- <link href="../css/fonts.css" rel="stylesheet">
21
- <link href="../css/rdoc.css" rel="stylesheet">
22
-
23
-
24
- <body id="top" role="document" class="class">
25
- <nav role="navigation">
26
- <div id="project-navigation">
27
- <div id="home-section" role="region" title="Quick navigation" class="nav-section">
28
- <h2>
29
- <a href="../index.html" rel="home">Home</a>
30
- </h2>
31
-
32
- <div id="table-of-contents-navigation">
33
- <a href="../table_of_contents.html#pages">Pages</a>
34
- <a href="../table_of_contents.html#classes">Classes</a>
35
- <a href="../table_of_contents.html#methods">Methods</a>
36
- </div>
37
- </div>
38
-
39
- <div id="search-section" role="search" class="project-section initially-hidden">
40
- <form action="#" method="get" accept-charset="utf-8">
41
- <div id="search-field-wrapper">
42
- <input id="search-field" role="combobox" aria-label="Search"
43
- aria-autocomplete="list" aria-controls="search-results"
44
- type="text" name="search" placeholder="Search" spellcheck="false"
45
- title="Type to search, Up and Down to navigate, Enter to load">
46
- </div>
47
-
48
- <ul id="search-results" aria-label="Search Results"
49
- aria-busy="false" aria-expanded="false"
50
- aria-atomic="false" class="initially-hidden"></ul>
51
- </form>
52
- </div>
53
-
54
- </div>
55
-
56
-
57
-
58
- <div id="class-metadata">
59
-
60
-
61
- <div id="parent-class-section" class="nav-section">
62
- <h3>Parent</h3>
63
-
64
- <p class="link"><a href="Resource.html">EasyPost::Resource</a>
65
- </div>
66
-
67
-
68
-
69
-
70
- <!-- Method Quickref -->
71
- <div id="method-list-section" class="nav-section">
72
- <h3>Methods</h3>
73
-
74
- <ul class="link-list" role="directory">
75
- <li ><a href="#method-c-create">::create</a>
76
- <li ><a href="#method-c-create_and_verify">::create_and_verify</a>
77
- <li ><a href="#method-i-verify">#verify</a>
78
- </ul>
79
- </div>
80
-
81
- </div>
82
- </nav>
83
-
84
- <main role="main" aria-labelledby="class-EasyPost::Address">
85
- <h1 id="class-EasyPost::Address" class="class">
86
- class EasyPost::Address
87
- </h1>
88
-
89
- <section class="description">
90
-
91
- <p><a href="Address.html"><code>Address</code></a> objects are used to represent people, places, and organizations in a number of contexts.</p>
92
-
93
- </section>
94
-
95
- <section id="5Buntitled-5D" class="documentation-section">
96
-
97
-
98
-
99
- <section class="attribute-method-details" class="method-section">
100
- <header>
101
- <h3>Attributes</h3>
102
- </header>
103
-
104
- <div id="attribute-i-message" class="method-detail">
105
- <div class="method-heading attribute-method-heading">
106
- <span class="method-name">message</span><span
107
- class="attribute-access-type">[RW]</span>
108
- </div>
109
-
110
- <div class="method-description">
111
-
112
- </div>
113
- </div>
114
- </section>
115
-
116
-
117
- <section id="public-class-5Buntitled-5D-method-details" class="method-section">
118
- <header>
119
- <h3>Public Class Methods</h3>
120
- </header>
121
-
122
- <div id="method-c-create" class="method-detail ">
123
- <div class="method-heading">
124
- <span class="method-name">create</span><span
125
- class="method-args">(params = {}, api_key = nil)</span>
126
- <span class="method-click-advice">click to toggle source</span>
127
- </div>
128
-
129
- <div class="method-description">
130
- <p>Create an <a href="Address.html"><code>Address</code></a>.</p>
131
-
132
- <div class="method-source-code" id="create-source">
133
- <pre><span class="ruby-comment"># File lib/easypost/address.rb, line 8</span>
134
- <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier ruby-title">create</span>(<span class="ruby-identifier">params</span> = {}, <span class="ruby-identifier">api_key</span> = <span class="ruby-keyword">nil</span>)
135
- <span class="ruby-identifier">address</span> = <span class="ruby-identifier">params</span>.<span class="ruby-identifier">reject</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>, <span class="ruby-identifier">_</span><span class="ruby-operator">|</span> [<span class="ruby-value">:verify</span>, <span class="ruby-value">:verify_strict</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">k</span>) }
136
-
137
- <span class="ruby-identifier">wrapped_params</span> = { <span class="ruby-value">address:</span> <span class="ruby-identifier">address</span> }
138
-
139
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:verify</span>]
140
- <span class="ruby-identifier">wrapped_params</span>[<span class="ruby-value">:verify</span>] = <span class="ruby-identifier">params</span>[<span class="ruby-value">:verify</span>]
141
- <span class="ruby-keyword">end</span>
142
-
143
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:verify_strict</span>]
144
- <span class="ruby-identifier">wrapped_params</span>[<span class="ruby-value">:verify_strict</span>] = <span class="ruby-identifier">params</span>[<span class="ruby-value">:verify_strict</span>]
145
- <span class="ruby-keyword">end</span>
146
-
147
- <span class="ruby-identifier">response</span> = <span class="ruby-constant">EasyPost</span>.<span class="ruby-identifier">make_request</span>(<span class="ruby-value">:post</span>, <span class="ruby-identifier">url</span>, <span class="ruby-identifier">api_key</span>, <span class="ruby-identifier">wrapped_params</span>)
148
- <span class="ruby-constant">EasyPost</span><span class="ruby-operator">::</span><span class="ruby-constant">Util</span>.<span class="ruby-identifier">convert_to_easypost_object</span>(<span class="ruby-identifier">response</span>, <span class="ruby-identifier">api_key</span>)
149
- <span class="ruby-keyword">end</span></pre>
150
- </div>
151
- </div>
152
-
153
-
154
- </div>
155
-
156
- <div id="method-c-create_and_verify" class="method-detail ">
157
- <div class="method-heading">
158
- <span class="method-name">create_and_verify</span><span
159
- class="method-args">(params = {}, api_key = nil)</span>
160
- <span class="method-click-advice">click to toggle source</span>
161
- </div>
162
-
163
- <div class="method-description">
164
- <p>Create and verify an <a href="Address.html"><code>Address</code></a> in one call.</p>
165
-
166
- <div class="method-source-code" id="create_and_verify-source">
167
- <pre><span class="ruby-comment"># File lib/easypost/address.rb, line 26</span>
168
- <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier ruby-title">create_and_verify</span>(<span class="ruby-identifier">params</span> = {}, <span class="ruby-identifier">api_key</span> = <span class="ruby-keyword">nil</span>)
169
- <span class="ruby-identifier">wrapped_params</span> = {}
170
- <span class="ruby-identifier">wrapped_params</span>[<span class="ruby-identifier">class_name</span>.<span class="ruby-identifier">to_sym</span>] = <span class="ruby-identifier">params</span>
171
- <span class="ruby-identifier">response</span> = <span class="ruby-constant">EasyPost</span>.<span class="ruby-identifier">make_request</span>(<span class="ruby-value">:post</span>, <span class="ruby-node">&quot;#{url}/create_and_verify&quot;</span>, <span class="ruby-identifier">api_key</span>, <span class="ruby-identifier">wrapped_params</span>)
172
-
173
- <span class="ruby-constant">EasyPost</span><span class="ruby-operator">::</span><span class="ruby-constant">Util</span>.<span class="ruby-identifier">convert_to_easypost_object</span>(<span class="ruby-identifier">response</span>[<span class="ruby-string">&#39;address&#39;</span>], <span class="ruby-identifier">api_key</span>)
174
- <span class="ruby-keyword">end</span></pre>
175
- </div>
176
- </div>
177
-
178
-
179
- </div>
180
-
181
- </section>
182
-
183
- <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
184
- <header>
185
- <h3>Public Instance Methods</h3>
186
- </header>
187
-
188
- <div id="method-i-verify" class="method-detail ">
189
- <div class="method-heading">
190
- <span class="method-name">verify</span><span
191
- class="method-args">()</span>
192
- <span class="method-click-advice">click to toggle source</span>
193
- </div>
194
-
195
- <div class="method-description">
196
- <p>Verify an <a href="Address.html"><code>Address</code></a>.</p>
197
-
198
- <div class="method-source-code" id="verify-source">
199
- <pre><span class="ruby-comment"># File lib/easypost/address.rb, line 35</span>
200
- <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">verify</span>
201
- <span class="ruby-identifier">response</span> = <span class="ruby-constant">EasyPost</span>.<span class="ruby-identifier">make_request</span>(<span class="ruby-value">:get</span>, <span class="ruby-node">&quot;#{url}/verify&quot;</span>, <span class="ruby-ivar">@api_key</span>)
202
-
203
- <span class="ruby-constant">EasyPost</span><span class="ruby-operator">::</span><span class="ruby-constant">Util</span>.<span class="ruby-identifier">convert_to_easypost_object</span>(<span class="ruby-identifier">response</span>[<span class="ruby-string">&#39;address&#39;</span>], <span class="ruby-identifier">api_key</span>)
204
- <span class="ruby-keyword">end</span></pre>
205
- </div>
206
- </div>
207
-
208
-
209
- </div>
210
-
211
- </section>
212
-
213
- </section>
214
- </main>
215
-
216
-
217
- <footer id="validator-badges" role="contentinfo">
218
- <p><a href="https://validator.w3.org/check/referer">Validate</a>
219
- <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.4.0.
220
- <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
221
- </footer>
222
-
@@ -1,99 +0,0 @@
1
- <!DOCTYPE html>
2
-
3
- <html>
4
- <head>
5
- <meta charset="UTF-8">
6
-
7
- <title>class EasyPost::ApiKey - EasyPost Ruby Docs</title>
8
-
9
- <script type="text/javascript">
10
- var rdoc_rel_prefix = "../";
11
- var index_rel_prefix = "../";
12
- </script>
13
-
14
- <script src="../js/navigation.js" defer></script>
15
- <script src="../js/search.js" defer></script>
16
- <script src="../js/search_index.js" defer></script>
17
- <script src="../js/searcher.js" defer></script>
18
- <script src="../js/darkfish.js" defer></script>
19
-
20
- <link href="../css/fonts.css" rel="stylesheet">
21
- <link href="../css/rdoc.css" rel="stylesheet">
22
-
23
-
24
- <body id="top" role="document" class="class">
25
- <nav role="navigation">
26
- <div id="project-navigation">
27
- <div id="home-section" role="region" title="Quick navigation" class="nav-section">
28
- <h2>
29
- <a href="../index.html" rel="home">Home</a>
30
- </h2>
31
-
32
- <div id="table-of-contents-navigation">
33
- <a href="../table_of_contents.html#pages">Pages</a>
34
- <a href="../table_of_contents.html#classes">Classes</a>
35
- <a href="../table_of_contents.html#methods">Methods</a>
36
- </div>
37
- </div>
38
-
39
- <div id="search-section" role="search" class="project-section initially-hidden">
40
- <form action="#" method="get" accept-charset="utf-8">
41
- <div id="search-field-wrapper">
42
- <input id="search-field" role="combobox" aria-label="Search"
43
- aria-autocomplete="list" aria-controls="search-results"
44
- type="text" name="search" placeholder="Search" spellcheck="false"
45
- title="Type to search, Up and Down to navigate, Enter to load">
46
- </div>
47
-
48
- <ul id="search-results" aria-label="Search Results"
49
- aria-busy="false" aria-expanded="false"
50
- aria-atomic="false" class="initially-hidden"></ul>
51
- </form>
52
- </div>
53
-
54
- </div>
55
-
56
-
57
-
58
- <div id="class-metadata">
59
-
60
-
61
- <div id="parent-class-section" class="nav-section">
62
- <h3>Parent</h3>
63
-
64
- <p class="link"><a href="Resource.html">EasyPost::Resource</a>
65
- </div>
66
-
67
-
68
-
69
-
70
- </div>
71
- </nav>
72
-
73
- <main role="main" aria-labelledby="class-EasyPost::ApiKey">
74
- <h1 id="class-EasyPost::ApiKey" class="class">
75
- class EasyPost::ApiKey
76
- </h1>
77
-
78
- <section class="description">
79
-
80
- <p>An <a href="ApiKey.html"><code>ApiKey</code></a> allows you to authenticate with the <a href="../EasyPost.html"><code>EasyPost</code></a> API.</p>
81
-
82
- </section>
83
-
84
- <section id="5Buntitled-5D" class="documentation-section">
85
-
86
-
87
-
88
-
89
-
90
- </section>
91
- </main>
92
-
93
-
94
- <footer id="validator-badges" role="contentinfo">
95
- <p><a href="https://validator.w3.org/check/referer">Validate</a>
96
- <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.4.0.
97
- <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
98
- </footer>
99
-