solidus_easypost 2.0.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (115) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +6 -0
  3. data/.github/stale.yml +4 -4
  4. data/.github_changelog_generator +2 -0
  5. data/.gitignore +1 -0
  6. data/.rubocop.yml +3 -0
  7. data/.rubocop_todo.yml +12 -47
  8. data/CHANGELOG.md +113 -0
  9. data/LICENSE +1 -1
  10. data/README.md +111 -21
  11. data/app/controllers/spree/admin/postage_labels_controller.rb +20 -0
  12. data/app/decorators/models/solidus_easypost/spree/carton_decorator.rb +38 -0
  13. data/app/decorators/models/solidus_easypost/spree/shipment_decorator.rb +18 -23
  14. data/app/models/solidus_easypost/parcel_dimension.rb +34 -0
  15. data/app/models/solidus_easypost/return_authorization.rb +2 -13
  16. data/app/overrides/spree/admin/orders/_shipment/add_postage_label.html.erb.deface +10 -0
  17. data/bin/rails +0 -1
  18. data/bin/rails-engine +0 -2
  19. data/bin/rails-sandbox +1 -2
  20. data/bin/sandbox +2 -0
  21. data/config/initializers/webhooks.rb +7 -0
  22. data/config/locales/en.yml +7 -4
  23. data/config/routes.rb +5 -1
  24. data/db/migrate/20201025110912_add_tracker_id_to_cartons.rb +6 -0
  25. data/lib/generators/solidus_easypost/install/install_generator.rb +7 -1
  26. data/lib/generators/solidus_easypost/install/templates/initializer.rb +26 -0
  27. data/lib/solidus_easypost/address_builder.rb +45 -0
  28. data/lib/solidus_easypost/calculator/base_dimension_calculator.rb +28 -0
  29. data/lib/solidus_easypost/calculator/weight_dimension_calculator.rb +22 -0
  30. data/lib/solidus_easypost/configuration.rb +25 -2
  31. data/lib/solidus_easypost/errors/unknown_partial_resource_error.rb +11 -0
  32. data/lib/solidus_easypost/estimator.rb +37 -0
  33. data/lib/solidus_easypost/parcel_builder.rb +27 -0
  34. data/lib/solidus_easypost/shipment_builder.rb +32 -0
  35. data/lib/solidus_easypost/shipping_method_selector.rb +17 -0
  36. data/lib/solidus_easypost/shipping_rate_calculator.rb +9 -0
  37. data/lib/solidus_easypost/testing_support/factories/address_factory.rb +10 -0
  38. data/lib/solidus_easypost/testing_support/factories/product_factory.rb +7 -0
  39. data/lib/solidus_easypost/testing_support/factories/shipment_factory.rb +30 -0
  40. data/lib/solidus_easypost/testing_support/factories/shipping_method_factory.rb +8 -0
  41. data/lib/solidus_easypost/testing_support/factories/stock_location_factory.rb +10 -0
  42. data/lib/solidus_easypost/testing_support/factories/variant_factory.rb +7 -0
  43. data/lib/solidus_easypost/testing_support/factories.rb +3 -0
  44. data/lib/solidus_easypost/tracker_webhook_handler.rb +14 -0
  45. data/lib/solidus_easypost/version.rb +1 -1
  46. data/lib/solidus_easypost.rb +11 -0
  47. data/solidus_easypost.gemspec +8 -5
  48. data/spec/cassettes/{Spree_Address/_easypost_address/is_an_EasyPost_Address_object.yml → address_builder/from_address.yml} +19 -23
  49. data/spec/cassettes/{Spree_StockLocation/_easypost_address/is_an_EasyPost_Address_object.yml → address_builder/from_stock_location.yml} +19 -23
  50. data/spec/cassettes/{Spree_Stock_Estimator/_shipping_rates/when_rates_are_found/when_shipping_methods_exist/when_shipping_methods_are_front_end_visible/has_the_correct_costs.yml → estimator.yml} +0 -0
  51. data/spec/cassettes/integration/checkout.yml +377 -0
  52. data/spec/cassettes/integration/order_shipping/with_purchase_labels.yml +373 -0
  53. data/spec/cassettes/integration/order_shipping/without_purchase_labels.yml +251 -0
  54. data/spec/cassettes/{Spree_Stock_Package/_easypost_parcel/is_an_EasyPost_Parcel_object.yml → parcel_builder/from_package.yml} +17 -22
  55. data/spec/cassettes/{Spree_Stock_Package/_easypost_parcel/has_the_correct_attributes.yml → parcel_builder/from_return_authorization.yml} +17 -22
  56. data/spec/cassettes/postage_labels/show.yml +72 -0
  57. data/spec/cassettes/return_authorization.yml +310 -0
  58. data/spec/cassettes/{Spree_Stock_Package/_easypost_shipment/is_an_EasyPost_Shipment_object.yml → shipment_builder/from_package.yml} +74 -92
  59. data/spec/cassettes/{Spree_Stock_Estimator/_shipping_rates/when_rates_are_found/when_shipping_methods_exist/create_no_new_shipping_methods.yml → shipment_builder/from_return_authorization.yml} +77 -95
  60. data/spec/cassettes/shipment_builder/from_shipment.yml +250 -0
  61. data/spec/controllers/spree/admin/postage_labels_controller_spec.rb +18 -0
  62. data/spec/features/admin/postage_labels_spec.rb +18 -0
  63. data/spec/integration/checkout_spec.rb +45 -0
  64. data/spec/integration/order_shipping_spec.rb +33 -0
  65. data/spec/models/solidus_easypost/parcel_dimension_spec.rb +80 -0
  66. data/spec/models/solidus_easypost/return_authorization_spec.rb +7 -40
  67. data/spec/models/spree/carton_spec.rb +57 -0
  68. data/spec/models/spree/shipment_spec.rb +48 -59
  69. data/spec/models/spree/shipping_rate_spec.rb +14 -7
  70. data/spec/solidus_easypost/address_builder_spec.rb +17 -0
  71. data/spec/solidus_easypost/calculator/weight_dimension_calculator_spec.rb +39 -0
  72. data/spec/solidus_easypost/estimator_spec.rb +52 -0
  73. data/spec/solidus_easypost/parcel_builder_spec.rb +113 -0
  74. data/spec/solidus_easypost/shipment_builder_spec.rb +28 -0
  75. data/spec/solidus_easypost/shipping_method_selector_spec.rb +33 -0
  76. data/spec/solidus_easypost/shipping_rate_calculator_spec.rb +12 -0
  77. data/spec/solidus_easypost/tracker_webhook_handler_spec.rb +58 -0
  78. data/spec/spec_helper.rb +11 -7
  79. data/spec/support/easypost.rb +3 -1
  80. data/spec/support/helpers/api_stubs.rb +40 -0
  81. data/spec/support/helpers/configuration.rb +28 -0
  82. data/spec/support/helpers/shipping_methods.rb +26 -0
  83. data/spec/support/solidus.rb +1 -0
  84. data/spec/support/vcr.rb +1 -0
  85. metadata +118 -85
  86. data/app/decorators/models/solidus_easypost/spree/address_decorator.rb +0 -30
  87. data/app/decorators/models/solidus_easypost/spree/stock/estimator_decorator.rb +0 -15
  88. data/app/decorators/models/solidus_easypost/spree/stock/package_decorator.rb +0 -27
  89. data/app/decorators/models/solidus_easypost/spree/stock_location_decorator.rb +0 -26
  90. data/app/models/solidus_easypost/estimator.rb +0 -51
  91. data/lib/solidus_easypost/factories.rb +0 -24
  92. data/spec/cassettes/SolidusEasypost_ReturnAuthorization/_easypost_shipment/is_an_EasyPost_Shipment_object.yml +0 -271
  93. data/spec/cassettes/SolidusEasypost_ReturnAuthorization/_return_label/has_the_correct_fields.yml +0 -336
  94. data/spec/cassettes/SolidusEasypost_ReturnAuthorization/_return_label/is_an_EasyPost_PackageLabel_object.yml +0 -336
  95. data/spec/cassettes/Spree_Address/_easypost_address/has_the_correct_attributes.yml +0 -69
  96. data/spec/cassettes/Spree_Order/_refresh_shipment_rates/can_get_rates_from_easy_post.yml +0 -271
  97. data/spec/cassettes/Spree_Order/_refresh_shipment_rates/create_shipping_methods_for_the_rates.yml +0 -269
  98. data/spec/cassettes/Spree_Shipment/_buys_a_shipping_rate_after_transitioning_to_ship.yml +0 -403
  99. data/spec/cassettes/Spree_Shipment/_easypost_shipment/when_it_is_a_new_shipment/behaves_like_an_easypost_shipment/is_an_EasyPost_Shipment_object.yml +0 -271
  100. data/spec/cassettes/Spree_Shipment/_easypost_shipment/when_it_is_a_new_shipment/calls_the_api.yml +0 -200
  101. data/spec/cassettes/Spree_Shipment/_easypost_shipment/when_it_is_an_existing_shipment/behaves_like_an_easypost_shipment/is_an_EasyPost_Shipment_object.yml +0 -334
  102. data/spec/cassettes/Spree_Shipment/_easypost_shipment/when_it_is_an_existing_shipment/loads_the_existing_shipment.yml +0 -271
  103. data/spec/cassettes/Spree_StockLocation/_easypost_address/has_the_correct_attributes.yml +0 -69
  104. data/spec/cassettes/Spree_Stock_Estimator/_shipping_rates/when_rates_are_found/when_shipping_methods_dont_exist/creates_new_shipping_methods.yml +0 -269
  105. data/spec/cassettes/Spree_Stock_Estimator/_shipping_rates/when_rates_are_found/when_shipping_methods_dont_exist/is_empty.yml +0 -269
  106. data/spec/cassettes/Spree_Stock_Estimator/_shipping_rates/when_rates_are_found/when_shipping_methods_exist/when_shipping_methods_are_front_end_visible/has_the_correct_names.yml +0 -269
  107. data/spec/cassettes/Spree_Stock_Estimator/_shipping_rates/when_rates_are_found/when_shipping_methods_exist/when_shipping_methods_are_not_front_end_visible/is_empty.yml +0 -269
  108. data/spec/cassettes/Spree_Stock_Package/_easypost_shipment/calls_the_api.yml +0 -200
  109. data/spec/factories/spree_modification.rb +0 -25
  110. data/spec/models/spree/address_spec.rb +0 -31
  111. data/spec/models/spree/order_spec.rb +0 -31
  112. data/spec/models/spree/stock/estimator_spec.rb +0 -80
  113. data/spec/models/spree/stock/package_spec.rb +0 -35
  114. data/spec/models/spree/stock_location_spec.rb +0 -31
  115. data/spec/support/shipping_method_helpers.rb +0 -43
@@ -1,69 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: https://api.easypost.com/v2/addresses
6
- body:
7
- encoding: UTF-8
8
- string: address[street1]=131%20S%208th%20Ave&address[city]=Manville&address[zip]=08835&address[phone]=(202)%20456-1111&address[name]=NY%20Warehouse&address[company]=NY%20Warehouse&address[state]=NJ&address[country]=US
9
- headers:
10
- Accept:
11
- - "*/*"
12
- User-Agent:
13
- - EasyPost/v2 RubyClient/3.0.1
14
- Authorization:
15
- - Bearer CvzYtuda6KRI9JjG7SAHbA
16
- Content-Type:
17
- - application/x-www-form-urlencoded
18
- Content-Length:
19
- - '209'
20
- Accept-Encoding:
21
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
22
- Host:
23
- - api.easypost.com
24
- response:
25
- status:
26
- code: 201
27
- message: Created
28
- headers:
29
- X-Frame-Options:
30
- - SAMEORIGIN
31
- X-Xss-Protection:
32
- - 1; mode=block
33
- X-Content-Type-Options:
34
- - nosniff
35
- X-Ep-Request-Uuid:
36
- - 43c6543d5dca6f2dee72e8ed00010f9a
37
- Cache-Control:
38
- - no-cache, no-store, must-revalidate, private
39
- Pragma:
40
- - no-cache
41
- Expires:
42
- - '0'
43
- Location:
44
- - "/api/v2/addresses/adr_39df7ef94ff04db6848ade2b716c500d"
45
- Content-Type:
46
- - application/json; charset=utf-8
47
- X-Runtime:
48
- - '0.112469'
49
- Transfer-Encoding:
50
- - chunked
51
- X-Node:
52
- - bigweb11sj
53
- X-Version-Label:
54
- - easypost-201911120131-f5c72b1880-master
55
- X-Backend:
56
- - easypost
57
- X-Proxied:
58
- - extlb2wdc 2744487620
59
- - intlb2sj ff5a2958df
60
- - intlb2wdc ff5a2958df
61
- Strict-Transport-Security:
62
- - max-age=15768000; includeSubDomains; preload
63
- body:
64
- encoding: ASCII-8BIT
65
- string: '{"id":"adr_39df7ef94ff04db6848ade2b716c500d","object":"Address","created_at":"2019-11-12T08:37:01Z","updated_at":"2019-11-12T08:37:01Z","name":"NY
66
- Warehouse","company":"NY Warehouse","street1":"131 S 8th Ave","street2":null,"city":"Manville","state":"NJ","zip":"08835","country":"US","phone":"2024561111","email":null,"mode":"test","carrier_facility":null,"residential":null,"federal_tax_id":null,"state_tax_id":null,"verifications":{}}'
67
- http_version:
68
- recorded_at: Tue, 12 Nov 2019 08:37:01 GMT
69
- recorded_with: VCR 5.0.0
@@ -1,269 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: https://api.easypost.com/v2/addresses
6
- body:
7
- encoding: UTF-8
8
- string: address[street1]=A%20Different%20Road&address[street2]=Northwest&address[city]=Manville&address[zip]=08835&address[phone]=555-555-0199&address[company]=Company&address[name]=John%20Doe&address[state]=NJ&address[country]=US
9
- headers:
10
- Accept:
11
- - "*/*"
12
- User-Agent:
13
- - EasyPost/v2 RubyClient/3.0.1
14
- Authorization:
15
- - Bearer CvzYtuda6KRI9JjG7SAHbA
16
- Content-Type:
17
- - application/x-www-form-urlencoded
18
- Content-Length:
19
- - '222'
20
- Accept-Encoding:
21
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
22
- Host:
23
- - api.easypost.com
24
- response:
25
- status:
26
- code: 201
27
- message: Created
28
- headers:
29
- X-Frame-Options:
30
- - SAMEORIGIN
31
- X-Xss-Protection:
32
- - 1; mode=block
33
- X-Content-Type-Options:
34
- - nosniff
35
- X-Ep-Request-Uuid:
36
- - 43c6543d5dca6f2eee730f5500010fb1
37
- Cache-Control:
38
- - no-cache, no-store, must-revalidate, private
39
- Pragma:
40
- - no-cache
41
- Expires:
42
- - '0'
43
- Location:
44
- - "/api/v2/addresses/adr_25fcbe338dae4a85b4b0424a9289d55b"
45
- Content-Type:
46
- - application/json; charset=utf-8
47
- X-Runtime:
48
- - '0.027353'
49
- Transfer-Encoding:
50
- - chunked
51
- X-Node:
52
- - bigweb11sj
53
- X-Version-Label:
54
- - easypost-201911120131-f5c72b1880-master
55
- X-Backend:
56
- - easypost
57
- X-Proxied:
58
- - extlb2wdc 2744487620
59
- - intlb1wdc ff5a2958df
60
- - intlb2sj ff5a2958df
61
- Strict-Transport-Security:
62
- - max-age=15768000; includeSubDomains; preload
63
- body:
64
- encoding: ASCII-8BIT
65
- string: '{"id":"adr_25fcbe338dae4a85b4b0424a9289d55b","object":"Address","created_at":"2019-11-12T08:37:02Z","updated_at":"2019-11-12T08:37:02Z","name":"John
66
- Doe","company":"Company","street1":"A Different Road","street2":"Northwest","city":"Manville","state":"NJ","zip":"08835","country":"US","phone":"5555550199","email":null,"mode":"test","carrier_facility":null,"residential":null,"federal_tax_id":null,"state_tax_id":null,"verifications":{}}'
67
- http_version:
68
- recorded_at: Tue, 12 Nov 2019 08:37:02 GMT
69
- - request:
70
- method: post
71
- uri: https://api.easypost.com/v2/addresses
72
- body:
73
- encoding: UTF-8
74
- string: address[street1]=131%20S%208th%20Ave&address[city]=Manville&address[zip]=08835&address[phone]=(202)%20456-1111&address[name]=NY%20Warehouse&address[company]=NY%20Warehouse&address[state]=NJ&address[country]=US
75
- headers:
76
- Accept:
77
- - "*/*"
78
- User-Agent:
79
- - EasyPost/v2 RubyClient/3.0.1
80
- Authorization:
81
- - Bearer CvzYtuda6KRI9JjG7SAHbA
82
- Content-Type:
83
- - application/x-www-form-urlencoded
84
- Content-Length:
85
- - '209'
86
- Accept-Encoding:
87
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
88
- Host:
89
- - api.easypost.com
90
- response:
91
- status:
92
- code: 201
93
- message: Created
94
- headers:
95
- X-Frame-Options:
96
- - SAMEORIGIN
97
- X-Xss-Protection:
98
- - 1; mode=block
99
- X-Content-Type-Options:
100
- - nosniff
101
- X-Ep-Request-Uuid:
102
- - 43c6543d5dca6f2fee70d10b00010fc1
103
- Cache-Control:
104
- - no-cache, no-store, must-revalidate, private
105
- Pragma:
106
- - no-cache
107
- Expires:
108
- - '0'
109
- Location:
110
- - "/api/v2/addresses/adr_b8bce2bf3fae4dbf9d683a6f1c639dbc"
111
- Content-Type:
112
- - application/json; charset=utf-8
113
- X-Runtime:
114
- - '0.028187'
115
- Transfer-Encoding:
116
- - chunked
117
- X-Node:
118
- - bigweb11sj
119
- X-Version-Label:
120
- - easypost-201911120131-f5c72b1880-master
121
- X-Backend:
122
- - easypost
123
- X-Proxied:
124
- - extlb2wdc 2744487620
125
- - intlb1sj ff5a2958df
126
- - intlb1wdc ff5a2958df
127
- Strict-Transport-Security:
128
- - max-age=15768000; includeSubDomains; preload
129
- body:
130
- encoding: ASCII-8BIT
131
- string: '{"id":"adr_b8bce2bf3fae4dbf9d683a6f1c639dbc","object":"Address","created_at":"2019-11-12T08:37:03Z","updated_at":"2019-11-12T08:37:03Z","name":"NY
132
- Warehouse","company":"NY Warehouse","street1":"131 S 8th Ave","street2":null,"city":"Manville","state":"NJ","zip":"08835","country":"US","phone":"2024561111","email":null,"mode":"test","carrier_facility":null,"residential":null,"federal_tax_id":null,"state_tax_id":null,"verifications":{}}'
133
- http_version:
134
- recorded_at: Tue, 12 Nov 2019 08:37:03 GMT
135
- - request:
136
- method: post
137
- uri: https://api.easypost.com/v2/parcels
138
- body:
139
- encoding: UTF-8
140
- string: parcel[weight]=10.0
141
- headers:
142
- Accept:
143
- - "*/*"
144
- User-Agent:
145
- - EasyPost/v2 RubyClient/3.0.1
146
- Authorization:
147
- - Bearer CvzYtuda6KRI9JjG7SAHbA
148
- Content-Type:
149
- - application/x-www-form-urlencoded
150
- Content-Length:
151
- - '19'
152
- Accept-Encoding:
153
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
154
- Host:
155
- - api.easypost.com
156
- response:
157
- status:
158
- code: 201
159
- message: Created
160
- headers:
161
- X-Frame-Options:
162
- - SAMEORIGIN
163
- X-Xss-Protection:
164
- - 1; mode=block
165
- X-Content-Type-Options:
166
- - nosniff
167
- X-Ep-Request-Uuid:
168
- - 43c6543d5dca6f30ee7264e600010fcc
169
- Cache-Control:
170
- - no-cache, no-store, must-revalidate, private
171
- Pragma:
172
- - no-cache
173
- Expires:
174
- - '0'
175
- Location:
176
- - "/api/v2/parcels/prcl_8eb933d20e96422782f5b3f81e98454d"
177
- Content-Type:
178
- - application/json; charset=utf-8
179
- X-Runtime:
180
- - '0.026907'
181
- Transfer-Encoding:
182
- - chunked
183
- X-Node:
184
- - bigweb4sj
185
- X-Version-Label:
186
- - easypost-201911120131-f5c72b1880-master
187
- X-Backend:
188
- - easypost
189
- X-Proxied:
190
- - extlb2wdc 2744487620
191
- - intlb2sj ff5a2958df
192
- - intlb2wdc ff5a2958df
193
- Strict-Transport-Security:
194
- - max-age=15768000; includeSubDomains; preload
195
- body:
196
- encoding: ASCII-8BIT
197
- string: '{"id":"prcl_8eb933d20e96422782f5b3f81e98454d","object":"Parcel","created_at":"2019-11-12T08:37:04Z","updated_at":"2019-11-12T08:37:04Z","length":null,"width":null,"height":null,"predefined_package":null,"weight":10.0,"mode":"test"}'
198
- http_version:
199
- recorded_at: Tue, 12 Nov 2019 08:37:04 GMT
200
- - request:
201
- method: post
202
- uri: https://api.easypost.com/v2/shipments
203
- body:
204
- encoding: UTF-8
205
- string: shipment[to_address][id]=adr_25fcbe338dae4a85b4b0424a9289d55b&shipment[from_address][id]=adr_b8bce2bf3fae4dbf9d683a6f1c639dbc&shipment[parcel][id]=prcl_8eb933d20e96422782f5b3f81e98454d
206
- headers:
207
- Accept:
208
- - "*/*"
209
- User-Agent:
210
- - EasyPost/v2 RubyClient/3.0.1
211
- Authorization:
212
- - Bearer CvzYtuda6KRI9JjG7SAHbA
213
- Content-Type:
214
- - application/x-www-form-urlencoded
215
- Content-Length:
216
- - '184'
217
- Accept-Encoding:
218
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
219
- Host:
220
- - api.easypost.com
221
- response:
222
- status:
223
- code: 201
224
- message: Created
225
- headers:
226
- X-Frame-Options:
227
- - SAMEORIGIN
228
- X-Xss-Protection:
229
- - 1; mode=block
230
- X-Content-Type-Options:
231
- - nosniff
232
- X-Ep-Request-Uuid:
233
- - 43c6543d5dca6f30ee6ea36a00010fda
234
- Cache-Control:
235
- - no-cache, no-store, must-revalidate, private
236
- Pragma:
237
- - no-cache
238
- Expires:
239
- - '0'
240
- Location:
241
- - "/api/v2/shipments/shp_69203593ad0c4b269981425c8235d293"
242
- Content-Type:
243
- - application/json; charset=utf-8
244
- X-Runtime:
245
- - '0.215101'
246
- Transfer-Encoding:
247
- - chunked
248
- X-Node:
249
- - bigweb9sj
250
- X-Version-Label:
251
- - easypost-201911120131-f5c72b1880-master
252
- X-Backend:
253
- - easypost
254
- X-Proxied:
255
- - extlb2wdc 2744487620
256
- - intlb2sj ff5a2958df
257
- - intlb2wdc ff5a2958df
258
- Strict-Transport-Security:
259
- - max-age=15768000; includeSubDomains; preload
260
- body:
261
- encoding: ASCII-8BIT
262
- string: '{"created_at":"2019-11-12T08:37:05Z","is_return":false,"messages":[],"mode":"test","options":{"currency":"USD","payment":{"type":"SENDER"},"label_date":null,"date_advance":0},"reference":null,"status":"unknown","tracking_code":null,"updated_at":"2019-11-12T08:37:05Z","batch_id":null,"batch_status":null,"batch_message":null,"customs_info":null,"from_address":{"id":"adr_b8bce2bf3fae4dbf9d683a6f1c639dbc","object":"Address","created_at":"2019-11-12T08:37:03Z","updated_at":"2019-11-12T08:37:03Z","name":"NY
263
- Warehouse","company":"NY Warehouse","street1":"131 S 8th Ave","street2":null,"city":"Manville","state":"NJ","zip":"08835","country":"US","phone":"2024561111","email":null,"mode":"test","carrier_facility":null,"residential":null,"federal_tax_id":null,"state_tax_id":null,"verifications":{}},"insurance":null,"order_id":null,"parcel":{"id":"prcl_8eb933d20e96422782f5b3f81e98454d","object":"Parcel","created_at":"2019-11-12T08:37:04Z","updated_at":"2019-11-12T08:37:04Z","length":null,"width":null,"height":null,"predefined_package":null,"weight":10.0,"mode":"test"},"postage_label":null,"rates":[{"id":"rate_e7a900ad0c2d41789c9cce72e37ab5f8","object":"Rate","created_at":"2019-11-12T08:37:05Z","updated_at":"2019-11-12T08:37:05Z","mode":"test","service":"Priority","carrier":"USPS","rate":"6.95","currency":"USD","retail_rate":"7.35","retail_currency":"USD","list_rate":"6.95","list_currency":"USD","delivery_days":1,"delivery_date":null,"delivery_date_guaranteed":false,"est_delivery_days":1,"shipment_id":"shp_69203593ad0c4b269981425c8235d293","carrier_account_id":"ca_mtb51Ve0"},{"id":"rate_9f17571688184197abe057e5b8b9a282","object":"Rate","created_at":"2019-11-12T08:37:05Z","updated_at":"2019-11-12T08:37:05Z","mode":"test","service":"First","carrier":"USPS","rate":"3.82","currency":"USD","retail_rate":"5.19","retail_currency":"USD","list_rate":"3.82","list_currency":"USD","delivery_days":2,"delivery_date":null,"delivery_date_guaranteed":false,"est_delivery_days":2,"shipment_id":"shp_69203593ad0c4b269981425c8235d293","carrier_account_id":"ca_mtb51Ve0"},{"id":"rate_7ee2d1e1fcc4462e87502a24e90bd641","object":"Rate","created_at":"2019-11-12T08:37:05Z","updated_at":"2019-11-12T08:37:05Z","mode":"test","service":"ParcelSelect","carrier":"USPS","rate":"6.85","currency":"USD","retail_rate":"6.85","retail_currency":"USD","list_rate":"6.85","list_currency":"USD","delivery_days":2,"delivery_date":null,"delivery_date_guaranteed":false,"est_delivery_days":2,"shipment_id":"shp_69203593ad0c4b269981425c8235d293","carrier_account_id":"ca_mtb51Ve0"},{"id":"rate_6ef008b7ccf1474792754fee3fcffdbe","object":"Rate","created_at":"2019-11-12T08:37:05Z","updated_at":"2019-11-12T08:37:05Z","mode":"test","service":"Express","carrier":"USPS","rate":"22.74","currency":"USD","retail_rate":"25.60","retail_currency":"USD","list_rate":"22.74","list_currency":"USD","delivery_days":null,"delivery_date":null,"delivery_date_guaranteed":false,"est_delivery_days":null,"shipment_id":"shp_69203593ad0c4b269981425c8235d293","carrier_account_id":"ca_mtb51Ve0"}],"refund_status":null,"scan_form":null,"selected_rate":null,"tracker":null,"to_address":{"id":"adr_25fcbe338dae4a85b4b0424a9289d55b","object":"Address","created_at":"2019-11-12T08:37:02Z","updated_at":"2019-11-12T08:37:02Z","name":"John
264
- Doe","company":"Company","street1":"A Different Road","street2":"Northwest","city":"Manville","state":"NJ","zip":"08835","country":"US","phone":"5555550199","email":null,"mode":"test","carrier_facility":null,"residential":null,"federal_tax_id":null,"state_tax_id":null,"verifications":{}},"usps_zone":1,"return_address":{"id":"adr_b8bce2bf3fae4dbf9d683a6f1c639dbc","object":"Address","created_at":"2019-11-12T08:37:03Z","updated_at":"2019-11-12T08:37:03Z","name":"NY
265
- Warehouse","company":"NY Warehouse","street1":"131 S 8th Ave","street2":null,"city":"Manville","state":"NJ","zip":"08835","country":"US","phone":"2024561111","email":null,"mode":"test","carrier_facility":null,"residential":null,"federal_tax_id":null,"state_tax_id":null,"verifications":{}},"buyer_address":{"id":"adr_25fcbe338dae4a85b4b0424a9289d55b","object":"Address","created_at":"2019-11-12T08:37:02Z","updated_at":"2019-11-12T08:37:02Z","name":"John
266
- Doe","company":"Company","street1":"A Different Road","street2":"Northwest","city":"Manville","state":"NJ","zip":"08835","country":"US","phone":"5555550199","email":null,"mode":"test","carrier_facility":null,"residential":null,"federal_tax_id":null,"state_tax_id":null,"verifications":{}},"forms":[],"fees":[],"id":"shp_69203593ad0c4b269981425c8235d293","object":"Shipment"}'
267
- http_version:
268
- recorded_at: Tue, 12 Nov 2019 08:37:05 GMT
269
- recorded_with: VCR 5.0.0
@@ -1,269 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: https://api.easypost.com/v2/addresses
6
- body:
7
- encoding: UTF-8
8
- string: address[street1]=A%20Different%20Road&address[street2]=Northwest&address[city]=Manville&address[zip]=08835&address[phone]=555-555-0199&address[company]=Company&address[name]=John%20Doe&address[state]=NJ&address[country]=US
9
- headers:
10
- Accept:
11
- - "*/*"
12
- User-Agent:
13
- - EasyPost/v2 RubyClient/3.0.1
14
- Authorization:
15
- - Bearer CvzYtuda6KRI9JjG7SAHbA
16
- Content-Type:
17
- - application/x-www-form-urlencoded
18
- Content-Length:
19
- - '222'
20
- Accept-Encoding:
21
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
22
- Host:
23
- - api.easypost.com
24
- response:
25
- status:
26
- code: 201
27
- message: Created
28
- headers:
29
- X-Frame-Options:
30
- - SAMEORIGIN
31
- X-Xss-Protection:
32
- - 1; mode=block
33
- X-Content-Type-Options:
34
- - nosniff
35
- X-Ep-Request-Uuid:
36
- - 43c6543d5dca6f32ee70495000010ff3
37
- Cache-Control:
38
- - no-cache, no-store, must-revalidate, private
39
- Pragma:
40
- - no-cache
41
- Expires:
42
- - '0'
43
- Location:
44
- - "/api/v2/addresses/adr_7b78154b10e74e22b90ad8ddedc765e1"
45
- Content-Type:
46
- - application/json; charset=utf-8
47
- X-Runtime:
48
- - '0.031820'
49
- Transfer-Encoding:
50
- - chunked
51
- X-Node:
52
- - bigweb6sj
53
- X-Version-Label:
54
- - easypost-201911120131-f5c72b1880-master
55
- X-Backend:
56
- - easypost
57
- X-Proxied:
58
- - extlb2wdc 2744487620
59
- - intlb1sj ff5a2958df
60
- - intlb1wdc ff5a2958df
61
- Strict-Transport-Security:
62
- - max-age=15768000; includeSubDomains; preload
63
- body:
64
- encoding: ASCII-8BIT
65
- string: '{"id":"adr_7b78154b10e74e22b90ad8ddedc765e1","object":"Address","created_at":"2019-11-12T08:37:06Z","updated_at":"2019-11-12T08:37:06Z","name":"John
66
- Doe","company":"Company","street1":"A Different Road","street2":"Northwest","city":"Manville","state":"NJ","zip":"08835","country":"US","phone":"5555550199","email":null,"mode":"test","carrier_facility":null,"residential":null,"federal_tax_id":null,"state_tax_id":null,"verifications":{}}'
67
- http_version:
68
- recorded_at: Tue, 12 Nov 2019 08:37:06 GMT
69
- - request:
70
- method: post
71
- uri: https://api.easypost.com/v2/addresses
72
- body:
73
- encoding: UTF-8
74
- string: address[street1]=131%20S%208th%20Ave&address[city]=Manville&address[zip]=08835&address[phone]=(202)%20456-1111&address[name]=NY%20Warehouse&address[company]=NY%20Warehouse&address[state]=NJ&address[country]=US
75
- headers:
76
- Accept:
77
- - "*/*"
78
- User-Agent:
79
- - EasyPost/v2 RubyClient/3.0.1
80
- Authorization:
81
- - Bearer CvzYtuda6KRI9JjG7SAHbA
82
- Content-Type:
83
- - application/x-www-form-urlencoded
84
- Content-Length:
85
- - '209'
86
- Accept-Encoding:
87
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
88
- Host:
89
- - api.easypost.com
90
- response:
91
- status:
92
- code: 201
93
- message: Created
94
- headers:
95
- X-Frame-Options:
96
- - SAMEORIGIN
97
- X-Xss-Protection:
98
- - 1; mode=block
99
- X-Content-Type-Options:
100
- - nosniff
101
- X-Ep-Request-Uuid:
102
- - 43c6543d5dca6f32ee70c04b00011000
103
- Cache-Control:
104
- - no-cache, no-store, must-revalidate, private
105
- Pragma:
106
- - no-cache
107
- Expires:
108
- - '0'
109
- Location:
110
- - "/api/v2/addresses/adr_b77b0c8c145849bc999942e08c196554"
111
- Content-Type:
112
- - application/json; charset=utf-8
113
- X-Runtime:
114
- - '0.033200'
115
- Transfer-Encoding:
116
- - chunked
117
- X-Node:
118
- - bigweb3sj
119
- X-Version-Label:
120
- - easypost-201911120131-f5c72b1880-master
121
- X-Backend:
122
- - easypost
123
- X-Proxied:
124
- - extlb2wdc 2744487620
125
- - intlb1sj ff5a2958df
126
- - intlb2wdc ff5a2958df
127
- Strict-Transport-Security:
128
- - max-age=15768000; includeSubDomains; preload
129
- body:
130
- encoding: ASCII-8BIT
131
- string: '{"id":"adr_b77b0c8c145849bc999942e08c196554","object":"Address","created_at":"2019-11-12T08:37:06Z","updated_at":"2019-11-12T08:37:06Z","name":"NY
132
- Warehouse","company":"NY Warehouse","street1":"131 S 8th Ave","street2":null,"city":"Manville","state":"NJ","zip":"08835","country":"US","phone":"2024561111","email":null,"mode":"test","carrier_facility":null,"residential":null,"federal_tax_id":null,"state_tax_id":null,"verifications":{}}'
133
- http_version:
134
- recorded_at: Tue, 12 Nov 2019 08:37:07 GMT
135
- - request:
136
- method: post
137
- uri: https://api.easypost.com/v2/parcels
138
- body:
139
- encoding: UTF-8
140
- string: parcel[weight]=10.0
141
- headers:
142
- Accept:
143
- - "*/*"
144
- User-Agent:
145
- - EasyPost/v2 RubyClient/3.0.1
146
- Authorization:
147
- - Bearer CvzYtuda6KRI9JjG7SAHbA
148
- Content-Type:
149
- - application/x-www-form-urlencoded
150
- Content-Length:
151
- - '19'
152
- Accept-Encoding:
153
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
154
- Host:
155
- - api.easypost.com
156
- response:
157
- status:
158
- code: 201
159
- message: Created
160
- headers:
161
- X-Frame-Options:
162
- - SAMEORIGIN
163
- X-Xss-Protection:
164
- - 1; mode=block
165
- X-Content-Type-Options:
166
- - nosniff
167
- X-Ep-Request-Uuid:
168
- - 43c6543d5dca6f33ee739b9200011010
169
- Cache-Control:
170
- - no-cache, no-store, must-revalidate, private
171
- Pragma:
172
- - no-cache
173
- Expires:
174
- - '0'
175
- Location:
176
- - "/api/v2/parcels/prcl_8c84e88df8c8412fb85bbb23bcd58dac"
177
- Content-Type:
178
- - application/json; charset=utf-8
179
- X-Runtime:
180
- - '0.026675'
181
- Transfer-Encoding:
182
- - chunked
183
- X-Node:
184
- - bigweb4sj
185
- X-Version-Label:
186
- - easypost-201911120131-f5c72b1880-master
187
- X-Backend:
188
- - easypost
189
- X-Proxied:
190
- - extlb2wdc 2744487620
191
- - intlb1sj ff5a2958df
192
- - intlb2wdc ff5a2958df
193
- Strict-Transport-Security:
194
- - max-age=15768000; includeSubDomains; preload
195
- body:
196
- encoding: ASCII-8BIT
197
- string: '{"id":"prcl_8c84e88df8c8412fb85bbb23bcd58dac","object":"Parcel","created_at":"2019-11-12T08:37:07Z","updated_at":"2019-11-12T08:37:07Z","length":null,"width":null,"height":null,"predefined_package":null,"weight":10.0,"mode":"test"}'
198
- http_version:
199
- recorded_at: Tue, 12 Nov 2019 08:37:07 GMT
200
- - request:
201
- method: post
202
- uri: https://api.easypost.com/v2/shipments
203
- body:
204
- encoding: UTF-8
205
- string: shipment[to_address][id]=adr_7b78154b10e74e22b90ad8ddedc765e1&shipment[from_address][id]=adr_b77b0c8c145849bc999942e08c196554&shipment[parcel][id]=prcl_8c84e88df8c8412fb85bbb23bcd58dac
206
- headers:
207
- Accept:
208
- - "*/*"
209
- User-Agent:
210
- - EasyPost/v2 RubyClient/3.0.1
211
- Authorization:
212
- - Bearer CvzYtuda6KRI9JjG7SAHbA
213
- Content-Type:
214
- - application/x-www-form-urlencoded
215
- Content-Length:
216
- - '184'
217
- Accept-Encoding:
218
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
219
- Host:
220
- - api.easypost.com
221
- response:
222
- status:
223
- code: 201
224
- message: Created
225
- headers:
226
- X-Frame-Options:
227
- - SAMEORIGIN
228
- X-Xss-Protection:
229
- - 1; mode=block
230
- X-Content-Type-Options:
231
- - nosniff
232
- X-Ep-Request-Uuid:
233
- - 43c6543d5dca6f34ee6fb7c60001101d
234
- Cache-Control:
235
- - no-cache, no-store, must-revalidate, private
236
- Pragma:
237
- - no-cache
238
- Expires:
239
- - '0'
240
- Location:
241
- - "/api/v2/shipments/shp_122039c0377049ad8ae79180a94b99eb"
242
- Content-Type:
243
- - application/json; charset=utf-8
244
- X-Runtime:
245
- - '0.199416'
246
- Transfer-Encoding:
247
- - chunked
248
- X-Node:
249
- - bigweb4sj
250
- X-Version-Label:
251
- - easypost-201911120131-f5c72b1880-master
252
- X-Backend:
253
- - easypost
254
- X-Proxied:
255
- - extlb2wdc 2744487620
256
- - intlb1wdc ff5a2958df
257
- - intlb2sj ff5a2958df
258
- Strict-Transport-Security:
259
- - max-age=15768000; includeSubDomains; preload
260
- body:
261
- encoding: ASCII-8BIT
262
- string: '{"created_at":"2019-11-12T08:37:08Z","is_return":false,"messages":[],"mode":"test","options":{"currency":"USD","payment":{"type":"SENDER"},"label_date":null,"date_advance":0},"reference":null,"status":"unknown","tracking_code":null,"updated_at":"2019-11-12T08:37:08Z","batch_id":null,"batch_status":null,"batch_message":null,"customs_info":null,"from_address":{"id":"adr_b77b0c8c145849bc999942e08c196554","object":"Address","created_at":"2019-11-12T08:37:06Z","updated_at":"2019-11-12T08:37:06Z","name":"NY
263
- Warehouse","company":"NY Warehouse","street1":"131 S 8th Ave","street2":null,"city":"Manville","state":"NJ","zip":"08835","country":"US","phone":"2024561111","email":null,"mode":"test","carrier_facility":null,"residential":null,"federal_tax_id":null,"state_tax_id":null,"verifications":{}},"insurance":null,"order_id":null,"parcel":{"id":"prcl_8c84e88df8c8412fb85bbb23bcd58dac","object":"Parcel","created_at":"2019-11-12T08:37:07Z","updated_at":"2019-11-12T08:37:07Z","length":null,"width":null,"height":null,"predefined_package":null,"weight":10.0,"mode":"test"},"postage_label":null,"rates":[{"id":"rate_4fc7250da232458fb647d295e12da82f","object":"Rate","created_at":"2019-11-12T08:37:08Z","updated_at":"2019-11-12T08:37:08Z","mode":"test","service":"ParcelSelect","carrier":"USPS","rate":"6.85","currency":"USD","retail_rate":"6.85","retail_currency":"USD","list_rate":"6.85","list_currency":"USD","delivery_days":2,"delivery_date":null,"delivery_date_guaranteed":false,"est_delivery_days":2,"shipment_id":"shp_122039c0377049ad8ae79180a94b99eb","carrier_account_id":"ca_mtb51Ve0"},{"id":"rate_dd7132227faf4b81bdfd9b04bad312ab","object":"Rate","created_at":"2019-11-12T08:37:08Z","updated_at":"2019-11-12T08:37:08Z","mode":"test","service":"Express","carrier":"USPS","rate":"22.74","currency":"USD","retail_rate":"25.60","retail_currency":"USD","list_rate":"22.74","list_currency":"USD","delivery_days":null,"delivery_date":null,"delivery_date_guaranteed":false,"est_delivery_days":null,"shipment_id":"shp_122039c0377049ad8ae79180a94b99eb","carrier_account_id":"ca_mtb51Ve0"},{"id":"rate_efad3b6a3cbe43cfa02d1f9df6d0e409","object":"Rate","created_at":"2019-11-12T08:37:08Z","updated_at":"2019-11-12T08:37:08Z","mode":"test","service":"Priority","carrier":"USPS","rate":"6.95","currency":"USD","retail_rate":"7.35","retail_currency":"USD","list_rate":"6.95","list_currency":"USD","delivery_days":1,"delivery_date":null,"delivery_date_guaranteed":false,"est_delivery_days":1,"shipment_id":"shp_122039c0377049ad8ae79180a94b99eb","carrier_account_id":"ca_mtb51Ve0"},{"id":"rate_514fb0e6cc9d4472bc28569624aa4622","object":"Rate","created_at":"2019-11-12T08:37:08Z","updated_at":"2019-11-12T08:37:08Z","mode":"test","service":"First","carrier":"USPS","rate":"3.82","currency":"USD","retail_rate":"5.19","retail_currency":"USD","list_rate":"3.82","list_currency":"USD","delivery_days":2,"delivery_date":null,"delivery_date_guaranteed":false,"est_delivery_days":2,"shipment_id":"shp_122039c0377049ad8ae79180a94b99eb","carrier_account_id":"ca_mtb51Ve0"}],"refund_status":null,"scan_form":null,"selected_rate":null,"tracker":null,"to_address":{"id":"adr_7b78154b10e74e22b90ad8ddedc765e1","object":"Address","created_at":"2019-11-12T08:37:06Z","updated_at":"2019-11-12T08:37:06Z","name":"John
264
- Doe","company":"Company","street1":"A Different Road","street2":"Northwest","city":"Manville","state":"NJ","zip":"08835","country":"US","phone":"5555550199","email":null,"mode":"test","carrier_facility":null,"residential":null,"federal_tax_id":null,"state_tax_id":null,"verifications":{}},"usps_zone":1,"return_address":{"id":"adr_b77b0c8c145849bc999942e08c196554","object":"Address","created_at":"2019-11-12T08:37:06Z","updated_at":"2019-11-12T08:37:06Z","name":"NY
265
- Warehouse","company":"NY Warehouse","street1":"131 S 8th Ave","street2":null,"city":"Manville","state":"NJ","zip":"08835","country":"US","phone":"2024561111","email":null,"mode":"test","carrier_facility":null,"residential":null,"federal_tax_id":null,"state_tax_id":null,"verifications":{}},"buyer_address":{"id":"adr_7b78154b10e74e22b90ad8ddedc765e1","object":"Address","created_at":"2019-11-12T08:37:06Z","updated_at":"2019-11-12T08:37:06Z","name":"John
266
- Doe","company":"Company","street1":"A Different Road","street2":"Northwest","city":"Manville","state":"NJ","zip":"08835","country":"US","phone":"5555550199","email":null,"mode":"test","carrier_facility":null,"residential":null,"federal_tax_id":null,"state_tax_id":null,"verifications":{}},"forms":[],"fees":[],"id":"shp_122039c0377049ad8ae79180a94b99eb","object":"Shipment"}'
267
- http_version:
268
- recorded_at: Tue, 12 Nov 2019 08:37:08 GMT
269
- recorded_with: VCR 5.0.0