Get Shipment Status

This REST API is used by Uniware to get the recent shipment status (after dispatch) from the shipping provider/aggregator. The list of AWB (waybill) Nos. whose tracking status needs to be determined is sent in request. The shipping provider in response shares the current status (with date) against each AWB No.

Tip

  • It is recommended to check out Notes for the reader. You might find this helpful as it contains Guidelines for using API references and Terminologies used here.
  • The shipping provider is required to share details of their supported shipment statuses with Unicommerce. These details shall mention the status definitions and forward/reverse flags.

Flow

Shipment_Status_Flow

Tip

Complete integration flow is available on Basic Overview page.

Basic Information

NAME DETAILS
Usage: Mandatory
Endpoint: /waybillDetails
Request Type: GET
Scheme: HTTPS
Header (Content-Type): application/json
Header (Authorization): token (got from SP Authentication)

Query Parameters

NOTE:

It is a mandate to send AWB No. inside quotes. Eg.: “3113210963421,5213410156781,…N”.

PARAMETERS TYPE DESCRIPTION MANDATORY NOTES
waybills string List of way bill numbers (inside quotes) Yes Max. 50 AWBs per request, Eg.: 3113210963421

Response Payload

{
  "Status": "SUCCESS",
  "waybillDetails": [
    {
      "waybill": "80224636450",
      "currentStatus": "PICKUP_PENDING",
      "current_sub_status": "out for pickup",
      "current_status_remark": "pickup is yet to be done",
      "statusDate": "05-Aug-2023 03:52:09",
      "shipping_provider": "LSP Name"
      "current_location": "Mumbai_Turbhe_C (Maharashtra)",
      "current_pincode": "400703",
      "current_city": "Navi Mumbai",
      "current_state": "Maharashtra",
      "current_country": "India",
      "latitude": "",
      "longitude": "",
      "expected_date_of_delivery": "07-Aug-2023 03:52:09",
      "promised_date_of_delivery": "08-Aug-2023 03:52:09",
      "payment_type": "COD",
      "weight": "500",
      "dimensions": {
        "l": "100",
        "b": "120",
        "h": "150"
      },
      "delivery_agent_name": "",
      "delivery_agent_number": "",
      "attempt_count": "1",
      "ndr_code": "",
      "ndr_reason": "REFUSAL CONFIRMATION CODE VERIFIED",
      "next_delivery_date": "09-Aug-2023 03:52:09",
      "cir_pickup_datetime": "",
      "tracking_history": [
        {
          "date_time": "Mumbai_Turbhe_C (Maharashtra)",
          "status": "InfoReceived",
          "sub_status": "OutForPickup",
          "remark": " shipment has been picked",
          "location": "Mumbai_Turbhe_C (Maharashtra)",
          "pincode": "400703",
          "city": "Navi Mumbai",
          "state": "Maharashtra",
          "country": "India"
        },
        {
          "date_time": "Mumbai_Turbhe_C (Maharashtra)",
          "status": "InfoReceived",
          "sub_status": "OutForPickup",
          "remark": " shipment has been picked",
          "location": "Mumbai_Turbhe_C (Maharashtra)",
          "pincode": "400703",
          "city": "Navi Mumbai",
          "state": "Maharashtra",
          "country": "India"
        }
      ],
      "parent_awb": "",
      "rto_awb": "",
      "rto_reason": "",

    }
  ],
  "message": "String"
}

Response Payload (Error)

{
   "status":"FAILED",
   "message":"failure reason",
   "waybillDetails":[]
}

Response Payload Details

PARAMETER TYPE DESCRIPTION NOTES MANDATORY
status string Status of the API request Allowable: SUCCESS, FAILED Yes
waybillDetails string Details of waybill(AWB) - Yes
waybill string Shipment tracking number Max. 50 AWBs per response, Eg.: “3113210963421” Yes
statusDate string Last status date Eg: 21-Feb-2023 19:23:00 Yes
currentStatus string Most recent tracking status Most recent courier status of AWB, statuscode or status Yes
shipping_provider string Name of actual courier allocated (LSP Name) - Opt.
current_sub_status string status title or substatus(child) asscociated with parent status if data not available keep it as blank "" Opt.
current_status_remark string Definition of the current status or Remark or description of the current activity if data not available keep it as blank "" Opt.
current_location string Current location of the shipment if data not available keep it as blank "" Opt.
current_pincode string Current location if data not available keep it as blank "" Opt.
current_city string Current city if data not available keep it as blank "" Opt.
current_state string Current state if data not available keep it as blank "" Opt.
current_country string Current countyy if data not available keep it as blank "" Opt.
latitude string Current latitude if data not available keep it as blank "" Opt.
longitude string Current longitude if data not available keep it as blank "" Opt.
expected_date_of_delivery string Expected date of shipment delivery if data not available keep it as blank "" Opt.
promised_date_of_delivery string Promised date of shipment delivery if data not available keep it as blank "" Opt.
payment_type string Mode of payment E.g. COD, PREPAID Opt.
weight string Shipment weight (in gms) - Opt.
dimensions Object Shipment dimenison details - Opt.
l string Shipment length (in mm) - Opt.
b string Shipment width (in mm) - Opt.
h string Shipment hight (in mm) - Opt.
delivery_agent_name string delivery agent name - Opt.
delivery_agent_number string delivery agent number - Opt.
attempt_count string delivery attempt count - Opt.
ndr_code string NDR reason code - Opt.
ndr_reason string NDR reason details - Opt.
next_delivery_date string Next date of delivery - Opt.
cir_pickup_datetime string Return Pickup datetime When the customer initiated return(CIR/RVP) is picked up by the courier Opt.
tracking_history Object Tracking history of awb Latest history should be on the top Opt.
date_time string Tracking date time - Opt.
status string Parent tracking status code - Opt.
sub_status string Sub-status code in ref to parent status code - Opt.
remark string Remark or description of the activity - Opt.
location string Location for ref tracking status - Opt.
pincode string Pincode for ref tracking status - Opt.
city string City for ref tracking status - Opt.
state string State for ref tracking status - Opt.
country string Country for ref tracking status - Opt.
parent_awb string It will hold parent awb with which RTO shipment is associated. In case tracking request is for forward awb then parent_awb will remain blanka but in case tracking request is for RTO awb then parent_awb will hold its associated parent awb Opt.
rto_awb string It will hold RTO awb associated with parent (Forward) awb. In case tracking request is for parent(forward) awb then rto_awb will have new RTO awb, when separate tracking request for RTO shipment need to be sent. In case tracking request is for parent(forward) awb and RTO is NOT created or new RTO awb is NOT assigned then rtoawb will remain blank. In case tracking request is for RTO awb then rto\awb will remain blank Opt.
rto_reason string RTO reason for reference shipper - Opt.
message string error message Failure reason if Status (Failed) Eg: Connect to Shipping Provider Yes

NOTE:

The charges and price details can be provided either at order level or order item level (charges which are common), but not in both. However, it is recommended to send price at order item level for better handling.

Error Codes

Refer Response Codes section to know about specific errors codes.

FAQs/Notes

Q1. What is call frequency for tracking status API? Is it possible to call it every 60 minutes?
Ans. Tracking status API is called 4 times a day. No, it cannot be called every 60 mins.

Unicommerce Website

Copyright © 2024 Unicommerce eSolutions Pvt. Ltd.