Shipbubble API Documentation
  • Shipbubble API
  • Get started
    • Authentication
    • Request and Responses
    • Errors
    • Rate Limiting
    • Pagination
    • Postman
  • API Reference
    • Wallet
      • Get shipping wallet balance
      • Request wallet fund
    • Addresses
      • Validate address (global)
      • Get validated addresses
      • Edit address details
      • Get single address details
    • Package categories
    • Package dimensions
    • Couriers
    • Rates
      • Request shipping rates
      • Request shipping rates from selected couriers
      • Edit request token details
    • Cash on delivery
    • Insurance
      • Get Insurance Rates
    • Shipments
      • Create shipment
      • Cancel shipment
    • Returns
      • Get rates for a return shipment request
    • Tracking
      • Get shipments
      • Get multiple specific shipments
    • Webhooks
      • Webhook simulator (sandbox)
Powered by GitBook
On this page

Was this helpful?

  1. API Reference
  2. Rates

Request shipping rates

Things to note:

  • Shipment rates requested after 6 PM (GMT +1) will be scheduled for processing the following day.

  • You can only request a shipment for a maximum of 7 days from the current date of request.

  • The successful rate response will indicate which courier is the cheapest, fastest, and best value for money, which is a combination of speed, price, and reliability.

  • A rate request token expires after 7 days of generation.

For your package items

Strive to be as accurate as possible when shipping! The more accurate your information is, the better the rate quote you will receive from the couriers.

Additionally, if the shipping information is incorrect, most carriers will follow up with a charge to make up the difference.

POST https://api.shipbubble.com/v1/shipping/fetch_rates

Request Body

Name
Type
Description

sender_address_code*

int

address code of label pickup (gotten from Addresses API)

reciever_address_code*

int

address code of label pickup (gotten from Addresses API)

pickup_date*

string

specified date for shipment processing(format: "yyyy-mm-dd")

category_id*

int

package item category

package_items*

Array

An array of items to be shipped, a sample package item object looks like { name:'Jameson', description:'Too sweet', unit_weight:'0.002', unit_amount:'5000', quantity:'2' }, all object items are required, item weight unit is in KG

service_type

string

filter rates by their service types ex. dropoff or pickup

delivery_instructions

string

additional delivery instructions for package

package_dimension*

Object

Dimension pf package to be delivered (in CM), if you are not sure of your dimension, you can make use of the Package Dimensions API

{ "length":12, "width":10, "height":10 }

{
    "status": "success",
    "message": "Retrieved successfully",
    "data": {
        "request_token": "b724643e35047b44bf6499ce32dec6bf44b4de88859c03198a6f5714e026173b",
        "couriers": [
            {
                "courier_id": "cora",
                "courier_name": "Cora",
                "courier_image": "https://res.cloudinary.com/delivry/image/upload/v1659021064/courier_images/topship_ixpqdt.jpg",
                "service_code": "cora",
                "insurance": {
                    "code": "not available",
                    "fee": 0
                },
                "discount": {
                    "percentage": 10,
                    "symbol": "%",
                    "discounted": 0
                },
                "service_type": "pickup",
                "waybill": false,
                "on_demand": false,
                "is_cod_available": false,
                "cod_remit_days": 2,
                "tracking_level": 7,
                "ratings": 3,
                "votes": 1,
                "connected_account": false,
                "rate_card_amount": 3063,
                "rate_card_currency": "NGN",
                "pickup_eta": "Within 3 hours",
                "pickup_eta_time": "2025-04-10 15:44:06",
                "dropoff_station": null,
                "pickup_station": null,
                "delivery_eta": "Within 23 hrs",
                "delivery_eta_time": "2025-04-11 12:44:06",
                "info": null,
                "currency": "NGN",
                "vat": 188,
                "total": 3063,
                "tracking": {
                    "bars": 4,
                    "label": "Good"
                }
            },
            {
                "courier_id": 1,
                "courier_name": "Routely (Express Standard)",
                "courier_image": "https://res.cloudinary.com/delivry/image/upload/v1659021064/courier_images/topship_ixpqdt.jpg",
                "service_code": "routely",
                "insurance": {
                    "code": "not available",
                    "fee": 0
                },
                "discount": {
                    "percentage": 10,
                    "symbol": "%",
                    "discounted": 270
                },
                "service_type": "dropoff",
                "waybill": false,
                "on_demand": false,
                "is_cod_available": false,
                "tracking_level": 7,
                "ratings": 3,
                "votes": 1,
                "connected_account": false,
                "rate_card_amount": 12451.04,
                "rate_card_currency": "NGN",
                "pickup_eta": "Within 1 day(s)",
                "pickup_eta_time": "2025-04-11 12:44:06",
                "dropoff_station": {
                    "name": "Find your nearest Routely dropoff location here",
                    "address": "https://www.routely.co/",
                    "phone": "+2349080777728"
                },
                "pickup_station": {
                    "name": "Find your nearest Routely pickup location here",
                    "address": "https://www.routely.co/",
                    "phone": "+2349080777728"
                },
                "delivery_eta": "Within 1 - 4 working days",
                "delivery_eta_time": "2025-04-15 12:44:06",
                "info": null,
                "currency": "NGN",
                "vat": 834,
                "total": 12451.04,
                "tracking": {
                    "bars": 4,
                    "label": "Good"
                }
            }
        ],
        "fastest_courier": {
            "courier_id": 2,
            "courier_name": "Routely (Express Premium)",
            "courier_image": "https://res.cloudinary.com/delivry/image/upload/v1659021064/courier_images/topship_ixpqdt.jpg",
            "service_code": "routely",
            "insurance": {
                "code": "not available",
                "fee": 0
            },
            "discount": {
                "percentage": 10,
                "symbol": "%",
                "discounted": 270
            },
            "service_type": "pickup",
            "waybill": false,
            "on_demand": false,
            "is_cod_available": false,
            "tracking_level": 7,
            "ratings": 3,
            "votes": 1,
            "connected_account": false,
            "rate_card_amount": 3308,
            "rate_card_currency": "NGN",
            "pickup_eta": "Within 2 hour(s)",
            "pickup_eta_time": "2025-04-10 16:44:06",
            "dropoff_station": null,
            "pickup_station": null,
            "delivery_eta": "Within 9 hrs",
            "delivery_eta_time": "2025-04-10 22:44:06",
            "info": null,
            "currency": "NGN",
            "vat": 203,
            "total": 3308,
            "tracking": {
                "bars": 4,
                "label": "Good"
            }
        },
        "cheapest_courier": {
            "courier_id": "dellyman",
            "courier_name": "Dellyman",
            "courier_image": "https://res.cloudinary.com/delivry/image/upload/v1697995461/courier_images/dellyman_logo_ckd6z8.png",
            "service_code": "dellyman",
            "insurance": {
                "code": "not available",
                "fee": 0
            },
            "discount": {
                "percentage": 0,
                "symbol": "%",
                "discounted": 0
            },
            "service_type": "pickup",
            "waybill": false,
            "on_demand": false,
            "is_cod_available": false,
            "tracking_level": 6,
            "ratings": 3,
            "votes": 1,
            "connected_account": true,
            "rate_card_amount": 1830,
            "rate_card_currency": "NGN",
            "pickup_eta": "Within 24 hours",
            "pickup_eta_time": "2025-04-11 12:44:06",
            "dropoff_station": null,
            "pickup_station": null,
            "delivery_eta": "Within 1 - 2 working days",
            "delivery_eta_time": "2025-04-13 12:44:06",
            "info": null,
            "currency": "NGN",
            "vat": 0,
            "total": 400,
            "tracking": {
                "bars": 3,
                "label": "Average"
            }
        },
        "checkout_data": {
            "ship_from": {
                "name": "Lebron James",
                "phone": "+2348057575855",
                "email": "[email protected]",
                "address": "Teslim Balogun Stadium, Alh. Masha Road, Lagos, Nigeria"
            },
            "ship_to": {
                "name": "Burger King",
                "phone": "+2347072377527",
                "email": "[email protected]",
                "address": "brt bus oshodi terminal, oshodi, Lagos, Nigeria"
            },
            "currency": "NGN",
            "package_amount": 801500,
            "package_weight": 8.5,
            "pickup_date": "April 10th 2025",
            "is_invoice_required": false
        }
    }
}

Some key fields returned in the courier rates array

Field Name
Description

rate_card_amount

The amount to be displayed to your customer as shipping cost. It's always the same value as the total field, only in cases where the courier account chosen is your connected courier.

total

The amount that will be charged from your shipping wallet for the delivery.

pickup_eta_time

Estimated time frame within which the package will be picked up.

delivery_eta_time

Estimated time frame within which the package will be delivered.

is_cod_available

Indicates if cash on delivery option is available for the rate returned. If true, cod_fee will contain a service charge of the cod offering.

tracking_level

Indicates how responsive the tracking systems of the courier rates are, ranging from 1 - 10.

There are currently two service delivery types: pickup and dropoff.

If a service type is marked as pickup, it means the selected courier would pick up the package at the sender's address and deliver it to the receiver's address

If a service type is marked as dropoff, the sender must deliver the package to a courier dropoff station. In this case, a dropoff station and pickup station object will be included in the response. it will contain the name and address of the dropoff station.

Check the example response for object definition

PreviousRatesNextRequest shipping rates from selected couriers

Last updated 1 month ago

Was this helpful?