LogisticsOrder API Functionalities
The LogisticsOrder API has the following endpoints:
Creating Orders
To create an Order, call the Create Order endpoint and specify the required parameters in the request body:
Member | Description | Remarks |
---|---|---|
dropDetails > contact > name | Contact name. | string minLength: 1 maxLength: 128 |
dropDetails > contact > phone > countryCode | Country code of the mobile it belongs. | string pattern: ^+(\d{1}-)?(\d{1,3})$ |
dropDetails > contact > phone > number | User phone number. | string minLength: 4 maxLength: 13 |
dropDetails > contact > phone > isMobile | Whether the phone is type mobile or telephone. | boolean |
dropDetails > location > address > addressLine1 | Address line1 of the address. | string minLength: 1 maxLength: 128 |
dropDetails > location > address > city | City of the address. | string pattern: [a-zA-Z]{2,64} |
dropDetails > location > address > country > code | Code of the country. | string pattern: [A-Z]{2,3} |
dropDetails > location > address > country > name | Name of the country. | string pattern: [a-zA-Z]{2,64} |
dropDetails > location > geolocation > long | Range of longitude is -180 to 180 and can be up to 6 decimal places. | string pattern: ^(+|-)?(?:180(?:(?:.0{1,6})?)|(?:[0-9]|[1-9][0-9]|1[0-7][0-9])(?:(?:.[0-9]{1,6})?))$ |
dropDetails > location > geolocation > lat | Range of latitude is -90 to 90 and can be up to 6 decimal places. | string pattern: ^(+|-)?(?:90(?:(?:.0{1,6})?)|(?:[0-9]|[1-8][0-9])(?:(?:.[0-9]{1,6})?))$ |
orderSummary > totalWeight > value | Total weight of the order. | number |
orderSummary > totalOrderCost > cost | Value of cost incurred. | number |
productType | Type of the product in the order. | string Enum: [ PARCEL, PTL, HEAVY, SERVICES ] |
shipmentFlow | Nature of flow of shipment. | string Enum: [ FORWARD, REVERSE, NONE ] |
pickupDetails > contact > name | Contact name. | string minLength: 1 maxLength: 128 |
pickupDetails > contact > phone > countryCode | Country code of the mobile it belongs. | string pattern: ^+(\d{1}-)?(\d{1,3})$ |
pickupDetails > contact > phone > number | User phone number. | string minLength: 4 maxLength: 13 |
pickupDetails > contact > phone > isMobile | Whether the phone is of type mobile or telephone. | boolean |
pickupDetails > location > address > addressLine1 | Address line1 of the address. | string minLength: 1 maxLength: 128 |
pickupDetails > location > address > city | City of the address. | string pattern: [a-zA-Z]{2,64} |
pickupDetails > location > address > country > code | Code of the country. | string pattern: [A-Z]{2,3} |
pickupDetails > location > address > country > name | Name of the country. | string pattern: [a-zA-Z]{2,64} |
pickupDetails > location > geolocation > long | Range of longitude is -180 to 180 and can be up to 6 decimal places. | string pattern: ^(+|-)?(?:180(?:(?:.0{1,6})?)|(?:[0-9]|[1-9][0-9]|1[0-7][0-9])(?:(?:.[0-9]{1,6})?))$ |
pickupDetails > location > geolocation > lat | Range of latitude is -90 to 90 and can be up to 6 decimal places. | string pattern: ^(+|-)?(?:90(?:(?:.0{1,6})?)|(?:[0-9]|[1-8][0-9])(?:(?:.[0-9]{1,6})?))$ |
actions > qcValidation > isRequired | If QC Validation is required. | boolean |
actions > kycVerification > isRequired | If KYC verification is required. | boolean |
actions > otpVerification > isRequired | If OTP verification is required. | boolean |
actions > signatureCollection > isRequired | If signature is required. | boolean |
returnDetails > contact > name | Contact name. | string minLength: 1 maxLength: 128 |
returnDetails > contact > phone > countryCode | Country code of the mobile it belongs. | string pattern: ^+(\d{1}-)?(\d{1,3})$ |
returnDetails > contact > phone > number | User phone number. | string minLength: 4 maxLength: 13 |
returnDetails > contact > phone > isMobile | Whether the phone is of type mobile or telephone. | boolean |
returnDetails > location > address > addressLine1 | Address line1 of the address. | string minLength: 1 maxLength: 128 |
returnDetails > location > address > city | City of the address. | string pattern: [a-zA-Z]{2,64} |
returnDetails > location > address > country > code | Code of the country. | string pattern: [A-Z]{2,3} |
returnDetails > location > address > country > name | Name of the country. | string pattern: [a-zA-Z]{2,64} |
returnDetails > location > geolocation > long | Range of longitude is -180 to 180 and can be up to 6 decimal places. | string pattern: ^(+|-)?(?:180(?:(?:.0{1,6})?)|(?:[0-9]|[1-9][0-9]|1[0-7][0-9])(?:(?:.[0-9]{1,6})?))$ |
returnDetails > location > geolocation > lat | Range of latitude is -90 to 90 and can be up to 6 decimal places. | string pattern: ^(+|-)?(?:90(?:(?:.0{1,6})?)|(?:[0-9]|[1-8][0-9])(?:(?:.[0-9]{1,6})?))$ |
teamId | Team ID that given order belongs to. | string |
containers > trackingDetails > operator | Specify the owner of the tracking ID. | string |
containers > trackingDetails > trackingId | Unique ID of the container to be used for tracking. | string |
Request bodies are specified in JSON format. The following example request body shows how to create a new Order:
{
"dropDetails": {
"contact": "string",
"location": "string"
},
"orderSummary": {
"invoiceNumber": "string",
"orderDescription": "string",
"totalWeight": {
"value": 0,
"unit": "string"
},
"totalItems": 0,
"totalOrderCost": {
"cost": 0,
"currencyCode": "string",
"minorUnit": 0
}
},
"clientDetails": {
"clientName": "string",
"clientId": "string",
"clientOrderId": "string"
},
"mps": false,
"productType": "PARCEL",
"planningMode": "onDemand",
"modeOfTransport": "AIR",
"speedOfTransport": "EXPRESS",
"shipmentFlow": "FORWARD",
"pickupDetails": {
"contact": "string",
"location": "string",
"pickupSlot": {
"from": 0,
"to": 0
},
"serviceTime": 1
},
"paymentInformation": {
"paymentType": "collectAtDelivery",
"paymentOption": "CARD"
},
"deliveryDetails": {
"promisedDeliveryDate": "string",
"deliverySlot": {
"from": 0,
"to": 0
},
"serviceTime": 1
},
"actions": {
"qcValidation": {
"isRequired": true,
"requiredAt": "PICKUP"
},
"qcValidationChecklist": {},
"kycVerification": {
"isRequired": true,
"requiredAt": "PICKUP"
},
"otpVerification": {
"isRequired": true,
"requiredAt": "PICKUP"
},
"signatureCollection": {
"isRequired": true,
"requiredAt": "PICKUP"
}
},
"notificationDetails": {
"notificationType": "PICKUP",
"notificationMode": "SMS"
},
"returnDetails": {
"contact": "string",
"location": "string",
"returnSlot": {
"from": 0,
"to": 0
},
"serviceTime": 1
},
"priority": 3,
"maxAttempts": 5,
"teamId": "string",
"containers": [
{
"containerType": "Shipment",
"dimensions": {
"length": "string",
"breadth": "string",
"height": "string",
"unit": "string"
},
"weight": {
"value": "string",
"unit": "string"
},
"trackingDetails": {
"operator": "string",
"trackingId": "string",
"isPrimary": true
},
"shipmentDetails": [
{
"name": "string",
"code": "string",
"quantity": 1,
"totalCost": {
"cost": 0,
"currencyCode": "string",
"minorUnit": 0
}
}
]
}
]
}
Retrieving Order Details
To retrieve the details of an Order in your Tenant associated with your App, call the Get Orders endpoint.
Order Cancellation
To cancel an Order, call the Order Cancellation endpoint and pass the orderId in the path parameter.
Updated 3 months ago