# 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 (opens new window) for list of Business Units.)
int required
OperationSiteId shipment's operation site id
(Please click here (opens new window) for list of Operation Sites.)
int required
ServiceId shipment's service id
(Please click here (opens new window) for list of Services.)
int required
ShipmentTypeId shipment's shipment type id
(Please click here (opens new window) for list of Shipment Types.)
int required
ForwardingServiceType shipment's forwarding service type
(Please click here (opens new window) 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
    Street
street of pickup address string required
    Barangay
barangay of pickup address string required
    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 (opens new window) for list of Unit of Measures.)
string required
ShipmentCategoryId shipment category id
(Please click here (opens new window) 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
    Street
street of delivery address string required
    Barangay
barangay of delivery address string required
    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 (opens new window) 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

# 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"
                }   
            ]
        },
        {
            "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"
                }   
            ]
        }
    ]
}

# 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 (opens new window) for list of Business Units.)
int required
OperationSiteId shipment's operation site id
(Please click here (opens new window) for list of Operation Sites.)
int required
ServiceId shipment's service id
(Please click here (opens new window) for list of Services.)
int required
ShipmentTypeId shipment's shipment type id
(Please click here (opens new window) for list of Shipment Types.)
int required
ForwardingServiceType shipment's forwarding service type
(Please click here (opens new window) 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
    Street
street of pickup address string required
    Barangay
barangay of pickup address string required
    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 (opens new window) for list of Unit of Measures.)
string required
ShipmentCategoryId shipment category id
(Please click here (opens new window) 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
    Street
street of delivery address string required
    Barangay
barangay of delivery address string required
    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 (opens new window) 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

# 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"
                }   
            ]
        },
        {
            "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"
                }   
            ]
        }
    ]
}

# 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:

  1. 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/{id}

# Request Information

# URI Parameters: None

# 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"
            }
        }
    }
]