Skip to main content

GET /rooftops

A GET to the /rooftops endpoint allows your application to fetch an array of the rooftop names and ids your user is authorizated to create and fetch moves for. Requests made to this endpoint require an authorization header using your authentication token:

Auth Header
curl --request GET \
--url https://api.hopdrive.com/v1/rooftops \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <your token>'

When you request a move as a dealer-admin role, you can specify which rooftop to create the move for. When doing so, pass the rooftop id from one of the rooftops returned here.

Workflowsets

Each rooftop can have one or more workflowsets associated with it. A workflowset is coupled pickup and delivery workflows that are associated with a specific contract.

Contracts

Each rooftop can have one or more active contracts associated with it based upon the current date. Each contract contains a begin and end date for it's effective time range. Child to that is the list of mileage bands. Use these mileage bands to estimate the core transportation charge for a move where you know the drive distance between the pickup and destination point.

caution

Estimating move costs using your own distance has a risk that it may differ from our own move distance due to many factors. Please keep in mind that in mind when relying upon your own internal estimates before inputing a move.

Contract Mileage Band Properties

Type

flat rate represents a flat rate for any move with a distance aligning with that band. per means per mile for the actual distance of the move.

Class 1-6 Rates

Indicate the weight class of the vehicle based on the Gross Vehicle Weight Rating (GVWR) being moved.

Class

Contains a value of stranded or base. stranded is a move going in one direction without a paired return move to couple with it. base is when a pair of round trip moves can be timed to return the driver to the origin point using the drive of the second move. All of the requests would likely be stranded but if you intend to estimate for a pair of round-trip moves (move 1 is A-B and its paired move is B-A, both available at the same time), then the class of base would be applicable for those estimates. Round trip moves are more rare since they require moves on each side to be ready at the precise times.

Example Request

GET /v1/rooftops

Example Response

200 /v1/rooftops
{
"rooftops": [
{
"id": 139,
"name": "Test Rooftop - Richmond Market",
"workflowsets": [
{
"id": 1,
"name": "Test Workflowset",
"description": "Test Workflowset Description",
"type": "default",
"active_contracts": [
{
"begin_date": "2024-08-01T00:00:00+00:00",
"end_date": "2029-08-31T00:00:00+00:00",
"mileage_bands": [
{
"distance_start": 0,
"distance_end": 10,
"type": "flat",
"class_1_rate": 50,
"class_2_rate": 50,
"class_3_rate": 60,
"class_4_rate": 80,
"class_5_rate": 90,
"class_6_rate": 90,
"class": "stranded"
},
{
"distance_start": 10,
"distance_end": 20,
"type": "flat",
"class_1_rate": 90,
"class_2_rate": 90,
"class_3_rate": 100,
"class_4_rate": 120,
"class_5_rate": 130,
"class_6_rate": 130,
"class": "stranded"
},
{
"distance_start": 20,
"distance_end": 300,
"type": "per",
"class_1_rate": 5,
"class_2_rate": 5,
"class_3_rate": 10,
"class_4_rate": 12,
"class_5_rate": 15,
"class_6_rate": 15,
"class": "stranded"
}
]
}
]
}
]
}
]
}