Vehicle - Vehicles
The Admin interface handles web service calls from the Admin web gui. The base url for this is at:
/api/vehicle-admin
A JSON file with OpenAPI data about all vehicle-related admin APIs can be downloaded here
.
Get vehicle description
Gets the Vehicle description:
- GET /v1/vehicles/{id}
Return the Vehicle description (many fields)
- Parameters
id (integer) – Vehicle ID
- Status Codes
200 OK – Success
- DELETE /v1/vehicles/{id}
Delete the vehicle indicated by the ID
- Parameters
id (integer) – Vehicle ID
- Status Codes
200 OK – Success
Returns all the data of the vehicle corresponding to the id
provided in the request:
{
"ID": 26, // Int
"LicensePlate": "AA000AA", // String
"VIN": "01234567890", // String
"Sticker": null, // String (nullable)
"LastSetOperativeBy": null, // String (nullable)
"IsOperative": true, // Boolean
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"SystemOperativeReason": "", // String (nullable)
"OverriddenSystemOperativeStatus": true, // Boolean
"ForcedOperativeBy": 'Administrator.name' // String (nullable)
"Notes": null, // String (nullable)
"CategoryLabels": "{\"en\":\"Jolly Smart\"}", // String
"CategoryID": 2, // Int
"CategoryTree":
{ //
"ID": 1, // Int
"Labels": "{\"en\":\"City Car\"}", // String
"Children": [...] // Category Array (nullable)
},
"Devices": // Device Array (nullable)
[
{
"ID": 13, // Int
"SerialNumber": "EDOXVERZKOSYXUJ", // String
"LastDeviceSync": "2001-01-01T00:00:00Z" // DateTime (nullable)
},
...
],
"NominalGarage": "Udine Garage", // String
"NominalGarageID": 4, // Int
"RecoveringGarage": null, // String (nullable)
"RecoveringGarageID": null, // Int (nullable)
"Latitude": 46.0838284476514, // Double (nullable)
"Longitude": 13.217754364013674, // Double (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"Groups": [ "51c770b3-c4f6-4203-9067-e05666137cec",... ], // Guid Array
"CurrentTripGuid": null, // Guid (nullable)
"DeviceID": 13, // Int (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"EngineType": 0, // Int
"FuelTankCapacity": null, // Int (nullable)
"FuelLevelPct": null, // Double (nullable)
"EVBLevelPct": null, // Double (nullable)
"OdometerKm": null, // Double (nullable)
"LastOdometerReading": null, // DateTime (nullable)
"IsDamaged": true, // Boolean (nullable)
"Status":
{
"CurrentReservationEnd": null, // DateTime (nullable)
"CurrentReservationMaxStart": null, // DateTime (nullable)
"CurrentReservationMinStart": null, // DateTime (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastMaintenanceEnd": null, // DateTime (nullable)
"LastMaintenanceStart": null, // DateTime (nullable)
"LastMotion": null, // DateTime (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"LastTripEnd": "2020-09-10T08:34:33Z", // DateTime (nullable)
"LastTripStart": "2020-09-10T08:31:16Z", // DateTime (nullable)
"FuelLevelPct": null, // Double (nullable)
"ServiceBattery": null, // Double (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"IsLowFuel": true, // Boolean
"IsLowEVB": true, // Boolean
"IsLostContact": true, // Boolean
"IsPositionLost": true, // Boolean
"IsReserved": false, // Boolean
"IsOnTrip": false, // Boolean
"IsOnTripAndMoving": false, // Boolean
"IsWithoutTripsForLong": true, // Boolean
"IsInMaintenance": false, // Boolean
"IsInternetWeak": true // Boolean
}, //
"InternalCleaningStatus": null, // Int (nullable)
"ExternalCleaningStatus": null, // Int (nullable)
"IgnitionVoltageLevel": null // Int (nullable)
}
or a plain Json negative response if no corresponding record is found.
The field Labels
in CategoryTree contains a stringified Json containing pairs “language code”:”localized value”
Values of InternalCleaningStatus
and ExternalCleaningStatus
can be one of the VehicleCleaningStatus enumeration.
Values of EngineType
can be one of the VehicleEngineTypes enumeration.
Get vehicle description by Guid
Gets the Vehicle description given its guid:
- GET /v1/vehicles/{id}
Return the Vehicle description (many fields)
- Parameters
id (integer) – Vehicle ID
- Status Codes
200 OK – Success
- DELETE /v1/vehicles/{id}
Delete the vehicle indicated by the ID
- Parameters
id (integer) – Vehicle ID
- Status Codes
200 OK – Success
Returns all the data of the vehicle corresponding to the id
provided in the request:
{
"ID": 26, // Int
"LicensePlate": "AA000AA", // String
"VIN": "01234567890", // String
"Sticker": null, // String (nullable)
"LastSetOperativeBy": null, // String (nullable)
"IsOperative": true, // Boolean
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"SystemOperativeReason": "", // String (nullable)
"OverriddenSystemOperativeStatus": true, // Boolean
"ForcedOperativeBy": "Administrator.name", // String (nullable)
"Notes": null, // String (nullable)
"CategoryLabels": "{\"en\":\"Jolly Smart\"}", // String
"CategoryID": 2, // Int
"CategoryTree":
{ //
"ID": 1, // Int
"Labels": "{\"en\":\"City Car\"}", // String
"Children": [...] // Category Array (nullable)
},
"Devices": // Device Array (nullable)
[
{
"ID": 13, // Int
"SerialNumber": "EDOXVERZKOSYXUJ", // String
"LastDeviceSync": "2001-01-01T00:00:00Z" // DateTime (nullable)
},
...
],
"NominalGarage": "Udine Garage", // String
"NominalGarageID": 4, // Int
"RecoveringGarage": null, // String (nullable)
"RecoveringGarageID": null, // Int (nullable)
"Latitude": 46.0838284476514, // Double (nullable)
"Longitude": 13.217754364013674, // Double (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"Groups": [ "51c770b3-c4f6-4203-9067-e05666137cec",... ], // Guid Array
"CurrentTripGuid": null, // Guid (nullable)
"DeviceID": 13, // Int (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"EngineType": 0, // Int
"FuelTankCapacity": null, // Int (nullable)
"FuelLevelPct": null, // Double (nullable)
"EVBLevelPct": null, // Double (nullable)
"OdometerKm": null, // Double (nullable)
"LastOdometerReading": null, // DateTime (nullable)
"IsDamaged": true, // Boolean (nullable)
"Status":
{
"CurrentReservationEnd": null, // DateTime (nullable)
"CurrentReservationMaxStart": null, // DateTime (nullable)
"CurrentReservationMinStart": null, // DateTime (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastMaintenanceEnd": null, // DateTime (nullable)
"LastMaintenanceStart": null, // DateTime (nullable)
"LastMotion": null, // DateTime (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"LastTripEnd": "2020-09-10T08:34:33Z", // DateTime (nullable)
"LastTripStart": "2020-09-10T08:31:16Z", // DateTime (nullable)
"FuelLevelPct": null, // Double (nullable)
"ServiceBattery": null, // Double (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"IsLowFuel": true, // Boolean
"IsLowEVB": true, // Boolean
"IsLostContact": true, // Boolean
"IsPositionLost": true, // Boolean
"IsReserved": false, // Boolean
"IsOnTrip": false, // Boolean
"IsOnTripAndMoving": false, // Boolean
"IsWithoutTripsForLong": true, // Boolean
"IsInMaintenance": false, // Boolean
"IsInternetWeak": true // Boolean
}, //
"InternalCleaningStatus": null, // Int (nullable)
"ExternalCleaningStatus": null, // Int (nullable)
"IgnitionVoltageLevel": null // Int (nullable)
}
or a plain Json negative response if no corresponding record is found.
The field Labels
in CategoryTree contains a stringified Json containing pairs “language code”:”localized value”
Values of InternalCleaningStatus
and ExternalCleaningStatus
can be one of the VehicleCleaningStatus enumeration.
Values of EngineType
can be one of the VehicleEngineTypes enumeration.
Get vehicle trips
Gets the list of trips related to the vehicle (it’s a Paged List APIs, as explained in the introduction):
- GET /v1/vehicles/{id}/trips
Returns trips related to a vehicle
- Parameters
id (integer) – Vehicle ID
- Status Codes
200 OK – Success
Returns a list of trips:
[
{
ID: 440, // Int
StartTimestamp: "2020-04-30T15:23:41Z", // DateTime
CreatedDate: "2020-04-30T15:23:27Z", // DateTime
LastUpdated: "2020-04-30T15:34:51Z", // DateTime
StartLongitude: 12.161521911621096, // Double (nullable)
StartLatitude: 45.669532661484325, // Double (nullable)
EndLongitude: 12.161521911621096, // Double (nullable)
EndLatitude: 45.669532661484325, // Double (nullable)
IsCompleted: true, // Boolean
TripType: 0, // Int
EndTimestamp: "2020-04-30T15:23:39Z", // DateTime (nullable)
OriginatingDeviceKey: null, // String (nullable)
TripGuid: "34c4c0a8-f686-4b1a-843f-0231eac4218f", // Guid (nullable)
DeletionDate: "2020-04-30T15:23:39Z" // DateTime (nullable)
},
...
]
Value of the TripType
field can be one of the VehicleTripType enumeration.
Get vehicles
Gets a list of vehicles (it’s a Paged List APIs, as explained in the introduction):
Returns a list of all vehicles:
[
{
"ID": 26, // Int
"LicensePlate": "AA000AA", // String
"VIN": "01234567890", // String
"Sticker": null, // String (nullable)
"LastSetOperativeBy": null, // String (nullable)
"IsOperative": true, // Boolean
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"SystemOperativeReason": "", // String (nullable)
"OverriddenSystemOperativeStatus": true, // Boolean
"ForcedOperativeBy": 'Administrator.name' // String (nullable)
"Notes": null, // String (nullable)
"CategoryLabels": "{\"en\":\"Jolly Smart\"}", // String
"CategoryID": 2, // Int
"CategoryTree":
{ //
"ID": 1, // Int
"Labels": "{\"en\":\"City Car\"}", // String
"Children": [...] // Category Array (nullable)
},
"Devices": // Device Array (nullable)
[
{
"ID": 13, // Int
"SerialNumber": "EDOXVERZKOSYXUJ", // String
"LastDeviceSync": "2001-01-01T00:00:00Z" // DateTime (nullable)
},
...
],
"NominalGarage": "Udine Garage", // String
"NominalGarageID": 4, // Int
"RecoveringGarage": null, // String (nullable)
"RecoveringGarageID": null, // Int (nullable)
"Latitude": 46.0838284476514, // Double (nullable)
"Longitude": 13.217754364013674, // Double (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"Groups": [ "51c770b3-c4f6-4203-9067-e05666137cec",... ], // Guid Array
"CurrentTripGuid": null, // Guid (nullable)
"DeviceID": 13, // Int (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"EngineType": 0, // Int
"FuelTankCapacity": null, // Int (nullable)
"FuelLevelPct": null, // Double (nullable)
"EVBLevelPct": null, // Double (nullable)
"OdometerKm": null, // Double (nullable)
"LastOdometerReading": null, // DateTime (nullable)
"IsDamaged": true, // Boolean (nullable)
"Status":
{
"CurrentReservationEnd": null, // DateTime (nullable)
"CurrentReservationMaxStart": null, // DateTime (nullable)
"CurrentReservationMinStart": null, // DateTime (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastMaintenanceEnd": null, // DateTime (nullable)
"LastMaintenanceStart": null, // DateTime (nullable)
"LastMotion": null, // DateTime (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"LastTripEnd": "2020-09-10T08:34:33Z", // DateTime (nullable)
"LastTripStart": "2020-09-10T08:31:16Z", // DateTime (nullable)
"FuelLevelPct": null, // Double (nullable)
"ServiceBattery": null, // Double (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"IsLowFuel": true, // Boolean
"IsLowEVB": true, // Boolean
"IsLostContact": true, // Boolean
"IsPositionLost": true, // Boolean
"IsReserved": false, // Boolean
"IsOnTrip": false, // Boolean
"IsOnTripAndMoving": false, // Boolean
"IsWithoutTripsForLong": true, // Boolean
"IsInMaintenance": false, // Boolean
"IsInternetWeak": true // Boolean
},
"InternalCleaningStatus": null, // Int (nullable)
"ExternalCleaningStatus": null, // Int (nullable)
"IgnitionVoltageLevel": null // Int (nullable)
},
...
]
The field CategoryLabels
and Labels
in CategoryTree contain a stringified Json containing pairs “language code”:”localized value”
Value of the InternalCleaningStatus
and ExternalCleaningStatus
fields can be one of the VehicleCleaningStatus enumeration.
Values of EngineType
can be one of the VehicleEngineTypes enumeration.
Get vehicles in area
Gets a list of vehicles within an area (data presents in the body):
- POST /v1/vehicles/area
Return a list of vehicles within an area (data presents in the body)
- Status Codes
200 OK – Success
The body of the request is:
{
NorthBound: 51.1536622, // Double (Required)
EastBound: -0.19081760000000259, // Double (Required)
SouthBound: 51.1536622, // Double (Required)
WestBound: -0.19081760000000259 // Double (Required)
}
All four points are required for the request to be valid.
If the request is successful, a Json positive response will be returned toeghether with the list of all the vehicles within the specified rectangle:
[
{
"ID": 26, // Int
"LicensePlate": "AA000AA", // String
"VIN": "01234567890", // String
"Sticker": null, // String (nullable)
"LastSetOperativeBy": null, // String (nullable)
"IsOperative": true, // Boolean
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"SystemOperativeReason": "", // String (nullable)
"OverriddenSystemOperativeStatus": true, // Boolean
"ForcedOperativeBy": "Administrator.name", // String (nullable)
"Notes": null, // String (nullable)
"CategoryLabels": "{\"en\":\"Jolly Smart\"}", // String
"CategoryID": 2, // Int
"CategoryTree":
{ //
"ID": 1, // Int
"Labels": "{\"en\":\"City Car\"}", // String
"Children": [...] // Category Array (nullable)
},
"Devices": // Device Array (nullable)
[
{
"ID": 13, // Int
"SerialNumber": "EDOXVERZKOSYXUJ", // String
"LastDeviceSync": "2001-01-01T00:00:00Z" // DateTime (nullable)
},
...
],
"NominalGarage": "Udine Garage", // String
"NominalGarageID": 4, // Int
"RecoveringGarage": null, // String (nullable)
"RecoveringGarageID": null, // Int (nullable)
"Latitude": 46.0838284476514, // Double (nullable)
"Longitude": 13.217754364013674, // Double (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"Groups": [ "51c770b3-c4f6-4203-9067-e05666137cec",... ], // Guid Array
"CurrentTripGuid": null, // Guid (nullable)
"DeviceID": 13, // Int (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"EngineType": 0, // Int
"FuelTankCapacity": null, // Int (nullable)
"FuelLevelPct": null, // Double (nullable)
"EVBLevelPct": null, // Double (nullable)
"OdometerKm": null, // Double (nullable)
"LastOdometerReading": null, // DateTime (nullable)
"IsDamaged": true, // Boolean (nullable)
"Status":
{
"CurrentReservationEnd": null, // DateTime (nullable)
"CurrentReservationMaxStart": null, // DateTime (nullable)
"CurrentReservationMinStart": null, // DateTime (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastMaintenanceEnd": null, // DateTime (nullable)
"LastMaintenanceStart": null, // DateTime (nullable)
"LastMotion": null, // DateTime (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"LastTripEnd": "2020-09-10T08:34:33Z", // DateTime (nullable)
"LastTripStart": "2020-09-10T08:31:16Z", // DateTime (nullable)
"FuelLevelPct": null, // Double (nullable)
"ServiceBattery": null, // Double (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"IsLowFuel": true, // Boolean
"IsLowEVB": true, // Boolean
"IsLostContact": true, // Boolean
"IsPositionLost": true, // Boolean
"IsReserved": false, // Boolean
"IsOnTrip": false, // Boolean
"IsOnTripAndMoving": false, // Boolean
"IsWithoutTripsForLong": true, // Boolean
"IsInMaintenance": false, // Boolean
"IsInternetWeak": true // Boolean
},
"InternalCleaningStatus": null, // Int (nullable)
"ExternalCleaningStatus": null, // Int (nullable)
"IgnitionVoltageLevel": null // Int (nullable)
},
...
]
The field Labels
in CategoryTree contains a stringified Json containing pairs “language code”:”localized value”
Values of InternalCleaningStatus
and ExternalCleaningStatus
can be one of the VehicleCleaningStatus enumeration.
Values of EngineType
can be one of the VehicleEngineTypes enumeration.
If some of the bound point is not valorized or if there is a problem processing the request, a plain Json negative response will be returned.
Get vehicle by device
Gets the information of a vehicle connected to a particular device:
- GET /v1/vehicles/by-device/{id}
Returns the information of a vehicle connected to the device
- Parameters
id (integer) – Device ID
- Status Codes
200 OK – Success
Returns a Json positive response and the details of the vehicle where the specified device is installed:
{
"ID": 26, // Int
"LicensePlate": "AA000AA", // String
"VIN": "01234567890", // String
"Sticker": null, // String (nullable)
"LastSetOperativeBy": null, // String (nullable)
"IsOperative": true, // Boolean
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"SystemOperativeReason": "", // String (nullable)
"OverriddenSystemOperativeStatus": true, // Boolean
"ForcedOperativeBy": "Administrator.name", // String (nullable)
"Notes": null, // String (nullable)
"CategoryLabels": "{\"en\":\"Jolly Smart\"}", // String
"CategoryID": 2, // Int
"CategoryTree":
{ //
"ID": 1, // Int
"Labels": "{\"en\":\"City Car\"}", // String
"Children": [...] // Category Array (nullable)
},
"Devices": // Device Array (nullable)
[
{
"ID": 13, // Int
"SerialNumber": "EDOXVERZKOSYXUJ", // String
"LastDeviceSync": "2001-01-01T00:00:00Z" // DateTime (nullable)
},
...
],
"NominalGarage": "Udine Garage", // String
"NominalGarageID": 4, // Int
"RecoveringGarage": null, // String (nullable)
"RecoveringGarageID": null, // Int (nullable)
"Latitude": 46.0838284476514, // Double (nullable)
"Longitude": 13.217754364013674, // Double (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"Groups": [ "51c770b3-c4f6-4203-9067-e05666137cec",... ], // Guid Array
"CurrentTripGuid": null, // Guid (nullable)
"DeviceID": 13, // Int (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"EngineType": 0, // Int
"FuelTankCapacity": null, // Int (nullable)
"FuelLevelPct": null, // Double (nullable)
"EVBLevelPct": null, // Double (nullable)
"OdometerKm": null, // Double (nullable)
"LastOdometerReading": null, // DateTime (nullable)
"IsDamaged": true, // Boolean (nullable)
"Status":
{
"CurrentReservationEnd": null, // DateTime (nullable)
"CurrentReservationMaxStart": null, // DateTime (nullable)
"CurrentReservationMinStart": null, // DateTime (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastMaintenanceEnd": null, // DateTime (nullable)
"LastMaintenanceStart": null, // DateTime (nullable)
"LastMotion": null, // DateTime (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"LastTripEnd": "2020-09-10T08:34:33Z", // DateTime (nullable)
"LastTripStart": "2020-09-10T08:31:16Z", // DateTime (nullable)
"FuelLevelPct": null, // Double (nullable)
"ServiceBattery": null, // Double (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"IsLowFuel": true, // Boolean
"IsLowEVB": true, // Boolean
"IsLostContact": true, // Boolean
"IsPositionLost": true, // Boolean
"IsReserved": false, // Boolean
"IsOnTrip": false, // Boolean
"IsOnTripAndMoving": false, // Boolean
"IsWithoutTripsForLong": true, // Boolean
"IsInMaintenance": false, // Boolean
"IsInternetWeak": true // Boolean
}, //
"InternalCleaningStatus": null, // Int (nullable)
"ExternalCleaningStatus": null, // Int (nullable)
"IgnitionVoltageLevel": null // Int (nullable)
}
The field CategoryLabels
and Labels
in CategoryTree contain a stringified Json containing pairs “language code”:”localized value”
Values of InternalCleaningStatus
and ExternalCleaningStatus
can be one of the VehicleCleaningStatus enumeration.
Values of EngineType
can be one of the VehicleEngineTypes enumeration.
Add or Update vehicle
Add or updates the data of a vehicle:
The request body is:
{
ID: 123, // Int
LicensePlate: "ABC123CB", // String
Sticker: "...", // String (nullable)
VIN: "343434343434343434", // String
AdminOperativeStatus: false, // Boolean
CategoryID: 1, // Int
Notes: "", // String (nullable)
Groups: [...], // Guid array (nullable)
NominalGarageID: 2, // Int
RecoveringGarageID: 5, // Int (nullable)
IgnitionVoltageLevel: 130 // Int (nullable)
}
If the ID
property is not provided or set to 0, then the request will create a new record, otherwise it will modify the existing vehicle.
The Groups
property is handled only when ID
is either 0 or not set. During an edit it will be ignored.
If the record has been successfully added or modified, the request will return a plain Json positive answer. Otherwise a plain Json negative response will be returned.
Possible error messages:
err_MissingCategory
No value provided for
CategoryID
err_MissingNominalGarage
No value provided for
NominalGarageID
err_InvalidElement
No group has been provided and the user is not a SuperAdmin, no LicensePlate or VIN has been provided, or no vehicle to edit has been found for the provided
ID
Delete vehicle
Marks the vehicle indicated by the ID as deleted:
- GET /v1/vehicles/{id}
Return the Vehicle description (many fields)
- Parameters
id (integer) – Vehicle ID
- Status Codes
200 OK – Success
- DELETE /v1/vehicles/{id}
Delete the vehicle indicated by the ID
- Parameters
id (integer) – Vehicle ID
- Status Codes
200 OK – Success
If the request is successful, it will returns a plain Json positive response and the vehicle will be deleted.
Possible error messages:
err_ElementDoesNotExist
There is no vehicle record corresponding to the
ID
in the requesterr_CannotDeleteOnTrip
The vehicle cannot be deleted because it has an ongoing trip
Set operative
Set a vehicle (specified on the body) as operative:
- POST /v1/vehicles/set-operative
Set a vehicle (specified on the body) as operative
- Status Codes
200 OK – Success
The body of the request is:
{
VehicleID: 123 // Int
}
where VehicleID
corresponds to a vehicle ID record.
If there is no corresponding vehicle, a plain Json negative response will be returned.
If the request is successful a plain Json positive response will be returned and the vehicle will be set as operative (SystemOperativeStatus
= true).
Override system operativity
This endpoint is used by a SuperAdministrator to set the vehicle as operative regardless of the SystemOperativeStatus property.
- POST /v1/vehicles/override-system-operative
Set a vehicle to overryde system operativity flag
- Status Codes
200 OK – Success
The body of the request is:
{
VehicleID: 123 // Int
Status: true // Boolean
}
where VehicleID
corresponds to a vehicle ID record.
The API will return a plain error response if no vehicle was found for the provided ID, or one of the following error messages:
err_OperativityAlreadyOverridden
The vehicle already is set to ignore system operativity
err_AlreadyOperativeBySystem
The vehicle is not set as not operative by system
Relocate
Set latitude and longitude (specified on the body) position of a vehicle:
- POST /v1/vehicles/{id}/relocate
Set latitude and longitude (specified on the body) position of a vehicle
- Parameters
id (integer) –
- Status Codes
200 OK – Success
The body of the request is:
{
Latitude: 123 // Double (nullable)
Longitude: 123 // Double (nullable)
}
If Latitude
or Longitude
are not provided or there is no corresponding vehicle, a plain Json negative response will be returned.
If the request is successful a plain Json positive response will be returned and the vehicle position will be updated.
Set vehicle cleaning statuses
Set the cleaning statuses of a vehicle:
- POST /v1/vehicles/{id}/cleaning-status
Set the cleaning status of a vehicle
- Parameters
id (integer) – Vehicle id
- Status Codes
200 OK – Success
The body of the request is:
{
ID: 123, // Int
InternalCleaningStatus: 0, // Int
ExternalCleaningStatus: 0 // Int
}
Value types of InternalCleaningStatus
and ExternalCleaningStatus
can be one of the VehicleCleaningStatus enumeration.
Returns a plain Json positive response if the the cleaning status has been successfully set for the specified vehicle.
Returns a plain Json negative response if there is no vehicle corresponding to the ID
provided in the body.
Get vehicle device metric
Retrieves the information relating to a single type of vehicle measurement:
- GET /v1/vehicles/{id}/metric/{guid}
Returns information relating to a single type of vehicle measurement
- Parameters
id (integer) – Vehicle ID
guid (string) – Type of measurement
- Status Codes
200 OK – Success
Returns the information for the vehicle measurement requested (e.g. service battery):
{
Samples: [ [ key1,value1 ], [ key2,value2 ], ... ], // Two Dimensional Double Array (value is nullable)
Start: "2020-04-27T00:00:00Z", // DateTime
Min: 120, // Double (nullable)
Max: 123, // Double (nullable)
First: 121, // Double (nullable)
Last: 123, // Double (nullable)
Average: 123 // Double (nullable)
}
Samples: keyn
and valuen
are Double. valuen
can be null. keyn
are seconds from the date specified in the field Start
Get available vehicles
Get the number of the vehicles that are currently available:
- GET /v1/vehicles/count-available
Return the number of the available vehicles
- Status Codes
200 OK – Success
Returns a Json positive response and the number of the available vehicles:
{
11 // Int
}
Get vehicle groups
Gets a list of the groups linked to the specified vehicle (it’s a Paged List APIs, as explained in the introduction):
- GET /v1/vehicles/{id}/groups
Groups related to a vehicle
- Parameters
id (integer) – Vehicle ID
- Status Codes
200 OK – Success
Returns the list of groups that the specified vehicle belongs to:
[
{
Name: "Venice", // String
Description: "Description", // String (nullable)
Guid: "2ddc0f63-e924-4fba-8e31-fa5803bf1e39", // Guid
Originator: "32b297a5-8180-420f-9482-84bfc7f55efe", // Guid
DeletionDate: "2020-04-27T00:00:00Z" // DateTime (nullable)
},
...
]
Add vehicles to group
Connect groups to a vehicle:
With a body like this:
{
ID: 123, // Int (Required)
Groups: [ "2ddc0f63-e924-4fba-8e31-fa5803bf1e39", "a0c79a5b-74bb-45e8-87da-66ddcd6919d0", ... ] // Guid Array
}
If the request is successful a plain Json positive response will be returned to confirm that the vehicle groups have been updated.
Possible errors are:
err_InvalidElement
There is no vehicle corresponding to the
ID
provided in the request body
Get zones
Gets the zones containing the vehicle, from widest to smallest, or null if vehicle position is unknown:
- GET /v1/vehicles/{id}/zones
Zones containing the vehicle, from widest to smallest, or null if vehicle position is unknown
- Parameters
id (integer) – Vehicle ID
- Status Codes
200 OK – Success
If the vehicle is in a known zone, then a Json positive response will be returned with the list of zones:
[
{
"ID": 1, // Int
"CreatedDate": "2020-09-09T11:45:15Z", // DateTime
"LastUpdated": "2020-09-09T11:45:15Z", // DateTime
"Guid": "6d705861-31e0-4b5f-aef4-135517b5c715", // Guid
"Name": "London Heathrow Airport", // String
"MainEntranceAddress": "Canberra Rd", // String (nullable)
"MainEntranceCity": "Longford, Hounslow, UK", // String (nullable)
"MainEntranceLatitude": 51.471158, // Double (nullable)
"MainEntranceLongitude": -0.456838, // Double (nullable)
"CentroidLatitude": 51.471158, // Double (nullable)
"CentroidLongitude": -0.45683800000000474, // Double (nullable)
"Geometry": "ChIJ9fkoIy68SUAR...", // ByteArray (as String)
"MainEntranceOpeningHours": null, // String (nullable)
"MainEntranceTermsConditions": null, // String (nullable)
"IsPaidParking": true, // Boolean
"CanRefuelElectricVehicles": true, // Boolean
"CanRefuelICEVehicles": false, // Boolean
"IsFreefloatingArea": false, // Boolean
"IsRoundtripArea": false, // Boolean
"IsAvailable": true, // Boolean
"ParkingSpots": 0, // Int
"Type": 0, // Int
"Polygon":
{
"Points":
[
{
"Latitude": 51.470158000000005, // Double
"Longitude": -0.457838 // Double
},
...
]
},
"UtcOffsetMinutes": 60, // Int
"CommunityCount": 0 // Int
}
]
The field geometry
is a byte array.
If there is no vehicle corresponding to the provided ID, a plain Json negative response will be returned.
Possible errors are:
err_UnknownPosition
The specified vehicle is not currently in any known zone
Get vehicle damages
Gets a list of information of damage related to a vehicle (it’s a Paged List APIs, as explained in the introduction):
- GET /v1/vehicles/{id}/damage-reports
Returns a list of information of damage related to a vehicle
- Parameters
id (integer) –
- Status Codes
200 OK – Success
Returns the list of damages for the specified vehicle:
[
{
"ID": 1, // Int
"CreatedDate": "2020-09-10T08:33:30Z", // DateTime
"ReportingUser": "21b3da2c-159c-4d76-ad25-e4a8452513ab", // Guid
"ReportingUserName": "abel@gmail.com", // String
"Severity": 1, // Int
"Solved": null, // DateTime (nullable)
"IsBlocking": null, // Boolean (nullable)
"SolvingUser": null, // Guid (nullable)
"SolvingUserName": null, // String (nullable)
"Notes": "Internal mirror damage", // String (nullable)
"Attachments": // Guid Array
[
"f13abe76-91e1-4d18-be36-6edf68c840dc" // Guid
],
"VehicleID": 26, // Int
"LicensePlate": "null", // String (nullable)
"OperationID": null, // Int (nullable)
"OperatingBaseID": null, // int (nullable)
"OperatingBase": null, // String (nullable)
"LastOperationUpdate": null, // DateTime (nullable)
"OperationEnteredBy": null, // String (nullable)
"OperationSignedOffBy": null, // String (nullable)
"OperationPerformedBy": null, // String (nullable)
"OperationCompleted": false, // Boolean
"OperationSuccessful": false // Boolean
},
...
]
The value of the field Severity
can be one of the value defined in the DamageSeverity enumeration.
The property LicensePlate
and the data related to the specific maintenance operation (OperationID
through OperationSuccessful
)
here are always set as either null or false.
Gets vehicles out of zone
Gets the list of vehicles operating outside the assigned areas and without any ongoing trip (it’s a Paged List APIs, as explained in the introduction):
- GET /v1/vehicles/no-trip-out-zone
List of vehicles operating outside the assigned areas
- Status Codes
200 OK – Success
Returns a list of the vehicles currently oustide the assigned areas:
[
{
"ID": 26, // Int
"LicensePlate": "AA000AA", // String
"VIN": "01234567890", // String
"Sticker": null, // String
"LastSetOperativeBy": null, // String
"IsOperative": true, // Boolean
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"SystemOperativeReason": "", // String
"OverriddenSystemOperativeStatus": true, // Boolean
"ForcedOperativeBy": "Administrator.name", // String (nullable)
"Notes": null, // String
"CategoryLabels": "{\"en\":\"Jolly Smart\"}", // String
"CategoryID": 2, // Int
"CategoryTree": // Object (CategoryDescription)
{ //
"ID": 1, // Int
"Labels": "{\"en\":\"City Car\"}", // String
"Children": // Object Array (CategoryDescription)
[ //
{ //
"ID": 2, // Int
"Labels": "{\"en\":\"Jolly Smart\"}", // String
"Children": null // Object Array (CategoryDescription)
}, //
... //
] //
}, //
"Devices": // Object Array
[ //
{ //
"ID": 13, // Int
"SerialNumber": "EDOXVERZKOSYXUJ", // String
"LastDeviceSync": "2001-01-01T00:00:00Z" // DateTime (nullable)
}, //
... //
], //
"NominalGarage": "Udine Garage", // String
"NominalGarageID": 4, // Int (nullable)
"RecoveringGarage": null, // String
"RecoveringGarageID": null, // Int (nullable)
"Latitude": 46.0838284476514, // Double (nullable)
"Longitude": 13.217754364013674, // Double (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"Groups": [ "51c770b3-c4f6-4203-9067-e05666137cec",... ], // Guid Array
"CurrentTripGuid": null, // Guid (nullable)
"DeviceID": 13, // Int (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"EngineType": 0, // Int
"FuelTankCapacity": null, // Int (nullable)
"FuelLevelPct": null, // Double (nullable)
"EVBLevelPct": null, // Double (nullable)
"OdometerKm": null, // Double (nullable)
"LastOdometerReading": null, // DateTime (nullable)
"IsDamaged": true, // Boolean (nullable)
"Status": // Object (VehicleStatus)
{ //
"CurrentReservationEnd": null, // DateTime (nullable)
"CurrentReservationMaxStart": null, // DateTime (nullable)
"CurrentReservationMinStart": null, // DateTime (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastMaintenanceEnd": null, // DateTime (nullable)
"LastMaintenanceStart": null, // DateTime (nullable)
"LastMotion": null, // DateTime (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"LastTripEnd": "2020-09-10T08:34:33Z", // DateTime (nullable)
"LastTripStart": "2020-09-10T08:31:16Z", // DateTime (nullable)
"FuelLevelPct": null, // Double (nullable)
"ServiceBattery": null, // Double (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"IsLowFuel": true, // Boolean
"IsLowEVB": true, // Boolean
"IsLostContact": true, // Boolean
"IsPositionLost": true, // Boolean
"IsReserved": false, // Boolean
"IsOnTrip": false, // Boolean
"IsOnTripAndMoving": false, // Boolean
"IsWithoutTripsForLong": true, // Boolean
"IsInMaintenance": false, // Boolean
"IsInternetWeak": true // Boolean
}, //
"InternalCleaningStatus": null, // Int (enum VehicleCleaningStatus) (nullable)
"ExternalCleaningStatus": null, // Int (enum VehicleCleaningStatus) (nullable)
"IgnitionVoltageLevel": null // Int (nullable)
},
...
]
The field CategoryLabels
and Labels
in CategoryTree contain a stringified Json containing pairs “language code”:”localized value”
Value InternalCleaningStatus
and ExternalCleaningStatus
can be one of the VehicleCleaningStatus enumeration.
Values of EngineType
can be one of the VehicleEngineTypes enumeration.
Get vehicles far from zones
Gets a list of vehicles operating outside the assigned areas with a minimum distance of [ATT_REASON_DEFAULT_ZONE_DISTANCE] (it’s a Paged List APIs, as explained in the introduction):
- GET /v1/vehicles/far-all-zone
List of vehicles operating outside the assigned areas with a minimum distance of [ATT_REASON_DEFAULT_ZONE_DISTANCE]
- Status Codes
200 OK – Success
Returns a list of vehicles:
[
{
"ID": 26, // Int
"LicensePlate": "AA000AA", // String
"VIN": "01234567890", // String
"Sticker": null, // String (nullable)
"LastSetOperativeBy": null, // String (nullable)
"IsOperative": true, // Boolean
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"SystemOperativeReason": "", // String (nullable)
"OverriddenSystemOperativeStatus": true, // Boolean
"ForcedOperativeBy": "Administrator.name", // String (nullable)
"Notes": null, // String (nullable)
"CategoryLabels": "{\"en\":\"Jolly Smart\"}", // String
"CategoryID": 2, // Int
"CategoryTree":
{ //
"ID": 1, // Int
"Labels": "{\"en\":\"City Car\"}", // String
"Children": [...] // Category Array (nullable)
},
"Devices": // Device Array (nullable)
[
{
"ID": 13, // Int
"SerialNumber": "EDOXVERZKOSYXUJ", // String
"LastDeviceSync": "2001-01-01T00:00:00Z" // DateTime (nullable)
},
...
],
"NominalGarage": "Udine Garage", // String
"NominalGarageID": 4, // Int
"RecoveringGarage": null, // String (nullable)
"RecoveringGarageID": null, // Int (nullable)
"Latitude": 46.0838284476514, // Double (nullable)
"Longitude": 13.217754364013674, // Double (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"Groups": [ "51c770b3-c4f6-4203-9067-e05666137cec",... ], // Guid Array
"CurrentTripGuid": null, // Guid (nullable)
"DeviceID": 13, // Int (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"EngineType": 0, // Int
"FuelTankCapacity": null, // Int (nullable)
"FuelLevelPct": null, // Double (nullable)
"EVBLevelPct": null, // Double (nullable)
"OdometerKm": null, // Double (nullable)
"LastOdometerReading": null, // DateTime (nullable)
"IsDamaged": true, // Boolean (nullable)
"Status":
{
"CurrentReservationEnd": null, // DateTime (nullable)
"CurrentReservationMaxStart": null, // DateTime (nullable)
"CurrentReservationMinStart": null, // DateTime (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastMaintenanceEnd": null, // DateTime (nullable)
"LastMaintenanceStart": null, // DateTime (nullable)
"LastMotion": null, // DateTime (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"LastTripEnd": "2020-09-10T08:34:33Z", // DateTime (nullable)
"LastTripStart": "2020-09-10T08:31:16Z", // DateTime (nullable)
"FuelLevelPct": null, // Double (nullable)
"ServiceBattery": null, // Double (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"IsLowFuel": true, // Boolean
"IsLowEVB": true, // Boolean
"IsLostContact": true, // Boolean
"IsPositionLost": true, // Boolean
"IsReserved": false, // Boolean
"IsOnTrip": false, // Boolean
"IsOnTripAndMoving": false, // Boolean
"IsWithoutTripsForLong": true, // Boolean
"IsInMaintenance": false, // Boolean
"IsInternetWeak": true // Boolean
},
"InternalCleaningStatus": null, // Int (nullable)
"ExternalCleaningStatus": null, // Int (nullable)
"IgnitionVoltageLevel": null // Int (nullable)
},
...
]
The field CategoryLabels
and Labels
in CategoryTree contain a stringified Json containing pairs “language code”:”localized value”
Value of the InternalCleaningStatus
and ExternalCleaningStatus
can be one of the VehicleCleaningStatus enumeration.
Values of EngineType
can be one of the VehicleEngineTypes enumeration.
Get vehicles moving without trips
Gets a list of descriptions of vehicles that have moved without a regular trip (it’s a Paged List APIs, as explained in the introduction):
- GET /v1/vehicles/moving-without-trip
Returns a list of descriptions of vehicles that have moved without a regular trip
- Status Codes
200 OK – Success
Returs the list of vehicles:
[
{
"ID": 26, // Int
"LicensePlate": "AA000AA", // String
"VIN": "01234567890", // String
"Sticker": null, // String (nullable)
"LastSetOperativeBy": null, // String (nullable)
"IsOperative": true, // Boolean
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"SystemOperativeReason": "", // String (nullable)
"OverriddenSystemOperativeStatus": true, // Boolean
"ForcedOperativeBy": "Administrator.name", // String (nullable)
"Notes": null, // String (nullable)
"CategoryLabels": "{\"en\":\"Jolly Smart\"}", // String
"CategoryID": 2, // Int
"CategoryTree":
{ //
"ID": 1, // Int
"Labels": "{\"en\":\"City Car\"}", // String
"Children": [...] // Category Array (nullable)
},
"Devices": // Device Array (nullable)
[
{
"ID": 13, // Int
"SerialNumber": "EDOXVERZKOSYXUJ", // String
"LastDeviceSync": "2001-01-01T00:00:00Z" // DateTime (nullable)
},
...
],
"NominalGarage": "Udine Garage", // String
"NominalGarageID": 4, // Int
"RecoveringGarage": null, // String (nullable)
"RecoveringGarageID": null, // Int (nullable)
"Latitude": 46.0838284476514, // Double (nullable)
"Longitude": 13.217754364013674, // Double (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"Groups": [ "51c770b3-c4f6-4203-9067-e05666137cec",... ], // Guid Array
"CurrentTripGuid": null, // Guid (nullable)
"DeviceID": 13, // Int (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"EngineType": 0, // Int
"FuelTankCapacity": null, // Int (nullable)
"FuelLevelPct": null, // Double (nullable)
"EVBLevelPct": null, // Double (nullable)
"OdometerKm": null, // Double (nullable)
"LastOdometerReading": null, // DateTime (nullable)
"IsDamaged": true, // Boolean (nullable)
"Status":
{
"CurrentReservationEnd": null, // DateTime (nullable)
"CurrentReservationMaxStart": null, // DateTime (nullable)
"CurrentReservationMinStart": null, // DateTime (nullable)
"LastDeviceSync": null, // DateTime (nullable)
"LastMaintenanceEnd": null, // DateTime (nullable)
"LastMaintenanceStart": null, // DateTime (nullable)
"LastMotion": null, // DateTime (nullable)
"LastPositionUpdate": "2020-09-10T08:31:16Z", // DateTime (nullable)
"LastTripEnd": "2020-09-10T08:34:33Z", // DateTime (nullable)
"LastTripStart": "2020-09-10T08:31:16Z", // DateTime (nullable)
"FuelLevelPct": null, // Double (nullable)
"ServiceBattery": null, // Double (nullable)
"LastNetworkSignalStrengthPct": null, // Int (nullable)
"AdminOperativeStatus": true, // Boolean
"SystemOperativeStatus": true, // Boolean
"IsLowFuel": true, // Boolean
"IsLowEVB": true, // Boolean
"IsLostContact": true, // Boolean
"IsPositionLost": true, // Boolean
"IsReserved": false, // Boolean
"IsOnTrip": false, // Boolean
"IsOnTripAndMoving": false, // Boolean
"IsWithoutTripsForLong": true, // Boolean
"IsInMaintenance": false, // Boolean
"IsInternetWeak": true // Boolean
},
"InternalCleaningStatus": null, // Int (nullable)
"ExternalCleaningStatus": null, // Int (nullable)
"IgnitionVoltageLevel": null // Int (nullable)
},
...
]
The field CategoryLabels
and Labels
in CategoryTree contain a stringified Json containing pairs “language code”:”localized value”
Value of the InternalCleaningStatus
and ExternalCleaningStatus
fields can be one of the VehicleCleaningStatus enumeration.
Values of EngineType
can be one of the VehicleEngineTypes enumeration.
Get attention needed vehicles
Gets the list of vehicles that are either outside the allowed areas, or far outside the allowed areas or that have moved without any related travel:
- GET /v1/vehicles/attention-reason-news
Returns a list of vehicles that are either outside the allowed areas, or far outside the allowed areas ** or that have moved without any related travel**
- Status Codes
200 OK – Success
Returns a list of vehicles that currently fall within the attention news requirements:
[
{
key: "MV003BB", // String
category: "{\"en\":\"Sedan\",...}", // String
outOfZones: false, // Boolean
farFromZones: false, // Boolean
movingWithoutTrip: false // Boolean
}
]
The field category
contains a stringified Json containing pairs “language code”:”localized value”
Get Scheduled Operations for the Vehicle
Gets the list of vehicle schedules set for a specified vehicle (it’s a Paged List APIs, as explained in the introduction):
- GET /v1/vehicles/{id}/schedules
Vehicle Schedules related to a vehicle
- Parameters
id (integer) – Vehicle ID
- Status Codes
200 OK – Success
This API returns a positive JSON response with the vehicle schedules data:
[
{
ID: "43", // Int
CreatedDate: "2001-01-01T01:01:01Z", // DateTime
LastUpdated: "2001-01-01T01:01:01Z", // DateTime
Type: "0", // Int
StartTimestamp: "2001-01-01T01:01:01Z", // DateTime
EndTimestamp: "2001-01-01T01:01:01Z", // DateTime (nullable)
IsVehicleAvailable: true, // Boolean
IsMaintenanceAlreadyBegin: true, // Boolean
MinPerformanceBegin: "2001-01-01T01:01:01Z", // DateTime (nullable)
MaxPerformanceEnd: "2001-01-01T01:01:01Z", // DateTime (nullable)
VehicleID: "1", // Int
LicensePlate: "AK 365 NF", // String
Sticker: "VHCL01", // String (nullable)
VIN: "1GCUGDA43SAL7LJVPE", // String
VehicleCategory: "{"en":"English category name",...}" // String
},
...
]
or an error in case of problems.
The field Type
can be one of the value defined in the MovementSchedulableType enumeration.
The field IsVehicleAvailable
is a boolean set to true if the vehicle can be reserved during the scheduled period.
The field IsMaintenanceAlreadyBegin
is a boolean set to true if the scheduled operation already has some maintenance operation whose
begin time is already passed.
The fields MinPerformanceBegin
and MaxPerformanceEnd
are set only if the schedules operation already has some maintenance operations:
in that case, MinPerformanceBegin
is set as the min expected start time among all the maintenance operations, and MaxPerformanceEnd
as the max expected end time among all the maintenance operations.
The field VehicleCategory
is a stringified Json containing pairs “language code”:”localized value”
Get Maintenance Operations for the Vehicle
Gets the list of maintenance operations set for a specified vehicle (it’s a Paged List APIs, as explained in the introduction):
- GET /v1/vehicles/{id}/maintenance-operations
Maintenance operations related to a vehicle
- Parameters
id (integer) – Vehicle ID
- Status Codes
200 OK – Success
This API returns a positive JSON response with the maintenance operations data:
[
{
ID: 2, // Int
ScheduleID: 43, // Int
CreatedDate: "2001-01-01T01:01:01Z", // DateTime
LastUpdated: "2001-01-01T01:01:01Z", // DateTime
Description: "Operation description", // String
Summary: "Operation short summary", // String (nullable)
EnteredBy: "Username", // String
SignedOffBy: "Username", // String (nullable)
PerformedBy: "Username", // String (nullable)
PerformanceBegin: "2001-01-01T01:01:01Z", // DateTime (nullable)
PerformanceEnd: "2001-01-01T01:01:01Z", // DateTime (nullable)
IsCompleted: true, // Boolean
IsSuccessful: true, // Boolean
GarageID: 5, // Int
GarageName: "Name of operating base garage", // String
VehicleID: "1", // Int
LicensePlate: "AK 365 NF", // String
Sticker: "VHCL01", // String (nullable)
VIN: "1GCUGDA43SAL7LJVPE", // String
VehicleCategory: "{"en":"English category name",...}", // String
ScheduleBegin: null, // DateTime (nullable)
ScheduleEnd: null // DateTime (nullable)
},
...
]
or an error in case of problems.
The fields PerformanceBegin
and PerformanceEnd
are the expected start and end time of the maintenance operation.
The field VehicleCategory
is a stringified Json containing pairs “language code”:”localized value”
The field IsCompleted
specifies if the maintenance operation has ended, and the field IsSuccessful
specifies if the operation was successful.
Get vehicle metrics list
Retrieves the list of existing vehicle metrics:
- GET /v1/vehicles/vehicle-metrics
Returns the list of existing vehicle metrics
- Status Codes
200 OK – Success
The API will return an array with the existing vehicle metric data:
[
{
Name: "ODOMETER_KM", // String
Guid: "d54ae016-3606-4f98-a9b2-1df1e4434b40" // Guid
},
{ ... }
]