Skip to main content

POST /concierge-loaner-moves

Swap your customer's vehicle for a loaner and bring theirs in for service.

Our driver will always arrive at the service center first to pickup a vehicle. The type of vehicle they will be delivering to the customer is determined by the customer action type.

Don't know what loaner vehicle will be used yet? No worries, the loaner vehicle information can be omitted from your request.

Example Request

POST /v1/concierge-loaner-moves
{
"rooftop": 42,
"third_party_payer": 9,
"appointment_time_utc": "2022-03-25T14:00:00Z",
"customer_name": "Harry Stevens",
"customer_phone": "888-888-8888",
"customer_action": "pickup",
"duplicate_check": "reference_num",
"loaner_move": {
"dealer_contact": "Jane Smith",
"special_instructions": "Loaner will be issued on arrival",
"vehicle": {
"stock": "LOAN01"
},
"pickup_location": {
"name": "Denny's Automobiles",
"address_one": "11161 Research Plaza Way",
"city": "Richmond",
"state": "VA",
"zip": "23236"
},
"config": {
"hide_service_location": false
},
"workflowset_id": 3,
"pickup_workflow_data": {
"additional_field": "Hello World!"
},
"delivery_workflow_data": {
"additional_field": "Hello World!"
}
},
"customer_move": {
"reference_num": "RO# 12345",
"dealer_contact": "Jane Smith",
"special_instructions": "Vehicle parked in spot 13C",
"vehicle": {
"stock": "BK0018",
"vin": "5GAKRBED5BJ262438",
"year": "2011",
"make": "Buick",
"model": "Enclave",
"color": "White",
"manual": false
},
"pickup_location": {
"name": "210 S Mulberry St",
"address_one": "210 S Mulberry St",
"city": "Richmond",
"state": "VA",
"zip": "23220"
},
"config": {
"hide_service_location": false
},
"workflowset_id": 3,
"pickup_workflow_data": {
"additional_field": "Hello World!"
},
"delivery_workflow_data": {
"additional_field": "Hello World!"
}
}
}

Body Params

FieldTypeRequired?Description
rooftopNumberOptionalFor users configured as dealer admins with the ability to create moves for multiple rooftops. Specify the id of the rooftop you wish to create the move for.
third_party_payerNumberOptionalFor users configured with third party payer accounts. This allows the move to be assigned to a different invoice than the rooftop specified. Use the /Payers endpoint to get a valid list of possible payers. API users' accounts can be configured to make this field required or to give this field a default value.
appointment_time_utcStringRequiredThe date and time in YYYY-MM-DD hh:mm:ss format, using UTC/Zulu time. Reference.
duplicate_checkStringOptionalPrevent duplicating an in-progress move (already in the system) by specifying a field to check. Supports "reference_num", "vehicle_stock" and "vehicle_vin".
customer_nameStringRequiredThe name of the customer whose vehicle is being moved.
customer_phoneStringOptionalThe phone number of the customer (automated SMS updates will be sent to this number if provided).
customer_actionStringRequiredThe type of concierge move being performed, either "pickup" or "return" (customer action types).
reference_numStringOptionalInternal reference ID, such as a repair order #.
dealer_contactStringOptionalPoint of contact for our driver when arriving at the service location.
special_instructionsStringOptionalAdditional information, such as where to park or a number to call upon arrival.
stockStringOptionalInternal stock number associated with the vehicle.
vinStringOptionalVehicle Identification Number associated with the vehicle.
yearStringOptionalYear the vehicle was manufactured.
makeStringRequired*The make of the vehicle (e.g., "Ford"), *for loaner vehicles this can be left blank.
modelStringRequired*The model of the vehicle (e.g., "F-150"), *for loaner vehicles this can be left blank.
colorStringOptionalThe color of the vehicle.
manualBooleanRequiredWhether or not the vehicle's transmission is manual (true) or automatic (false).
nameStringOptionalName associated with the location.
full_addressStringOptionalThe full address string of the location (Address pieces are no longer required if this field has a value).
address_oneStringRequired*The street address of the location.
address_twoStringOptionalOptional sub-address of the location.
cityStringRequired*The city that the location address is associated with.
stateStringRequired*The state that the location address is associated with.
zipStringOptionalThe 5-digit Zip Code that the location address is associated with.
hide_service_locationStringOptionalConfig option. Don't show the service/delivery location to your customer (true) or allow them to see the name and address (false) - defaults to false.
pickup_workflow_dataObjectOptionalA single level deep object with name value pairs of placeholder values to preload in fields of the custom workflow defined by the workflowset
delivery_workflow_dataObjectOptionalA single level deep object with name value pairs of placeholder values to preload in fields of the custom workflow defined by the workflowset
workflowset_idNumberOptionalId of a workflow set (combination pickup and delivery workflows) to apply to this move. Talk with your dispatcher to setup custom workflows. If nothing is passed here, the default workflows will be used.

Customer Action Types

  • pickup - (Customer's vehicle is at their location) We'll first pick up the loaner vehicle from the service lot and deliver it to the customer's address, then we'll bring their vehicle back to the service lot.

  • return - (Customer's vehicle is at service center) We'll first pick up your customer's vehicle from the service lot and deliver it to their address, then we'll bring the loaner vehicle back to the service lot.

Request Object Structure

{
appointment_time_utc,
duplicate_check,
customer_name,
customer_phone,
customer_action,
loaner_move: {
reference_num,
dealer_contact,
special_instructions,
vehicle: { // optional
stock, // optional
vin, // optional
year, // optional
make, // optional
model, // optional
color, // optional
manual // optional
},
pickup_location: {
name,
full_address,
address_one,
address_two,
city,
state,
zip
},
config: {
hide_service_location
},
workflowset_id,
pickup_workflow_data: {
additional_field
},
delivery_workflow_data: {
additional_field
},
},
customer_move: {
reference_num,
dealer_contact,
special_instructions,
pickup_template,
delivery_template,
vehicle: {
stock,
vin,
year,
make,
model,
color,
manual
},
pickup_location: {
name,
full_address,
address_one,
address_two,
city,
state,
zip
},
config: {
hide_service_location
},
workflowset_id,
pickup_workflow_data: {
additional_field
},
delivery_workflow_data: {
additional_field
},
}
}

Example Response

For additional information, see the response section.

200 /v1/concierge-loaner-moves
{
"appointment_time_utc": "2022-03-25T14:00:00Z",
"move_one_earliest_available_time": "2022-03-25T14:00:00Z",
"move_two_earliest_available_time": "2022-03-25T14:30:00Z",
"customer_name": "Harry Stevens",
"customer_phone": "888-888-8888",
"customer_action": "pickup",
"loaner_move": {
"move_id": 10052,
"status": null,
"cancel_status": null,
"pickup_started": null,
"pickup_arrived": null,
"pickup_successful": null,
"delivery_started": null,
"delivery_arrived": null,
"delivery_successful": null,
"tracking_link": null,
"move_uri": "https://api.hopdrive.com/v1/moves/10052",
"lane_uri": "https://api.hopdrive.com/v1/lanes/6781",
"reference_num": null,
"dealer_contact": "Jane Smith",
"special_instructions": "Loaner will be issued on arrival",
"vehicle": {
"stock": "LOAN01",
"vin": null,
"year": null,
"make": null,
"model": null,
"color": null,
"manual": false
},
"pickup_location": {
"name": "Denny's Automobiles",
"address_one": "11161 Research Plaza Way",
"city": "Richmond",
"state": "VA",
"zip": "23236",
"lat": 37.5050257,
"lon": -77.6013313,
"google_place_id": "ChIJkxCQwnBtsYkR1QqrxNduupo",
"location_id": 2246,
"full_address": "11161 Research Plaza Way, Richmond, VA 23236, USA"
},
"config": {
"hide_service_location": false
},
"workflowset_id": 3,
"pickup_workflow_data": {
"additional_field": "Hello World!"
},
"delivery_workflow_data": {
"additional_field": "Hello World!"
}
},
"customer_move": {
"move_id": 10053,
"status": null,
"cancel_status": null,
"pickup_started": null,
"pickup_arrived": null,
"pickup_successful": null,
"delivery_started": null,
"delivery_arrived": null,
"delivery_successful": null,
"tracking_link": null,
"move_uri": "https://api.hopdrive.com/v1/moves/10053",
"lane_uri": "https://api.hopdrive.com/v1/lanes/6781",
"reference_num": "RO# 12345",
"dealer_contact": "Jane Smith",
"special_instructions": "Vehicle parked in spot 13C",
"vehicle": {
"stock": "BK0018",
"vin": "5GAKRBED5BJ262438",
"year": "2011",
"make": "Buick",
"model": "Enclave",
"color": "White",
"manual": false
},
"pickup_location": {
"name": "210 S Mulberry St",
"address_one": "210 S Mulberry St",
"city": "Richmond",
"state": "VA",
"zip": "23220",
"lat": 37.5500942,
"lon": -77.475998,
"google_place_id": "EioyMTAgUyBNdWxiZXJyeSBTdCwgUmljaG1vbmQsIFZBIDIzMjIwLCBVU0EiGxIZChQKEgkvOB-B4xOxiRGtaNzxgEUxRBDSAQ",
"location_id": 343,
"full_address": "210 S Mulberry St, Richmond, VA 23220, USA"
},
"config": {
"hide_service_location": false
},
"workflowset_id": 3,
"pickup_workflow_data": {
"additional_field": "Hello World!"
},
"delivery_workflow_data": {
"additional_field": "Hello World!"
}
}
}