Home Documentation Contact About

Roadaroo

👋 Welcome to Roadaroo!

We've built our service so that you can send a package in as quick as 1 step. Here you'll find endpoints for price quoting, placing an order, and requesting tracking information. Whether you're a seasoned pro or just getting started, you'll find comprehensive information to help you with seamless integration.

If you have any questions, encounter any issues, or simply want to share your feedback, please don't hesitate to reach out. We value your input and are committed to making your experience with our products as seamless as possible.

Setup & Requirements

To send your first package through our API, you will need to set up a Roadaroo Business Account.

We use API keys to authenticate calls to our service, you can find yours on the account details page in the dashboard. This key should be kept SECRET and not published on any public facing code.

Order Quotes

Obtain a quote on your order based on current rates without sending your package. The required data is the same as when placing an order, with the only change being the endpoint. This operation should be done as close to the time of placing your order for better costing accuracy.

POST: https://api.roadaroo.com/api/v1/intent/quote/

{
    "intent": {
        "sender": {
            "businessName": "Example Business",
            "telephone": "+12345678910",
            "email": "test@example.com"
        },
        "collectionPoint": {
            "address": "123 Example St",
            "city": "Example City",
            "province": "ON",
            "postal": "123 456"
        },
        "returnPoint": {
            "address": "123 Example St",
            "city": "Example City",
            "province": "ON",
            "postal": "123 456"
        },
        "orders":[
            {
                "orderID": "004646831",
                "existingShippingID": "8317385935",
                "receiver": {
                    "firstName": "John",
                    "lastName": "Doe",
                    "telephone": "+12345678910",
                    "email": "customer1@example.com"
                },
                "deliveryPoint": {
                    "address": "456 Example St",
                    "city": "Example City",
                    "province": "ON",
                    "postal": "456 789"
                },
                "dropoffSignature": false,
                "ageVerification": 0,
                "weight": 0.2,
                "length": 10.0,
                "width": 10.0,
                "height": 10.0,
                "notes": "",
                "items": [
                    {
                        "sku": "TESTSKU",
                        "title": "SKU1",
                        "description": "SKU1",
                        "quantity": 1
                    }
                ]
            },
            {
                "orderID": "578620384",
                "existingShippingID": "568758390",
                "receiver": {
                    "firstName": "Jane",
                    "lastName": "Doe",
                    "telephone": "+12345678910",
                    "email": "customer2@example.com"
                },
                "deliveryPoint": {
                    "address": "789 Example St",
                    "city": "Example City",
                    "province": "ON",
                    "postal": "456 789"
                },
                "dropoffSignature": false,
                "ageVerification": 0,
                "weight": 0.2,
                "length": 10.0,
                "width": 10.0,
                "height": 10.0,
                "notes": "",
                "items": [
                    {
                        "sku": "TESTSKU",
                        "title": "SKU1",
                        "description": "SKU1",
                        "quantity": 1
                    }
                ]
            },
            
        ]
    }
}
                        
Field Format Information Required
intent Object Wrapper for the data intended to be sent Yes
sender Object The information of the business that is posting the package Yes
businessName String Name of business Yes
telephone String (E.164 Format) Phone number of business, to assist if driver needs to contact Yes
email String Email address of business, for Roadaroo to contact for support Yes
collectionPoint Object The location of the business facility to pick up the packages from Yes
address String The street address of the facility Yes
city String The city the facility is located in Yes
province String The province the facility is located in Yes
postal String The postal the facility is located in Yes
returnPoint Object The location of the business facility to return packages to if rejected Yes
(returnPoint subfields match collectionPoint)
orders Array Each order is an individual package that is to be sent on the service Yes
orderID String The orderID that your system assigns to the package, to be matched with a trackingID that Roadaroo creates Yes
existingShippingID String For packages that have already been issued a tracking identifier. This allows Roadaroo to use an existing label. No
receiver Object The customer information for driver to contact if required Yes
firstName String First name of customer No
lastName String Last name of customer No
telephone String (E.164 Format) Customer phone number No
email String Customer email No
deliveryPoint Object The customer's address to deliver the order to Yes
(deliveryPoint subfields match collectionPoint)
dropoffSignature Boolean If the business requires the customer to sign for the package Yes
ageVerification Integer If the business requires a minimum age to receive the package Yes
weight Float Weight of package Yes
length Float Length of package Yes
width Float Width of package Yes
height Float Height of package Yes
notes String Any additional information that a driver may need to deliver No
items Array The products that are being packed within the order (leave empty if not available) Yes
sku String SKU / Product code of items being shipped No
title String Name of product with corresponding SKU No
description String Description of product with corresponding SKU No
quantity Integer Number of products by the SKU No

Order Placement

Placing an order has never been so simple! This step allows you to immediately list your package on Roadaroo for pickup via our network of drivers. This uses the same format as requesting a quote, all you need to change is the endpoint.

The same fields are used between order placement and order quoting. The same request data should be used.

POST: https://api.roadaroo.com/api/v1/intent/place/

Label Creation

Request a ZPL label to be printed for your orders using the trackingID you receive in response from our service.

POST: https://api.roadaroo.com/api/v1/intent/label/

{
    "trackingID": "119037082885308555201"
}
                        
Field Format Information Required
trackingID String Your trackingID corresponds with an individual order that you have previously placed. You will receive the trackingID from the response to an order placement intent. Yes

Order Status

Request the status events of an order using the trackingID you receive in response from our service.

The same fields are used between order labeling and order status. The same request data should be used.

POST: https://api.roadaroo.com/api/v1/intent/status/

{
    "trackingID": "119037082885308555201"
}
                        

Order Cancellation

Cancel an individual order using the trackingID you receive in response from our service.

The same fields are used between order cancellation and order status. The same request data should be used.

POST: https://api.roadaroo.com/api/v1/intent/cancel/

{
    "trackingID": "119037082885308555201"
}