wOow Global

Get Estimate Rate

Get shipping rate estimates for specified carriers

Get Estimate Rate

This endpoint allows users to retrieve shipping rate estimates for specified carriers based on origin and destination locations, package weight, and delivery preferences.

API Tester - Get Estimate Rate

Get shipping rate estimates for specified carriers

Environment:
POST
https://dev-api.woowbd.com/api/v1/developer/api/v1/developer/estimate-rates

Get your token from: http://dev-app.woowbd.com/dashboard/developer

Request

  • Method: POST
  • Endpoint: {{base_url}}/api/v1/developer/estimate-rates

Request Body

The request body should be in JSON format and include the following parameters:

ParameterTypeRequiredDescription
carrier_idsArray of StringsYesAn array of carrier IDs to get rate estimates for (e.g., ["se-138136"])
from_country_codeStringYesThe country code of the origin location (e.g., "US")
from_postal_codeStringYesThe postal code of the origin location
to_country_codeStringYesThe country code of the destination location (e.g., "US")
to_postal_codeStringYesThe postal code of the destination location
weightObjectYesThe weight of the package
confirmationStringYesThe confirmation type (e.g., "none")
address_residential_indicatorStringYesIndicates if the address is residential ("yes" or "no")

weight Object

ParameterTypeRequiredDescription
valueNumberYesThe weight value (e.g., 2.0)
unitStringYesThe unit of weight (e.g., "ounce", "pound", "gram", "kilogram")

Example Request

curl -X POST "{{base_url}}/api/v1/developer/estimate-rates" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "carrier_ids": [
      "se-138136"
    ],
    "from_country_code": "US",
    "from_postal_code": "78756",
    "to_country_code": "US",
    "to_postal_code": "11432",
    "weight": {
      "value": 2.0,
      "unit": "ounce"
    },
    "confirmation": "none",
    "address_residential_indicator": "no"
  }'

Response

The response will be in JSON format and includes the following structure:

  • status (Boolean): Indicates whether the request was successful.
  • message (String): A message providing additional information about the request.
  • data (Array of Objects): Contains shipping rate estimate information for each carrier.
  • errors (Array): An array containing any errors that occurred during the request.
  • response_code (String): The response code associated with the request.

data Object Structure

Each object in the data array contains the following fields:

ParameterTypeDescription
logoStringURL to the courier's logo
courier_nameStringThe name of the courier service
providerStringThe provider identifier (e.g., "woow_es", "WOOW_CARGO")
pickup_partnerStringThe pickup partner name (e.g., "Stamps.com", "LOCAL_USA")
shipping_chargeNumberThe charge for shipping
pickup_chargeNumberThe charge for pickup
descriptionStringDescription of the shipping option
courier_idStringThe unique identifier for the courier
delivery_time_textStringTextual representation of delivery time (e.g., "14 Business Days")
delivery_timeNumberEstimated delivery time in hours
import_taxStringApplicable import tax information
service_typeStringThe type of service (e.g., "SHIP_ANY_WHERE", "CARGO_TO_BD")
courier_typeStringThe type of courier service (e.g., "EXPRESS", "ECONOMIC")
rate_idStringThe unique identifier for the rate (may be empty)
brokerage_feesNumberBrokerage fees (if applicable)
home_delivery_feeNumberFee for home delivery
charge_breakdownObjectDetailed breakdown of charges
is_local_rateBooleanIndicates if this is a local rate
conversion_rateNumberCurrency conversion rate (if applicable)

charge_breakdown Object Structure

ParameterTypeDescription
base_priceNumberThe base price for shipping
service_chargeNumberAdditional service charges
fuel_chargeNumberFuel surcharge
vatNumberValue-added tax
total_percentageNumberTotal percentage charges
residential_delivery_feeNumberFee for residential delivery
other_feesNumberOther miscellaneous fees

Example Response

{
  "status": true,
  "message": "Rates estimated successfully",
  "data": [
    {
      "logo": "https://woow-global.s3.us-west-1.amazonaws.comcourier_logos/GlobalPost.svg",
      "courier_name": "GlobalPost Economy Intl",
      "provider": "woow_es",
      "pickup_partner": "Stamps.com",
      "shipping_charge": 13.79,
      "pickup_charge": 5,
      "description": "GlobalPost Economy Intl",
      "courier_id": "se-138136",
      "delivery_time_text": "14 Business Days",
      "delivery_time": 140,
      "import_tax": "Not Required",
      "service_type": "SHIP_ANY_WHERE",
      "courier_type": "EXPRESS",
      "rate_id": "",
      "brokerage_fees": 0,
      "home_delivery_fee": 0,
      "charge_breakdown": {
        "base_price": 13.79,
        "service_charge": 0,
        "fuel_charge": 0,
        "vat": 0,
        "total_percentage": 0,
        "residential_delivery_fee": 5,
        "other_fees": 0
      },
      "is_local_rate": false,
      "conversion_rate": 1
    },
    {
      "logo": "https://dev-app-woowglobal.s3.ap-southeast-1.amazonaws.com/files/upload_images/1743934382_61748681_0l4sM.svg",
      "courier_name": "wOOw Cargo",
      "provider": "WOOW_CARGO",
      "pickup_partner": "LOCAL_USA",
      "shipping_charge": 28.64,
      "pickup_charge": 0,
      "description": "",
      "courier_id": "1",
      "rate_id": "local_1_692a9a2684d10",
      "delivery_time_text": "12-18 business days",
      "delivery_time": 180,
      "import_tax": "0",
      "service_type": "CARGO_TO_BD",
      "courier_type": "ECONOMIC",
      "charge_breakdown": {
        "base_price": 28.64,
        "service_charge": 0,
        "fuel_charge": 0,
        "vat": 0,
        "residential_delivery_fee": 0,
        "other_fees": 0
      },
      "is_local_rate": true
    }
  ],
  "errors": [],
  "response_code": "692a9a26852c5"
}

Notes

This endpoint is useful for getting quick rate estimates from multiple carriers before creating a full shipping rate calculation. The response includes detailed charge breakdowns and delivery time estimates for each available carrier option.

Code Examples

JavaScript

const response = await fetch('{{base_url}}/api/v1/developer/estimate-rates', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${API_KEY}`,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    carrier_ids: [
      "se-138136"
    ],
    from_country_code: "US",
    from_postal_code: "78756",
    to_country_code: "US",
    to_postal_code: "11432",
    weight: {
      value: 2.0,
      unit: "ounce"
    },
    confirmation: "none",
    address_residential_indicator: "no"
  })
});

const data = await response.json();
console.log(data.data); // Array of rate estimates

Python

import requests

data = {
    "carrier_ids": [
        "se-138136"
    ],
    "from_country_code": "US",
    "from_postal_code": "78756",
    "to_country_code": "US",
    "to_postal_code": "11432",
    "weight": {
        "value": 2.0,
        "unit": "ounce"
    },
    "confirmation": "none",
    "address_residential_indicator": "no"
}

response = requests.post(
    '{{base_url}}/api/v1/developer/estimate-rates',
    headers={
        'Authorization': f'Bearer {API_KEY}',
        'Content-Type': 'application/json'
    },
    json=data
)

result = response.json()
rates = result['data']  # Array of rate estimates

PHP

$data = [
    'carrier_ids' => [
        'se-138136'
    ],
    'from_country_code' => 'US',
    'from_postal_code' => '78756',
    'to_country_code' => 'US',
    'to_postal_code' => '11432',
    'weight' => [
        'value' => 2.0,
        'unit' => 'ounce'
    ],
    'confirmation' => 'none',
    'address_residential_indicator' => 'no'
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, '{{base_url}}/api/v1/developer/estimate-rates');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer ' . $API_KEY,
    'Content-Type: application/json'
]);

$response = curl_exec($ch);
curl_close($ch);

$result = json_decode($response, true);
$rates = $result['data'];  // Array of rate estimates