# Estimate rates Get Rate Estimates Endpoint: POST /v2/rates/estimate Version: 2.0.0 Security: api_keys ## Request fields (application/json): - `from_country_code` (string, required) A two-letter [ISO 3166-1 country code](https://en.wikipedia.org/wiki/ISO_3166-1) Example: "CA" - `from_postal_code` (string, required) postal code Example: "78756-3717" - `from_city_locality` (string, required) from postal code Example: "Austin" - `from_state_province` (string, required) From state province Example: "Austin" - `to_country_code` (string, required) A two-letter [ISO 3166-1 country code](https://en.wikipedia.org/wiki/ISO_3166-1) Example: "CA" - `to_postal_code` (string, required) postal code Example: "78756-3717" - `to_city_locality` (string, required) The city locality the package is being shipped to Example: "Austin" - `to_state_province` (string, required) To state province Example: "Houston" - `weight` (object, required) The weight of the package - `weight.value` (number, required) The weight, in the specified unit Example: 3 - `weight.unit` (string, required) Weight unit Enum: "pound", "ounce", "gram", "kilogram" - `dimensions` (object) The dimensions of the package - `dimensions.unit` (string, required) Dimension unit Enum: "inch", "centimeter" - `dimensions.length` (number, required) The length of the package, in the specified unit Example: 2 - `dimensions.width` (number, required) The width of the package, in the specified unit Example: 2 - `dimensions.height` (number, required) The height of the package, in the specified unit Example: 1 - `confirmation` (string) The possible delivery confirmation values Enum: "none", "delivery", "signature", "adult_signature", "direct_signature", "delivery_mailed", "verbal_confirmation", "delivery_code", "age_verification_16_plus" - `address_residential_indicator` (string) Indicates whether an address is residential. Enum: "unknown", "yes", "no" - `ship_date` (string, required) ship date Example: "2018-09-23T15:00:00.000Z" ## Response 200 fields (application/json): - `rate_type` (string, required) The possible rate type values Enum: "check", "shipment" - `carrier_id` (string, required) A string that uniquely identifies the carrier Example: "se-28529731" - `shipping_amount` (object, required) The shipping amount - `shipping_amount.currency` (string, required) Currency code - `shipping_amount.amount` (number, required) The monetary amount, in the specified currency. Example: 12 - `insurance_amount` (object, required) The insurance amount - `confirmation_amount` (object, required) The confirmation amount - `other_amount` (object, required) Any other charges associated with this rate - `tax_amount` (object) Tariff and additional taxes associated with an international shipment. - `zone` (integer,null, required) Certain carriers base [their rates](https://blog.stamps.com/2017/09/08/usps-postal-zones/) off of custom zones that vary depending upon the ship_to and ship_from location Example: 6 - `package_type` (string,null, required) package type that this rate was estimated for Example: "package" - `delivery_days` (integer) The number of days estimated for delivery, this will show the _actual_ delivery time if for example, the package gets shipped on a Friday Example: 5 - `guaranteed_service` (boolean, required) Indicates if the rate is guaranteed. Example: true - `estimated_delivery_date` (string) An [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) string that represents a date, but not a specific time. The value _may_ contain a time component, but it will be set to 00:00:00 UTC by ShipStation . Example: "2018-09-23T00:00:00Z" - `carrier_delivery_days` (string) The carrier delivery days Example: "22" - `ship_date` (string) ship date Example: "2024-12-23T00:00:00.000Z" - `negotiated_rate` (boolean, required) Indicates if the rates been negotiated Example: true - `service_type` (string, required) service type Example: "next_day" - `service_code` (string, required) service code for the rate Example: "usps_priority_mail_express" - `trackable` (boolean, required) Indicates if rate is trackable Example: true - `carrier_code` (string, required) A [shipping carrier] , such as fedex, dhl_express, stamps_com, etc. Example: "stamps_com" - `carrier_nickname` (string, required) carrier nickname Example: "free" - `carrier_friendly_name` (string, required) carrier friendly name Example: "free" - `validation_status` (string, required) The possible validation status values Enum: "valid", "invalid", "has_warnings", "unknown" - `warning_messages` (array, required) The warning messages Example: ["warning"] - `error_messages` (array, required) The error messages Example: ["error"] ## Response 400 fields (application/json): - `request_id` (string, required) A UUID that uniquely identifies the request id. This can be given to the support team to help debug non-trivial issues that may occur Example: "aa3d8e8e-462b-4476-9618-72db7f7b7009" - `errors` (array, required) The errors associated with the failed API call - `errors.error_source` (string, required) The source of the error, as indicated by the name this informs us if the API call failed because of the carrier, the order source, or the ShipStation API itself. Enum: "carrier", "order_source", "ShipStation" - `errors.error_type` (string, required) The type of error Enum: "account_status", "business_rules", "validation", "security", "system", "integrations" - `errors.error_code` (string, required) The error code specified for the failed API Call Enum: "auto_fund_not_supported", "batch_cannot_be_modified", "carrier_conflict", "carrier_disconnected", "carrier_not_connected", "carrier_not_supported", "confirmation_not_supported", "default_warehouse_cannot_be_deleted", "field_conflict", "field_value_required", "forbidden", "identifier_conflict", "identifiers_must_match", "insufficient_funds", "invalid_address", "invalid_billing_plan", "invalid_field_value", "invalid_identifier", "invalid_status", "invalid_string_length", "label_images_not_supported", "meter_failure", "order_source_not_active", "rate_limit_exceeded", "refresh_not_supported", "request_body_required", "return_label_not_supported", "settings_not_supported", "subscription_inactive", "terms_not_accepted", "tracking_not_supported", "trial_expired", "unauthorized", "unknown", "unspecified", "verification_failure", "warehouse_conflict", "webhook_event_type_conflict", "customs_items_required", "incompatible_paired_labels", "invalid_charge_event", "invalid_object", "no_rates_returned" - `errors.message` (string, required) An error message associated with the failed API call Example: "Body of request cannot be null." - `errors.field_name` (string) The name of the field that caused the error (only present for validation errors) Example: "inventory_warehouse_id" - `errors.field_value` (string) The invalid value that was provided for the field (only present for validation errors) Example: "invalid-id"