Rate Multiple Shipments
With ShipEngine you're able to request rates for multiple shipments at once. Unlike in the Get Shipping Rates section, this process is asynchronous. If you subscribe to webhooks, you will receive a notification when the operation is complete.
You can then retrieve the rates and create a label
using the rate_id
.
Example Request
POST /v1/rates/bulk
This example requests rates for shipments that were previously created by passing the shipment_ids
property.
1234567891011121314151617
POST /v1/rates/bulk HTTP/1.1Host: api.shipengine.comAPI-Key: __YOUR_API_KEY_HERE__Content-Type: application/json{"shipment_ids": ["se-2127226","se-2127227"],"rate_options": {"carrier_ids": ["se-123890","se-121861"]}}
This example includes the shipment information directly in the rate request rather than referencing an existing shipment.
In this case, ShipEngine will create a shipment for you and include a shipment_id
with the each rate when you
retrieve the rates.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
POST /v1/rates/bulk HTTP/1.1Host: api.shipengine.comAPI-Key: __YOUR_API_KEY_HERE__Content-Type: application/json{"rate_options": {"carrier_ids": ["se-123890","se-123890"]},"shipments": [{"ship_to": {"name": "Amanda Miller","phone": "555-555-5555","address_line1": "525 S Winchester Blvd","city_locality": "San Jose","state_province": "CA","postal_code": "95128","country_code": "US","address_residential_indicator": "yes"},"ship_from": {"company_name": "Example Corp.","name": "John Doe","phone": "111-111-1111","address_line1": "4009 Marathon Blvd","address_line2": "Suite 300","city_locality": "Austin","state_province": "TX","postal_code": "78756","country_code": "US","address_residential_indicator": "no"},"confirmation": "none","packages": [{"package_code": "package","weight": {"value": 12,"unit": "ounce"}}]},{"ship_to": {"name": "Amanda Miller","phone": "555-555-5555","address_line1": "525 S Winchester Blvd","city_locality": "San Jose","state_province": "CA","postal_code": "95128","country_code": "US","address_residential_indicator": "yes"},"ship_from": {"company_name": "Example Corp.","name": "John Doe","phone": "111-111-1111","address_line1": "4009 Marathon Blvd","address_line2": "Suite 300","city_locality": "Austin","state_province": "TX","postal_code": "78756","country_code": "US","address_residential_indicator": "no"},"confirmation": "none","packages": [{"package_code": "package","weight": {"value": 1,"unit": "pound"}}]},{"ship_to": {"name": "Waffle HQ","company_name": "Waffle House","address_line1": "5986 Financial Drive","address_line2": null,"address_line3": null,"city_locality": "Norcross","state_province": "GA","postal_code": "30071","country_code": "US","phone": "111-111-1111"},"ship_from": {"company_name": "Example Corp.","name": "John Doe","phone": "111-111-1111","address_line1": "4009 Marathon Blvd","address_line2": "Suite 300","city_locality": "Austin","state_province": "TX","postal_code": "78756","country_code": "US","address_residential_indicator": "no"},"confirmation": "none","packages": [{"package_code": "package","weight": {"value": 1,"unit": "ounce"}}]},{"ship_to": {"name": "Jony Ive","company_name": "Apple","address_line1": "1 Infinite Loop","address_line2": null,"address_line3": null,"city_locality": "Cupertino","state_province": "CA","postal_code": "95014","country_code": "US","phone": "408-996-1010"},"ship_from": {"company_name": "Example Corp.","name": "John Doe","phone": "111-111-1111","address_line1": "4009 Marathon Blvd","address_line2": "Suite 300","city_locality": "Austin","state_province": "TX","postal_code": "78756","country_code": "US","address_residential_indicator": "no"},"confirmation": "none","packages": [{"package_code": "package","weight": {"value": 1,"unit": "ounce"}}]},{"ship_to": {"name": "Amanda Miller","phone": "555-555-5555","address_line1": "525 S Winchester Blvd","city_locality": "San Jose","state_province": "CA","postal_code": "95128","country_code": "US","address_residential_indicator": "yes"},"ship_from": {"company_name": "Example Corp.","name": "John Doe","phone": "111-111-1111","address_line1": "4009 Marathon Blvd","address_line2": "Suite 300","city_locality": "Austin","state_province": "TX","postal_code": "78756","country_code": "US","address_residential_indicator": "no"},"confirmation": "none","packages": [{"package_code": "package","weight": {"value": 1,"unit": "ounce"}}]}]}
Example Response
1234567891011121314
[{"rate_request_id": 501846,"shipment_id": "se-2127226","status": "working","created_at": "2019-07-25T15:24:46.657Z"},{"rate_request_id": 501847,"shipment_id": "se-2127227","status": "working","created_at": "2019-07-25T15:24:46.657Z"}]
As we've done before in other examples, we have truncated the response to only show a single rate. When you run this command, you will notice that there are many more rates that exist.