Basic
Create Booking
This resource allows customers to save multiple shipment transactions or to book multiple shipments with its required shipment information.
End Point
POST /shipments/booking/many
Request Information
URI Parameters: None
Body Parameters:
Name | Description | Type | Additional Info |
---|---|---|---|
Bookings | Array of Bookings | Array<Booking> | required |
Booking:
Name | Description | Type | Additional Info |
---|---|---|---|
CustomerId | customer account's login id | int | required |
BusinessUnitId | shipment's business unit id (Please click here for list of Business Units.) | int | required |
OperationSiteId | shipment's operation site id (Please click here for list of Operation Sites.) | int | required |
ServiceId | shipment's service id (Please click here for list of Services.) | int | required |
ShipmentTypeId | shipment's shipment type id (Please click here for list of Shipment Types.) | int | required |
ForwardingServiceType | shipment's forwarding service type (Please click here for list of Forwarding Service Types.) | string | required only for courier, airfreight, and seafreight services |
PickupDate | date when to pick up shipment | date | required |
PickupTime | time when to pick up shipment | time | required |
PickupAddress | address where to pick up shipment | object | required |
PickupAddress.Street | street of pickup address | string | required |
PickupAddress.Barangay | barangay of pickup address | string | required |
PickupAddress.PostalCode | pickup address’ postal code based on serviceable area | string | required |
Remarks | shipment remarks | string | optional |
RequestedDeliveryDate | date when the customer wants the shipment to be delivered | date | optional |
RequestedDeliveryTime | time when the customer wants the shipment to be delivered | time | optional |
Weight | shipment’s total weight in kilograms | decimal | required |
CBM | shipment's total CBM | decimal | required |
Distance | distance in km from origin to destination | decimal | optional |
DeclaredValue | shipment’s declared value | decimal | required (minimum value: 100) |
PackageDimensions | dimensions of the shipment's package | array | required |
Length | shipment’s packaging length in cm | decimal | required only if shipment type name is “Own Packaging” |
Width | shipment’s packaging width in cm | decimal | required only if shipment type name is “Own Packaging” |
Height | shipment’s packaging height in cm | decimal | required only if shipment type name is “Own Packaging” |
Weight | shipment’s packaging weight in kg | decimal | required |
Quantity | shipment’s packaging quantity | int | required |
UnitOfMeasure | shipment's unit of measure (Please click here for list of Unit of Measures.) | string | required |
ShipmentCategoryId | shipment category id (Please click here for list of Unit of Measures.) | int | optional |
CargoDescription | description of cargo | string | optional |
ConsigneeName | name of shipment receiver | string | required |
ConsigneeContactNo | contact no of shipment receiver | string | optional |
ConsigneeEmailAddress | email address of shipment receiver | string | required |
ConsigneeAddress | address of shipment receiver/ delivery address | object | required |
ConsigneeAddress.Street | street of delivery address | string | required |
ConsigneeAddress.Barangay | barangay of delivery address | string | required |
ConsigneeAddress.PostalCode | delivery address’ postal code based on serviceable area | string | required |
CustomerDocuments | shipment customer documents | array | required |
DocumentTypeId | shipments's customer document type id (Please click here for list of Document Types.) | int | required |
DocumentNo | customer document number | string | required |
ConsigneeName | customer document consignee name | string | optional |
ConsigneeAddress | customer document consignee address | string | optional |
Quantity | customer document quantity | int | optional |
Source | application/client name | string | optional |
Sample Schema Content-type: application/json
{
"Bookings": [
{
"CustomerId": 245,
"BusinessUnitId": 16,
"OperationSiteId": 26,
"ServiceId": 5,
"ShipmentTypeId": 17,
"ForwardingServiceType": null,
"PickupDate": "2021-02-11",
"PickupTime": "08:00",
"PickupAddress": {
"Street": "Makati Street",
"Barangay": "Barangay 123",
"PostalCode": 1000
},
"Remarks": "Test API booking",
"RequestedDeliveryDate": "2021-02-14",
"RequestedDeliveryTime": "08:00",
"Weight": 1,
"CBM": 0.010,
"Distance" : 2.3,
"DeclaredValue": 100.00,
"PackageDimensions": [
{
"Length": null,
"Width": null,
"Height": null,
"Weight": 10.0,
"Quantity": 2
}
],
"UnitOfMeasure": "PC",
"ShipmentCategoryId": null,
"CargoDescription": "Assorted",
"ConsigneeName": "Shiena Grace Formentera",
"ConsigneeContactNo": "09123456789",
"ConsigneeEmailAddress": "consigneeemail@email.com",
"ConsigneeAddress": {
"Street": "Makati Street 2",
"Barangay": "Barangay 456",
"PostalCode": 4025
},
"CustomerDocuments":[
{
"DocumentTypeId": 1,
"DocumentNo": "INV#123546",
"ConsigneeName": "Shiena Grace Formentera",
"ConsigneeAddress" : "Makati Street, Cabuyao City, Laguna",
"Quantity" : 1
}
],
"Source": "Online Booking"
},
{
"CustomerId": 245,
"BusinessUnitId": 16,
"OperationSiteId": 26,
"ServiceId": 5,
"ShipmentTypeId": 17,
"ForwardingServiceType": null,
"PickupDate": "2021-02-11",
"PickupTime": "08:00",
"PickupAddress": {
"Street": "Makati Street",
"Barangay": "Barangay 123",
"PostalCode": 1000
},
"Remarks": "Test API Booking",
"RequestedDeliveryDate": "2021-02-14",
"RequestedDeliveryTime": "08:00",
"Weight": 1,
"CBM": 0.010,
"Distance" : 2.3,
"DeclaredValue": 100.00,
"PackageDimensions": [
{
"Length": null,
"Width": null,
"Height": null,
"Weight": 10.0,
"Quantity": 2
}
],
"UnitOfMeasure": "PC",
"ShipmentCategoryId": null,
"CargoDescription": "Assorted",
"ConsigneeName": "Shiena Grace Formentera",
"ConsigneeContactNo": "09123456789",
"ConsigneeEmailAddress": "consigneeemail@email.com",
"ConsigneeAddress": {
"Street": "Makati Street 2",
"Barangay": "Barangay 456",
"PostalCode": 4025
},
"CustomerDocuments":[
{
"DocumentTypeId": 1,
"DocumentNo": "INV#123546",
"ConsigneeName": "Shiena Grace Formentera",
"ConsigneeAddress" : "Makati Street, Cabuyao City, Laguna",
"Quantity" : 1
}
],
"Source": "Online Booking"
}
]
}
Response Information
A successful request to this API will save the booked shipments and their information and will return a success booking status and the shipment’s tracking number.
Sample Response Format Content-type: application/json
{
"status": "SUCCESS",
"message": null,
"data": [
{
"TrackingId": "00190964",
"BookingDate": "11/02/2021",
"BookingTime": "14:42:35"
},
{
"TrackingId": "00190965",
"BookingDate": "11/02/2021",
"BookingTime": "14:42:35"
}
]
}
Create Booking (Bulk)
This resource allows customers to save multiple shipment transactions or to book multiple shipments having bulk number of customer documents.
End Point
POST /shipments/booking/bulk
Request Information
URI Parameters: None
Body Parameters:
Name | Description | Type | Additional Info |
---|---|---|---|
CallBackApiUrl | Callback API url | string | required |
CustomerTransactionNo | Customer transaction number | string | required (case-sensitive) |
NotificationEmail | Notification email address | string | optional (comma separated) |
Bookings | Array of Bookings | Array < Booking > | required |
Booking:
Name | Description | Type | Additional Info |
---|---|---|---|
CustomerId | customer account's login id | int | required |
BusinessUnitId | shipment's business unit id (Please click here for list of Business Units.) | int | required |
OperationSiteId | shipment's operation site id (Please click here for list of Operation Sites.) | int | required |
ServiceId | shipment's service id (Please click here for list of Services.) | int | required |
ShipmentTypeId | shipment's shipment type id (Please click here for list of Shipment Types.) | int | required |
ForwardingServiceType | shipment's forwarding service type (Please click here for list of Forwarding Service Types.) | string | required only for courier, airfreight, and seafreight services |
PickupDate | date when to pick up shipment | date | required |
PickupTime | time when to pick up shipment | time | required |
PickupAddress | address where to pick up shipment | string | required |
PickupAddress.Street | street of pickup address | string | required |
PickupAddress.Barangay | barangay of pickup address | string | required |
PickupAddress.PostalCode | pickup address’ postal code based on serviceable area | string | required |
Remarks | shipment remarks | string | optional |
RequestedDeliveryDate | date when the customer wants the shipment to be delivered | date | optional |
RequestedDeliveryTime | time when the customer wants the shipment to be delivered | time | optional |
Weight | shipment’s total weight in kilograms | decimal | required |
CBM | shipment's total CBM | decimal | required |
Distance | distance in km from origin to destination | decimal | optional |
DeclaredValue | shipment’s declared value | decimal | required (minimum value: 100) |
PackageDimensions | dimensions of the shipment's package | array | required |
Length | shipment’s packaging length in cm | decimal | required only if shipment type name is “Own Packaging” |
Width | shipment’s packaging width in cm | decimal | required only if shipment type name is “Own Packaging” |
Height | shipment’s packaging height in cm | decimal | required only if shipment type name is “Own Packaging” |
Weight | shipment’s packaging weight in kg | decimal | required |
Quantity | shipment’s packaging quantity | int | required |
UnitOfMeasure | shipment's unit of measure (Please click here for list of Unit of Measures.) | string | required |
ShipmentCategoryId | shipment category id (Please click here for list of Unit of Measures.) | int | optional |
CargoDescription | description of cargo | string | optional |
ConsigneeName | name of shipment receiver | string | required |
ConsigneeContactNo | contact no of shipment receiver | string | optional |
ConsigneeEmailAddress | email address of shipment receiver | string | required |
ConsigneeAddress | address of shipment receiver/ delivery address | object | required |
ConsigneeAddress.Street | street of delivery address | string | required |
ConsigneeAddress.Barangay | barangay of delivery address | string | required |
ConsigneeAddress.PostalCode | delivery address’ postal code based on serviceable area | string | required |
CustomerDocuments | shipment customer documents | array | required |
DocumentTypeId | shipments's customer document type id (Please click here for list of Document Types.) | int | required |
DocumentNo | customer document number | string | required |
ConsigneeName | customer document consignee name | string | optional |
ConsigneeAddress | customer document consignee address | string | optional |
Quantity | customer document quantity | int | optional |
Source | application/client name | string | optional |
Sample Schema Content-type: application/json
{
"CallBackApiUrl": "https://api.customer.com/callback_api_name",
"CustomerTransactionNo": "ABC121212",
"NotificationEmail": "email@customer.com",
"Bookings": [
{
"CustomerId": 245,
"BusinessUnitId": 16,
"OperationSiteId": 26,
"ServiceId": 5,
"ShipmentTypeId": 17,
"ForwardingServiceType": null,
"PickupDate": "2021-02-11",
"PickupTime": "08:00",
"PickupAddress": {
"Street": "Makati Street",
"Barangay": "Barangay 123",
"PostalCode": 1000
},
"Remarks": "Test API booking",
"RequestedDeliveryDate": "2021-02-14",
"RequestedDeliveryTime": "08:00",
"Weight": 1,
"CBM": 0.010,
"Distance" : 2.3,
"DeclaredValue": 100.00,
"PackageDimensions": [
{
"Length": null,
"Width": null,
"Height": null,
"Weight": 10.0,
"Quantity": 2
}
],
"UnitOfMeasure": "PC",
"ShipmentCategoryId": null,
"CargoDescription": "Assorted",
"ConsigneeName": "Shiena Grace Formentera",
"ConsigneeContactNo": "09123456789",
"ConsigneeEmailAddress": "consigneeemail@email.com",
"ConsigneeAddress": {
"Street": "Makati Street 2",
"Barangay": "Barangay 456",
"PostalCode": 4025
},
"CustomerDocuments":[
{
"DocumentTypeId": 1,
"DocumentNo": "INV#123546",
"ConsigneeName": "Shiena Grace Formentera",
"ConsigneeAddress" : "Makati Street, Cabuyao City, Laguna",
"Quantity": 1
}
],
"Source": "Online Booking"
},
{
"CustomerId": 245,
"BusinessUnitId": 16,
"OperationSiteId": 26,
"ServiceId": 5,
"ShipmentTypeId": 17,
"ForwardingServiceType": null,
"PickupDate": "2021-02-11",
"PickupTime": "08:00",
"PickupAddress": {
"Street": "Makati Street",
"Barangay": "Barangay 123",
"PostalCode": 1000
},
"Remarks": "Test API Booking",
"RequestedDeliveryDate": "2021-02-14",
"RequestedDeliveryTime": "08:00",
"Weight": 1,
"CBM": 0.010,
"Distance" : 2.3,
"DeclaredValue": 100.00,
"PackageDimensions": [
{
"Length": null,
"Width": null,
"Height": null,
"Weight": 10.0,
"Quantity": 2
}
],
"UnitOfMeasure": "PC",
"ShipmentCategoryId": null,
"CargoDescription": "Assorted",
"ConsigneeName": "Shiena Grace Formentera",
"ConsigneeContactNo": "09123456789",
"ConsigneeEmailAddress": "consigneeemail@email.com",
"ConsigneeAddress": {
"Street": "Makati Street 2",
"Barangay": "Barangay 456",
"PostalCode": 4025
},
"CustomerDocuments":[
{
"DocumentTypeId": 1,
"DocumentNo": "INV#123546",
"ConsigneeName": "Shiena Grace Formentera",
"ConsigneeAddress" : "Makati Street, Cabuyao City, Laguna",
"Quantity": 1
}
],
"Source": "Online Booking"
}
]
}
Response Information
A request to this API will return a Success or Error status and a request message. A status code 202 will be returned if the request is successful.
Sample Response Format Content-type: application/json
{
"status": "SUCCESS",
"message": "Your request is being processed.",
"data": null
}
Sample Callback API Payload Content-type: application/json
{
"status": "SUCCESS",
"message": null,
"data": {
"CustomerTransactionNo": "ABC121212",
"Bookings": [
{
"TrackingId": "00190964",
"BookingDate": "11/02/2021",
"BookingTime": "14:42:35"
},
{
"TrackingId": "00190965",
"BookingDate": "11/02/2021",
"BookingTime": "14:42:35"
}
]
}
}
Retries
Our system has a retry protocol whenever we get an error response from the client (i.e. a non-202 HTTP status code). Our retry phases are as follows:
- If the status update still fails after the 5th retry, the API will send an email notification to the customer.
Cancel Booking
This resource allows customers to cancel saved or booked shipment transactions (cancel by shipment Id).
End Point
POST /shipments/booking-cancel/v2/{id}
Request Information
URI Parameters:
Name | Description | Type | Additional Info |
---|---|---|---|
source | application/client name | string | required |
Body Parameters: None
Response Information
A successful request to this API will cancel the booked shipment.
Sample Response Format Content-type: application/json
{
"status": "SUCCESS",
"message": "Successfully cancelled the transaction.",
"data": null
}
Track Shipment
This resource allows customer to request the shipping status of up to 10 shipments at a time using the Shipment Tracking Number(s) as parameter.
End Point
GET /shipments/status
Request Information
URI Parameters
Name | Description | Type | Additional Info |
---|---|---|---|
tracking_numbers | List of tracking numbers separated by comma | string | required |
Body Parameters: None.
Response Information
Request to this API may return a list of responses for each Tracking number submitted. A status code 200 will be returned even if no record is found.
Sample Response Format Content-type: application/json
[
{
"TrackingNo": "00224668",
"Response": "Found",
"ResultDetails": {
"MovementHistory": [
{
"DateTime": "2021-07-12T11:06:53",
"Details": "Received by TEST CUSTOMER.",
"MovementType": "Received",
"Location": "---",
"ImageUrl": [
"https://canigao.s3-ap-southeast-1.amazonaws.com/images/pod/2021071211065760305063.jpeg",
"https://canigao.s3-ap-southeast-1.amazonaws.com/images/pod/2021071211065750930066.jpeg"
],
"CheckinTypeId": 7,
"ShipmentCustomerDocumentNo": "5342"
},
{
"DateTime": "2021-07-12T11:04:40",
"Details": "Unloading In Consignee",
"MovementType": "Unloading In Consignee",
"Location": "---",
"ImageUrl": null,
"CheckinTypeId": 11,
"ShipmentCustomerDocumentNo": "5342"
},
{
"DateTime": "2021-07-12T11:04:00",
"Details": "Warehouse Receiving",
"MovementType": "Warehouse Receiving",
"Location": "---",
"ImageUrl": null,
"CheckinTypeId": 12,
"ShipmentCustomerDocumentNo": "5342"
},
{
"DateTime": "2021-07-12T11:03:12",
"Details": "Arrived in wareHouse",
"MovementType": "Arrived",
"Location": "---",
"ImageUrl": null,
"CheckinTypeId": 10,
"ShipmentCustomerDocumentNo": "423"
},
{
"DateTime": "2021-07-12T11:02:08",
"Details": "Picked up",
"MovementType": "Picked up",
"Location": "---",
"ImageUrl": null,
"CheckinTypeId": 15,
"ShipmentCustomerDocumentNo": "5342"
},
{
"DateTime": "2021-07-12T11:02:08",
"Details": "Picked up",
"MovementType": "Picked up",
"Location": "---",
"ImageUrl": null,
"CheckinTypeId": 15,
"ShipmentCustomerDocumentNo": "423"
},
{
"DateTime": "2021-07-12T10:58:14.243",
"Details": "Dispatched from Cainta to Mabini.",
"MovementType": "Out for Delivery",
"Location": "MANILA",
"ImageUrl": null,
"CheckinTypeId": null,
"ShipmentCustomerDocumentNo": null
}
],
"DocumentNo": null,
"DocumentDate": null,
"BookingDate": "2021-07-12T00:00:00",
"PortOrigin": "MANILA",
"PortDestination": "Visayas",
"DeliveryInfo": {
"DispatchDate": "7/12/2021",
"DispatchTime": "10:56:18",
"DeliveryDate": "7/12/2021",
"DeliveryTime": "11:06:53",
"TrackerUrl": "http://fastdemo.iot.com.ph/tms/map.php?region=luzon&plateno=ACI2549&date_from=7/12/2021&date_to=7/12/2021&time_from=10:56:18&time_to=11:06:53"
}
}
}
]
Track Shipment by Customer Reference
This resource allows customer to request the shipping status of shipment transactions by customer using customer id and customer document number as parameters.
End Point
GET /shipments/status/cust-doc
Request Information
URI Parameters
Name | Description | Type | Additional Info |
---|---|---|---|
customerId | customer id of shipment transactions | int | required |
Body Parameters:
Name | Description | Type | Additional Info |
---|---|---|---|
DocumentNos | array of shipment customer document numbers | array | required |
Response Information
Request to this API may return shipments per customer having shipment customer documents given in the parameters together with its status. A status code 200 will be returned even if no record is found.
Sample Response Format Content-type: application/json
[
{
"TrackingNo": "00224668",
"Response": "Found",
"ResultDetails": {
"MovementHistory": [
{
"DateTime": "2021-07-12T11:06:53",
"Details": "Received by TEST CUSTOMER.",
"MovementType": "Received",
"Location": "---",
"ImageUrl": [
"https://canigao.s3-ap-southeast-1.amazonaws.com/images/pod/2021071211065760305063.jpeg",
"https://canigao.s3-ap-southeast-1.amazonaws.com/images/pod/2021071211065750930066.jpeg"
],
"CheckinTypeId": 7,
"ShipmentCustomerDocumentNo": "5342"
},
{
"DateTime": "2021-07-12T11:04:40",
"Details": "Unloading In Consignee",
"MovementType": "Unloading In Consignee",
"Location": "---",
"ImageUrl": null,
"CheckinTypeId": 11,
"ShipmentCustomerDocumentNo": "5342"
},
{
"DateTime": "2021-07-12T11:04:00",
"Details": "Warehouse Receiving",
"MovementType": "Warehouse Receiving",
"Location": "---",
"ImageUrl": null,
"CheckinTypeId": 12,
"ShipmentCustomerDocumentNo": "5342"
},
{
"DateTime": "2021-07-12T11:03:12",
"Details": "Arrived in wareHouse",
"MovementType": "Arrived",
"Location": "---",
"ImageUrl": null,
"CheckinTypeId": 10,
"ShipmentCustomerDocumentNo": "423"
},
{
"DateTime": "2021-07-12T11:02:08",
"Details": "Picked up",
"MovementType": "Picked up",
"Location": "---",
"ImageUrl": null,
"CheckinTypeId": 15,
"ShipmentCustomerDocumentNo": "5342"
},
{
"DateTime": "2021-07-12T11:02:08",
"Details": "Picked up",
"MovementType": "Picked up",
"Location": "---",
"ImageUrl": null,
"CheckinTypeId": 15,
"ShipmentCustomerDocumentNo": "423"
},
{
"DateTime": "2021-07-12T10:58:14.243",
"Details": "Dispatched from Cainta to Mabini.",
"MovementType": "Out for Delivery",
"Location": "MANILA",
"ImageUrl": null,
"CheckinTypeId": null,
"ShipmentCustomerDocumentNo": null
}
],
"DocumentNo": "00224668",
"DocumentDate": null,
"BookingDate": null,
"CustomerDocumentNo": "423, 5342",
"PortOrigin": "MANILA",
"PortDestination": "Visayas",
"DeliveryInfo": {
"DispatchDate": "12/07/2021",
"DispatchTime": "10:56:18",
"DeliveryDate": "12/07/2021",
"DeliveryTime": "11:06:53",
"TrackerUrl": "http://fastdemo.iot.com.ph/tms/map.php?region=luzon&plateno=ACI2549&date_from=12/07/2021&date_to=12/07/2021&time_from=10:56:18&time_to=11:06:53"
}
}
}
]