Rental Cars
Ask
List rental cars
GET/v1/teams/{teamId}/rental-carsLists rental car records for a team.
Required scopes: rental_car:read
Parameters
path.teamIdrequired | string:uuidTeam identifier. |
|---|---|
query.date | string:dateOptional local date filter in YYYY-MM-DD format. Returns rentals whose pickup/drop-off date range overlaps this date. |
query.limit | integerMaximum number of records to return. Defaults to 50 and is capped at 200. |
query.cursor | stringCursor returned by page.nextCursor from the previous list response. |
Response 200
data | object[] |
|---|---|
data[].companyName | stringRental car company name. |
data[].label | stringOptional short display label. |
data[].confirmationNumber | stringRental booking confirmation number. |
data[].status | "confirmed" | "unconfirmed"Rental confirmation state. |
data[].priority | "normal" | "high"Rental display priority. |
data[].pickupDate | stringLocal rental date in YYYY-MM-DD format at the corresponding rental location. |
data[].pickupTime | stringLocal rental time in HH:mm 24-hour format at the corresponding rental location. |
data[].pickupLocation | objectRental pickup or drop-off location, including its required timezone. |
data[].pickupLocation.label | stringHuman-readable place label. |
data[].pickupLocation.address | stringStreet address or venue address. |
data[].pickupLocation.placeId | stringGoogle Places ID when available. |
data[].pickupLocation.latitude | numberLatitude in decimal degrees. |
data[].pickupLocation.longitude | numberLongitude in decimal degrees. |
data[].pickupLocation.timezone | objectIANA timezone used to interpret and display the rental pickup or drop-off time. |
data[].dropoffDate | stringLocal rental date in YYYY-MM-DD format at the corresponding rental location. |
data[].dropoffTime | stringLocal rental time in HH:mm 24-hour format at the corresponding rental location. |
data[].dropoffLocation | objectRental pickup or drop-off location, including its required timezone. |
data[].dropoffLocation.label | stringHuman-readable place label. |
data[].dropoffLocation.address | stringStreet address or venue address. |
data[].dropoffLocation.placeId | stringGoogle Places ID when available. |
data[].dropoffLocation.latitude | numberLatitude in decimal degrees. |
data[].dropoffLocation.longitude | numberLongitude in decimal degrees. |
data[].dropoffLocation.timezone | objectIANA timezone used to interpret and display the rental pickup or drop-off time. |
data[].primaryDriver | objectPrimary renter or driver. |
data[].primaryDriver.name | stringContact person's name. |
data[].primaryDriver.title | stringContact person's role or job title. |
data[].primaryDriver.phone | stringContact phone number. |
data[].primaryDriver.email | string:emailContact email address. |
data[].primaryDriver.notes | stringShort notes about this contact. |
data[].vehicleClass | stringReserved vehicle class. |
data[].vehicleDescription | stringAssigned vehicle or other vehicle details. |
data[].contacts | object[]Rental company contacts. |
data[].contacts[].name | stringContact person's name. |
data[].contacts[].title | stringContact person's role or job title. |
data[].contacts[].phone | stringContact phone number. |
data[].contacts[].email | string:emailContact email address. |
data[].contacts[].notes | stringShort notes about this contact. |
data[].notes | stringGeneral rental notes. |
data[].sourceMetadata | objectIntegration or import metadata retained with the rental. |
data[].visibility | objectOptional rental visibility rules. |
data[].visibility.groupIds | string:uuid[] |
data[].visibility.userIds | string:uuid[] |
data[].pickupAt | string:date-timeDerived UTC pickup timestamp. |
data[].dropoffAt | string:date-timeDerived UTC drop-off timestamp. |
data[].id | string:uuidRental car identifier. |
data[].orgId | string:uuidTeam identifier. |
data[].isDeleted | booleanSoft-delete flag. |
data[].version | integerCurrent rental car aggregate version. |
data[].createdAt | string:date-timeISO 8601 timestamp when the rental car was created. |
data[].createdBy | stringUser identifier that created the rental car. |
data[].updatedAt | string:date-timeISO 8601 timestamp of the latest update. |
data[].updatedBy | stringUser identifier that last updated the rental car. |
data[].cursor | integerLatest projected event-ledger cursor. |
page | object |
page.limit | integerMaximum number of records returned in this page. |
page.nextCursor | string | nullCursor to pass as the next request's cursor query parameter, or null when there are no more results. |
meta | object |
meta.cursor | number | null |
Create a rental car
POST/v1/teams/{teamId}/rental-carsAccepts a command to create a rental car record.
Required scopes: rental_car:write
Parameters
path.teamIdrequired | string:uuidTeam identifier. |
|---|---|
header.Idempotency-Key | string:uuidOptional caller-generated UUID used to make mutation retries safe. Reuse the same UUID only when retrying the same request. |
Request body (application/json)
companyNamerequired | stringRental car company name. |
|---|---|
label | stringOptional short display label. |
confirmationNumber | stringRental booking confirmation number. |
statusrequired | "confirmed" | "unconfirmed"Rental confirmation state. |
priorityrequired | "normal" | "high"Rental display priority. |
pickupDaterequired | stringLocal rental date in YYYY-MM-DD format at the corresponding rental location. |
pickupTimerequired | stringLocal rental time in HH:mm 24-hour format at the corresponding rental location. |
pickupLocationrequired | objectRental pickup or drop-off location, including its required timezone. |
pickupLocation.label | stringHuman-readable place label. |
pickupLocation.address | stringStreet address or venue address. |
pickupLocation.placeId | stringGoogle Places ID when available. |
pickupLocation.latitude | numberLatitude in decimal degrees. |
pickupLocation.longitude | numberLongitude in decimal degrees. |
pickupLocation.timezonerequired | objectIANA timezone used to interpret and display the rental pickup or drop-off time. |
dropoffDaterequired | stringLocal rental date in YYYY-MM-DD format at the corresponding rental location. |
dropoffTimerequired | stringLocal rental time in HH:mm 24-hour format at the corresponding rental location. |
dropoffLocationrequired | objectRental pickup or drop-off location, including its required timezone. |
dropoffLocation.label | stringHuman-readable place label. |
dropoffLocation.address | stringStreet address or venue address. |
dropoffLocation.placeId | stringGoogle Places ID when available. |
dropoffLocation.latitude | numberLatitude in decimal degrees. |
dropoffLocation.longitude | numberLongitude in decimal degrees. |
dropoffLocation.timezonerequired | objectIANA timezone used to interpret and display the rental pickup or drop-off time. |
primaryDriver | objectPrimary renter or driver. |
primaryDriver.namerequired | stringContact person's name. |
primaryDriver.title | stringContact person's role or job title. |
primaryDriver.phone | stringContact phone number. |
primaryDriver.email | string:emailContact email address. |
primaryDriver.notes | stringShort notes about this contact. |
vehicleClass | stringReserved vehicle class. |
vehicleDescription | stringAssigned vehicle or other vehicle details. |
contactsrequired | object[]Rental company contacts. |
contacts[].namerequired | stringContact person's name. |
contacts[].title | stringContact person's role or job title. |
contacts[].phone | stringContact phone number. |
contacts[].email | string:emailContact email address. |
contacts[].notes | stringShort notes about this contact. |
notes | stringGeneral rental notes. |
sourceMetadata | objectIntegration or import metadata retained with the rental. |
visibility | objectOptional rental visibility rules. |
visibility.groupIds | string:uuid[] |
visibility.userIds | string:uuid[] |
id | string:uuidOptional caller-supplied rental car ID. RoadOps generates one when omitted. |
Response 202
commandId | string:uuidCommand identifier accepted into the RoadOps command ledger. |
|---|---|
resourceId | string:uuidIdentifier of the resource targeted by the command. |
resourceType | stringResource type targeted by the command. |
status | "applied"Command dispatch status. |
aggregateVersion | integerAggregate version produced by the accepted command. |
cursor | integerEvent-ledger cursor for the accepted update. Refetch until returned records reach this cursor. |
links | object |
links.refetch | stringRelative URL to refetch the affected resource. |
Retrieve a rental car
GET/v1/teams/{teamId}/rental-cars/{rentalCarId}Returns one rental car record by ID.
Required scopes: rental_car:read
Parameters
path.teamIdrequired | string:uuidTeam identifier. |
|---|---|
path.rentalCarIdrequired | string:uuidRental car identifier. |
Response 200
data | object |
|---|---|
data.companyName | stringRental car company name. |
data.label | stringOptional short display label. |
data.confirmationNumber | stringRental booking confirmation number. |
data.status | "confirmed" | "unconfirmed"Rental confirmation state. |
data.priority | "normal" | "high"Rental display priority. |
data.pickupDate | stringLocal rental date in YYYY-MM-DD format at the corresponding rental location. |
data.pickupTime | stringLocal rental time in HH:mm 24-hour format at the corresponding rental location. |
data.pickupLocation | objectRental pickup or drop-off location, including its required timezone. |
data.pickupLocation.label | stringHuman-readable place label. |
data.pickupLocation.address | stringStreet address or venue address. |
data.pickupLocation.placeId | stringGoogle Places ID when available. |
data.pickupLocation.latitude | numberLatitude in decimal degrees. |
data.pickupLocation.longitude | numberLongitude in decimal degrees. |
data.pickupLocation.timezone | objectIANA timezone used to interpret and display the rental pickup or drop-off time. |
data.dropoffDate | stringLocal rental date in YYYY-MM-DD format at the corresponding rental location. |
data.dropoffTime | stringLocal rental time in HH:mm 24-hour format at the corresponding rental location. |
data.dropoffLocation | objectRental pickup or drop-off location, including its required timezone. |
data.dropoffLocation.label | stringHuman-readable place label. |
data.dropoffLocation.address | stringStreet address or venue address. |
data.dropoffLocation.placeId | stringGoogle Places ID when available. |
data.dropoffLocation.latitude | numberLatitude in decimal degrees. |
data.dropoffLocation.longitude | numberLongitude in decimal degrees. |
data.dropoffLocation.timezone | objectIANA timezone used to interpret and display the rental pickup or drop-off time. |
data.primaryDriver | objectPrimary renter or driver. |
data.primaryDriver.name | stringContact person's name. |
data.primaryDriver.title | stringContact person's role or job title. |
data.primaryDriver.phone | stringContact phone number. |
data.primaryDriver.email | string:emailContact email address. |
data.primaryDriver.notes | stringShort notes about this contact. |
data.vehicleClass | stringReserved vehicle class. |
data.vehicleDescription | stringAssigned vehicle or other vehicle details. |
data.contacts | object[]Rental company contacts. |
data.contacts[].name | stringContact person's name. |
data.contacts[].title | stringContact person's role or job title. |
data.contacts[].phone | stringContact phone number. |
data.contacts[].email | string:emailContact email address. |
data.contacts[].notes | stringShort notes about this contact. |
data.notes | stringGeneral rental notes. |
data.sourceMetadata | objectIntegration or import metadata retained with the rental. |
data.visibility | objectOptional rental visibility rules. |
data.visibility.groupIds | string:uuid[] |
data.visibility.userIds | string:uuid[] |
data.pickupAt | string:date-timeDerived UTC pickup timestamp. |
data.dropoffAt | string:date-timeDerived UTC drop-off timestamp. |
data.id | string:uuidRental car identifier. |
data.orgId | string:uuidTeam identifier. |
data.isDeleted | booleanSoft-delete flag. |
data.version | integerCurrent rental car aggregate version. |
data.createdAt | string:date-timeISO 8601 timestamp when the rental car was created. |
data.createdBy | stringUser identifier that created the rental car. |
data.updatedAt | string:date-timeISO 8601 timestamp of the latest update. |
data.updatedBy | stringUser identifier that last updated the rental car. |
data.cursor | integerLatest projected event-ledger cursor. |
meta | object |
meta.cursor | integer |
Update a rental car
PATCH/v1/teams/{teamId}/rental-cars/{rentalCarId}Accepts a command to update rental car fields.
Required scopes: rental_car:write
Parameters
path.teamIdrequired | string:uuidTeam identifier. |
|---|---|
path.rentalCarIdrequired | string:uuidRental car identifier. |
header.Idempotency-Key | string:uuidOptional caller-generated UUID used to make mutation retries safe. Reuse the same UUID only when retrying the same request. |
Request body (application/json)
expectedVersion | integerOptional aggregate version guard. |
|---|---|
updatesrequired | objectRental car fields to update. |
updates.companyName | stringRental car company name. |
updates.label | stringOptional short display label. |
updates.confirmationNumber | stringRental booking confirmation number. |
updates.status | "confirmed" | "unconfirmed"Rental confirmation state. |
updates.priority | "normal" | "high"Rental display priority. |
updates.pickupDate | stringLocal rental date in YYYY-MM-DD format at the corresponding rental location. |
updates.pickupTime | stringLocal rental time in HH:mm 24-hour format at the corresponding rental location. |
updates.pickupLocation | objectRental pickup or drop-off location, including its required timezone. |
updates.pickupLocation.label | stringHuman-readable place label. |
updates.pickupLocation.address | stringStreet address or venue address. |
updates.pickupLocation.placeId | stringGoogle Places ID when available. |
updates.pickupLocation.latitude | numberLatitude in decimal degrees. |
updates.pickupLocation.longitude | numberLongitude in decimal degrees. |
updates.pickupLocation.timezonerequired | objectIANA timezone used to interpret and display the rental pickup or drop-off time. |
updates.dropoffDate | stringLocal rental date in YYYY-MM-DD format at the corresponding rental location. |
updates.dropoffTime | stringLocal rental time in HH:mm 24-hour format at the corresponding rental location. |
updates.dropoffLocation | objectRental pickup or drop-off location, including its required timezone. |
updates.dropoffLocation.label | stringHuman-readable place label. |
updates.dropoffLocation.address | stringStreet address or venue address. |
updates.dropoffLocation.placeId | stringGoogle Places ID when available. |
updates.dropoffLocation.latitude | numberLatitude in decimal degrees. |
updates.dropoffLocation.longitude | numberLongitude in decimal degrees. |
updates.dropoffLocation.timezonerequired | objectIANA timezone used to interpret and display the rental pickup or drop-off time. |
updates.primaryDriver | object | nullUpdated primary renter or driver, or null to clear the existing primary driver. |
updates.primaryDriver.namerequired | stringContact person's name. |
updates.primaryDriver.title | stringContact person's role or job title. |
updates.primaryDriver.phone | stringContact phone number. |
updates.primaryDriver.email | string:emailContact email address. |
updates.primaryDriver.notes | stringShort notes about this contact. |
updates.vehicleClass | stringReserved vehicle class. |
updates.vehicleDescription | stringAssigned vehicle or other vehicle details. |
updates.contacts | object[]Rental company contacts. |
updates.contacts[].namerequired | stringContact person's name. |
updates.contacts[].title | stringContact person's role or job title. |
updates.contacts[].phone | stringContact phone number. |
updates.contacts[].email | string:emailContact email address. |
updates.contacts[].notes | stringShort notes about this contact. |
updates.notes | stringGeneral rental notes. |
updates.sourceMetadata | objectIntegration or import metadata retained with the rental. |
updates.visibility | objectOptional rental visibility rules. |
updates.visibility.groupIds | string:uuid[] |
updates.visibility.userIds | string:uuid[] |
Response 202
commandId | string:uuidCommand identifier accepted into the RoadOps command ledger. |
|---|---|
resourceId | string:uuidIdentifier of the resource targeted by the command. |
resourceType | stringResource type targeted by the command. |
status | "applied"Command dispatch status. |
aggregateVersion | integerAggregate version produced by the accepted command. |
cursor | integerEvent-ledger cursor for the accepted update. Refetch until returned records reach this cursor. |
links | object |
links.refetch | stringRelative URL to refetch the affected resource. |
Delete a rental car
DELETE/v1/teams/{teamId}/rental-cars/{rentalCarId}Accepts a command to delete a rental car record.
Required scopes: rental_car:write
Parameters
path.teamIdrequired | string:uuidTeam identifier. |
|---|---|
path.rentalCarIdrequired | string:uuidRental car identifier. |
header.Idempotency-Key | string:uuidOptional caller-generated UUID used to make mutation retries safe. Reuse the same UUID only when retrying the same request. |
Response 202
commandId | string:uuidCommand identifier accepted into the RoadOps command ledger. |
|---|---|
resourceId | string:uuidIdentifier of the resource targeted by the command. |
resourceType | stringResource type targeted by the command. |
status | "applied"Command dispatch status. |
aggregateVersion | integerAggregate version produced by the accepted command. |
cursor | integerEvent-ledger cursor for the accepted update. Refetch until returned records reach this cursor. |
links | object |
links.refetch | stringRelative URL to refetch the affected resource. |