Estimate a Rate

You can estimate a rate by providing a subset of the information required to create a label. You can use this to allow customers to quickly compare rates across services, carriers, and more without having to fill in all the information required to create a label.

It can also be useful to quickly estimate a rate so that you can add shipping charges to your customer's shopping cart. This allows you to offset some or all of the shipping costs to the customer at checkout. You can then use the customer's full address to get a rate and create a label at a later time. Alternately, you could provide the estimate at checkout and then create your labels in bulk when you get ready to package your shipments.

Warning

Only an Estimate!

Rate estimates are not exact quotes! They do not include things like insurance_amount and may not include other items such as fuel surcharges, customs charges, or other carrier fees.

ShipEngine can provide a good estimate by using:

  • Postal Code To
  • Postal Code From
  • Weight
  • Dimensions (optional)

Note This endpoint does not support shipments that contain multiple packages or filtering using the rate_options property. You can filter by carrier using the carrier_ids property.

Example Request

POST /v1/rates/estimate

POST /v1/rates/estimate HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "carrier_ids": [
    "se-123890"
  ],
  "from_country_code": "US",
  "from_postal_code": "78756",
  "to_country_code": "US",
  "to_postal_code": "95128",
  "to_city_locality": "San Jose",
  "to_state_province": "CA",
  "weight": {
    "value": 1.0,
    "unit": "ounce"
  },
  "dimensions": {
    "unit": "inch",
    "length": 5.0,
    "width": 5.0,
    "height": 5.0
  },
  "confirmation": "none",
  "address_residential_indicator": "no"
}

Example Response

Since these are long responses, we've truncated it to only show one rate estimate.

[
  {
    "rate_type": "check",
    "carrier_id": "se-123890",
    "shipping_amount": {
      "currency": "usd",
      "amount": 0.46
    },
    "insurance_amount": {
      "currency": "usd",
      "amount": 0.0
    },
    "confirmation_amount": {
      "currency": "usd",
      "amount": 0.0
    },
    "other_amount": {
      "currency": "usd",
      "amount": 0.0
    },
    "zone": 6,
    "package_type": "letter",
    "delivery_days": 3,
    "guaranteed_service": false,
    "estimated_delivery_date": "2019-07-25T05:00:00.000Z",
    "carrier_delivery_days": "3",
    "ship_date": "2019-07-25T05:00:00.000ZPlus3$",
    "negotiated_rate": false,
    "service_type": "USPS First Class Mail",
    "service_code": "usps_first_class_mail",
    "trackable": true,
    "validation_status": "unknown",
    "warning_messages": [],
    "error_messages": [],
    "carrier_code": "stamps_com",
    "carrier_nickname": "Free",
    "carrier_friendly_name": "Stamps.com"
  }
]