FC HUB API
HUB GraphQL API documentation
Login token url: POST https://api.fleetcomplete.com/login/token
Payload: username, password
Your token is value of 'access_token' in response
Get user id: GET https://api.fleetcomplete.com/login/userinfo
(Bearer access_token is mandatory)
Response may contain multiple userIds, the user must choose the correct userId.
API Endpoints
# HUB GraphQL API endpoint:
https://api.fleetcomplete.com/graphql
# HUB GraphiQL endpoint:
https://api.fleetcomplete.com/graphiql?path=/graphql
# HUB API get token endpoint:
POST https://api.fleetcomplete.com/login/token
# Get HUB API userId value:
https://api.fleetcomplete.com/login/userinfo
Headers
# Mandatory
Authorization: Bearer <YOUR_TOKEN_HERE>
# Either userId or fleetId is mandatory
userId: <UUID>
fleetId: <UUID>
Queries
getGroups
Response
Returns [Group]
Example
Query
query GetGroups {
getGroups {
id
version
createdAt
updatedAt
name
fleetId
parentId
externalId
description
isOwn
vehicleIds
assignedVehicles {
id
version
createdAt
updatedAt
isDeleted
name
fleetId
vin
licensePlate
make
model
year
lastData {
...CommonFormatFragment
}
assignedGroups {
...GroupFragment
}
}
}
}
Response
{
"data": {
"getGroups": [
{
"id": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"version": {},
"createdAt": {},
"updatedAt": {},
"name": "xyz789",
"fleetId": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"parentId": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"externalId": "xyz789",
"description": "xyz789",
"isOwn": false,
"vehicleIds": [
"2e97a471-d0a5-4710-8d30-7a8dc19ca654"
],
"assignedVehicles": [Vehicle]
}
]
}
}
getLatestSnapshots
Response
Returns [CommonFormat]
Arguments
Name | Description |
---|---|
vehicleIds - [UUID!]!
|
Example
Query
query GetLatestSnapshots($vehicleIds: [UUID!]!) {
getLatestSnapshots(vehicleIds: $vehicleIds) {
vehicleId
vehicle {
id
version
createdAt
updatedAt
isDeleted
name
fleetId
vin
licensePlate
make
model
year
lastData {
...CommonFormatFragment
}
assignedGroups {
...GroupFragment
}
}
timestamp
gps {
direction
state
latitude
longitude
speed
satellites
altitude
hdop
}
ignition {
engineStatus
}
driver {
driverId
iButton
oneWire
rfidIButton
rfidIButtonHex
rfidIButtonReversed
rfidIButtonReversedHex
rfid
rfidHex
}
canBus {
absStatus
acceleratorPedalPosition
accelerationX
accelerationY
ambientAirTemperature
barometricPressure
brakeApplicationPressure
brakePedalPosition
brakePedalState
brakeTorque
canCombinationWeight
combinationWeight
canrpm
canDistance
canDeltaDistance
canTripDistance
canFuelUsed
canTripFuelUsed
canTripFuelUsedPercent
canServiceDistance
canFuelRate
canhrFuelUsed
canSpeed
canFuel
canRawFuel
canAxleNumber
canAxleWeight
canAxleWeights {
...CanAxleWeightsMapFragment
}
canEngineCoolantTemperature
canEngineHours
canFuelEconomy
canWheelSpeed
cargoWeight
checkEngineWarning
clutchPedalState
cruiseControlState
deltaFuelUsed
engineCoolantLevel
engineCoolantPressure
engineFuelType
engineOilLevel
engineOilPressure
engineOilTemperature
enginePercentLoad
engineRunTime
engineThrottlePosition
engineIdleTime
engineWorkTime
fuelDeliveryPressure
gear
intakeAirTemperature
massAirFlow
oilLifeRemaining
overweight
parkingBrakeSwitch
seatBeltDriver
seatBeltPassenger
seatOccupiedDriver
seatOccupiedPassenger
serviceNowWarning
tirePressureWarning
tirePressure {
...TirePressureMapFragment
}
tirePressureStatus {
...TirePressureStatusMapFragment
}
tirePressurePlacardFront
tirePressurePlacardRear
tireLocation
tractionControl
tractionControlBrake
tractionControlPowerTrain
transmissionOilTemperature
washerFluidLevel
waterInFuel
canFuelConsumption
frontLeftDoorOpen
frontRightDoorStatus
hoodOpen
rearLeftDoorOpen
rearRightDoorOpen
trunkOpen
canProgramNumber
cruiseControlActive
retarderTorqueMode
actualRetarderLevel
nonEngineRetarderSelectionLevel
}
driverBehaviour {
driverBehaviourType
driverBehaviourValue
}
temperatures {
temperatures {
...TemperatureMapFragment
}
temperatureSensorIds {
...TemperatureSensorMapFragment
}
}
}
}
Variables
{
"vehicleIds": [
"2e97a471-d0a5-4710-8d30-7a8dc19ca654"
]
}
Response
{
"data": {
"getLatestSnapshots": [
{
"vehicleId": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"vehicle": Vehicle,
"timestamp": "abc123",
"gps": Gps,
"ignition": Ignition,
"driver": Driver,
"canBus": CanBus,
"driverBehaviour": DriverBehaviour,
"temperatures": Temperatures
}
]
}
}
getSnapshots
Response
Returns [CommonFormat]
Example
Query
query GetSnapshots(
$vehicleId: UUID!,
$from: DateTime!,
$to: DateTime!
) {
getSnapshots(
vehicleId: $vehicleId,
from: $from,
to: $to
) {
vehicleId
vehicle {
id
version
createdAt
updatedAt
isDeleted
name
fleetId
vin
licensePlate
make
model
year
lastData {
...CommonFormatFragment
}
assignedGroups {
...GroupFragment
}
}
timestamp
gps {
direction
state
latitude
longitude
speed
satellites
altitude
hdop
}
ignition {
engineStatus
}
driver {
driverId
iButton
oneWire
rfidIButton
rfidIButtonHex
rfidIButtonReversed
rfidIButtonReversedHex
rfid
rfidHex
}
canBus {
absStatus
acceleratorPedalPosition
accelerationX
accelerationY
ambientAirTemperature
barometricPressure
brakeApplicationPressure
brakePedalPosition
brakePedalState
brakeTorque
canCombinationWeight
combinationWeight
canrpm
canDistance
canDeltaDistance
canTripDistance
canFuelUsed
canTripFuelUsed
canTripFuelUsedPercent
canServiceDistance
canFuelRate
canhrFuelUsed
canSpeed
canFuel
canRawFuel
canAxleNumber
canAxleWeight
canAxleWeights {
...CanAxleWeightsMapFragment
}
canEngineCoolantTemperature
canEngineHours
canFuelEconomy
canWheelSpeed
cargoWeight
checkEngineWarning
clutchPedalState
cruiseControlState
deltaFuelUsed
engineCoolantLevel
engineCoolantPressure
engineFuelType
engineOilLevel
engineOilPressure
engineOilTemperature
enginePercentLoad
engineRunTime
engineThrottlePosition
engineIdleTime
engineWorkTime
fuelDeliveryPressure
gear
intakeAirTemperature
massAirFlow
oilLifeRemaining
overweight
parkingBrakeSwitch
seatBeltDriver
seatBeltPassenger
seatOccupiedDriver
seatOccupiedPassenger
serviceNowWarning
tirePressureWarning
tirePressure {
...TirePressureMapFragment
}
tirePressureStatus {
...TirePressureStatusMapFragment
}
tirePressurePlacardFront
tirePressurePlacardRear
tireLocation
tractionControl
tractionControlBrake
tractionControlPowerTrain
transmissionOilTemperature
washerFluidLevel
waterInFuel
canFuelConsumption
frontLeftDoorOpen
frontRightDoorStatus
hoodOpen
rearLeftDoorOpen
rearRightDoorOpen
trunkOpen
canProgramNumber
cruiseControlActive
retarderTorqueMode
actualRetarderLevel
nonEngineRetarderSelectionLevel
}
driverBehaviour {
driverBehaviourType
driverBehaviourValue
}
temperatures {
temperatures {
...TemperatureMapFragment
}
temperatureSensorIds {
...TemperatureSensorMapFragment
}
}
}
}
Variables
{
"vehicleId": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"from": "2007-12-03T10:15:30Z",
"to": "2007-12-03T10:15:30Z"
}
Response
{
"data": {
"getSnapshots": [
{
"vehicleId": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"vehicle": Vehicle,
"timestamp": "abc123",
"gps": Gps,
"ignition": Ignition,
"driver": Driver,
"canBus": CanBus,
"driverBehaviour": DriverBehaviour,
"temperatures": Temperatures
}
]
}
}
getVehicleById
Example
Query
query GetVehicleById($id: UUID!) {
getVehicleById(id: $id) {
id
version
createdAt
updatedAt
isDeleted
name
fleetId
vin
licensePlate
make
model
year
lastData {
vehicleId
vehicle {
...VehicleFragment
}
timestamp
gps {
...GpsFragment
}
ignition {
...IgnitionFragment
}
driver {
...DriverFragment
}
canBus {
...CanBusFragment
}
driverBehaviour {
...DriverBehaviourFragment
}
temperatures {
...TemperaturesFragment
}
}
assignedGroups {
id
version
createdAt
updatedAt
name
fleetId
parentId
externalId
description
isOwn
vehicleIds
assignedVehicles {
...VehicleFragment
}
}
}
}
Variables
{
"id": "2e97a471-d0a5-4710-8d30-7a8dc19ca654"
}
Response
{
"data": {
"getVehicleById": {
"id": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"version": {},
"createdAt": {},
"updatedAt": {},
"isDeleted": false,
"name": "abc123",
"fleetId": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"vin": "abc123",
"licensePlate": "xyz789",
"make": "xyz789",
"model": "xyz789",
"year": 987,
"lastData": CommonFormat,
"assignedGroups": [Group]
}
}
}
getVehicles
Response
Returns [Vehicle]
Example
Query
query GetVehicles {
getVehicles {
id
version
createdAt
updatedAt
isDeleted
name
fleetId
vin
licensePlate
make
model
year
lastData {
vehicleId
vehicle {
...VehicleFragment
}
timestamp
gps {
...GpsFragment
}
ignition {
...IgnitionFragment
}
driver {
...DriverFragment
}
canBus {
...CanBusFragment
}
driverBehaviour {
...DriverBehaviourFragment
}
temperatures {
...TemperaturesFragment
}
}
assignedGroups {
id
version
createdAt
updatedAt
name
fleetId
parentId
externalId
description
isOwn
vehicleIds
assignedVehicles {
...VehicleFragment
}
}
}
}
Response
{
"data": {
"getVehicles": [
{
"id": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"version": {},
"createdAt": {},
"updatedAt": {},
"isDeleted": false,
"name": "abc123",
"fleetId": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"vin": "xyz789",
"licensePlate": "xyz789",
"make": "xyz789",
"model": "abc123",
"year": 987,
"lastData": CommonFormat,
"assignedGroups": [Group]
}
]
}
}
getWrappedReport
Response
Returns a WrappedReport
Arguments
Name | Description |
---|---|
input - WrappedReportInput!
|
Example
Query
query GetWrappedReport($input: WrappedReportInput!) {
getWrappedReport(input: $input) {
reportId
report
}
}
Variables
{"input": WrappedReportInput}
Response
{
"data": {
"getWrappedReport": {
"reportId": "xyz789",
"report": {}
}
}
}
Mutations
changeVehiclesGroup
Response
Returns [String]
Example
Query
mutation ChangeVehiclesGroup(
$vehicleIds: [UUID!]!,
$sourceGroupId: UUID!,
$destinationGroupId: UUID!
) {
changeVehiclesGroup(
vehicleIds: $vehicleIds,
sourceGroupId: $sourceGroupId,
destinationGroupId: $destinationGroupId
)
}
Variables
{
"vehicleIds": [
"2e97a471-d0a5-4710-8d30-7a8dc19ca654"
],
"sourceGroupId": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"destinationGroupId": "2e97a471-d0a5-4710-8d30-7a8dc19ca654"
}
Response
{
"data": {
"changeVehiclesGroup": ["xyz789"]
}
}
Types
Boolean
Description
The Boolean
scalar type represents true
or false
.
Example
true
CanAxleWeightsMap
CanBus
Fields
Field Name | Description |
---|---|
absStatus - Boolean
|
|
acceleratorPedalPosition - Float
|
|
accelerationX - Float
|
|
accelerationY - Float
|
|
ambientAirTemperature - Float
|
|
barometricPressure - Float
|
|
brakeApplicationPressure - Float
|
|
brakePedalPosition - Float
|
|
brakePedalState - Boolean
|
|
brakeTorque - Float
|
|
canCombinationWeight - Float
|
|
combinationWeight - Float
|
|
canrpm - Float
|
|
canDistance - Float
|
|
canDeltaDistance - Float
|
|
canTripDistance - Float
|
|
canFuelUsed - Float
|
|
canTripFuelUsed - Float
|
|
canTripFuelUsedPercent - Float
|
|
canServiceDistance - Float
|
|
canFuelRate - Float
|
|
canhrFuelUsed - Float
|
|
canSpeed - Float
|
|
canFuel - Float
|
|
canRawFuel - Float
|
|
canAxleNumber - Float
|
|
canAxleWeight - Float
|
|
canAxleWeights - [CanAxleWeightsMap]
|
|
canEngineCoolantTemperature - Float
|
|
canEngineHours - Float
|
|
canFuelEconomy - Float
|
|
canWheelSpeed - Float
|
|
cargoWeight - Float
|
|
checkEngineWarning - Boolean
|
|
clutchPedalState - Boolean
|
|
cruiseControlState - Long
|
|
deltaFuelUsed - Float
|
|
engineCoolantLevel - Float
|
|
engineCoolantPressure - Float
|
|
engineFuelType - Long
|
|
engineOilLevel - Float
|
|
engineOilPressure - Float
|
|
engineOilTemperature - Float
|
|
enginePercentLoad - Float
|
|
engineRunTime - Float
|
|
engineThrottlePosition - Float
|
|
engineIdleTime - Float
|
|
engineWorkTime - Float
|
|
fuelDeliveryPressure - Float
|
|
gear - String
|
|
intakeAirTemperature - Float
|
|
massAirFlow - Float
|
|
oilLifeRemaining - Float
|
|
overweight - Boolean
|
|
parkingBrakeSwitch - Boolean
|
|
seatBeltDriver - Boolean
|
|
seatBeltPassenger - Boolean
|
|
seatOccupiedDriver - Boolean
|
|
seatOccupiedPassenger - Boolean
|
|
serviceNowWarning - Boolean
|
|
tirePressureWarning - Boolean
|
|
tirePressure - [TirePressureMap]
|
|
tirePressureStatus - [TirePressureStatusMap]
|
|
tirePressurePlacardFront - Float
|
|
tirePressurePlacardRear - Float
|
|
tireLocation - String
|
|
tractionControl - Boolean
|
|
tractionControlBrake - Boolean
|
|
tractionControlPowerTrain - Boolean
|
|
transmissionOilTemperature - Float
|
|
washerFluidLevel - Float
|
|
waterInFuel - Boolean
|
|
canFuelConsumption - Float
|
|
frontLeftDoorOpen - Boolean
|
|
frontRightDoorStatus - Boolean
|
|
hoodOpen - Boolean
|
|
rearLeftDoorOpen - Boolean
|
|
rearRightDoorOpen - Boolean
|
|
trunkOpen - Boolean
|
|
canProgramNumber - Long
|
|
cruiseControlActive - Boolean
|
|
retarderTorqueMode - Int
|
|
actualRetarderLevel - Float
|
|
nonEngineRetarderSelectionLevel - Float
|
Example
{
"absStatus": true,
"acceleratorPedalPosition": 123.45,
"accelerationX": 123.45,
"accelerationY": 987.65,
"ambientAirTemperature": 987.65,
"barometricPressure": 987.65,
"brakeApplicationPressure": 987.65,
"brakePedalPosition": 987.65,
"brakePedalState": true,
"brakeTorque": 123.45,
"canCombinationWeight": 123.45,
"combinationWeight": 123.45,
"canrpm": 987.65,
"canDistance": 987.65,
"canDeltaDistance": 987.65,
"canTripDistance": 123.45,
"canFuelUsed": 123.45,
"canTripFuelUsed": 987.65,
"canTripFuelUsedPercent": 987.65,
"canServiceDistance": 987.65,
"canFuelRate": 123.45,
"canhrFuelUsed": 987.65,
"canSpeed": 987.65,
"canFuel": 987.65,
"canRawFuel": 987.65,
"canAxleNumber": 987.65,
"canAxleWeight": 987.65,
"canAxleWeights": [CanAxleWeightsMap],
"canEngineCoolantTemperature": 987.65,
"canEngineHours": 123.45,
"canFuelEconomy": 987.65,
"canWheelSpeed": 987.65,
"cargoWeight": 987.65,
"checkEngineWarning": false,
"clutchPedalState": false,
"cruiseControlState": {},
"deltaFuelUsed": 123.45,
"engineCoolantLevel": 987.65,
"engineCoolantPressure": 123.45,
"engineFuelType": {},
"engineOilLevel": 987.65,
"engineOilPressure": 987.65,
"engineOilTemperature": 123.45,
"enginePercentLoad": 123.45,
"engineRunTime": 987.65,
"engineThrottlePosition": 123.45,
"engineIdleTime": 987.65,
"engineWorkTime": 123.45,
"fuelDeliveryPressure": 123.45,
"gear": "xyz789",
"intakeAirTemperature": 123.45,
"massAirFlow": 123.45,
"oilLifeRemaining": 987.65,
"overweight": false,
"parkingBrakeSwitch": false,
"seatBeltDriver": true,
"seatBeltPassenger": false,
"seatOccupiedDriver": true,
"seatOccupiedPassenger": false,
"serviceNowWarning": false,
"tirePressureWarning": true,
"tirePressure": [TirePressureMap],
"tirePressureStatus": [TirePressureStatusMap],
"tirePressurePlacardFront": 123.45,
"tirePressurePlacardRear": 987.65,
"tireLocation": "abc123",
"tractionControl": false,
"tractionControlBrake": true,
"tractionControlPowerTrain": false,
"transmissionOilTemperature": 987.65,
"washerFluidLevel": 987.65,
"waterInFuel": false,
"canFuelConsumption": 987.65,
"frontLeftDoorOpen": false,
"frontRightDoorStatus": false,
"hoodOpen": true,
"rearLeftDoorOpen": true,
"rearRightDoorOpen": false,
"trunkOpen": false,
"canProgramNumber": {},
"cruiseControlActive": false,
"retarderTorqueMode": 987,
"actualRetarderLevel": 123.45,
"nonEngineRetarderSelectionLevel": 123.45
}
CommonFormat
Fields
Field Name | Description |
---|---|
vehicleId - UUID
|
|
vehicle - Vehicle
|
|
timestamp - String
|
|
gps - Gps
|
|
ignition - Ignition
|
|
driver - Driver
|
|
canBus - CanBus
|
|
driverBehaviour - DriverBehaviour
|
|
temperatures - Temperatures
|
Example
{
"vehicleId": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"vehicle": Vehicle,
"timestamp": "xyz789",
"gps": Gps,
"ignition": Ignition,
"driver": Driver,
"canBus": CanBus,
"driverBehaviour": DriverBehaviour,
"temperatures": Temperatures
}
DateTime
Example
"2007-12-03T10:15:30Z"
Driver
Example
{
"driverId": "xyz789",
"iButton": "abc123",
"oneWire": "abc123",
"rfidIButton": {},
"rfidIButtonHex": "abc123",
"rfidIButtonReversed": {},
"rfidIButtonReversedHex": "xyz789",
"rfid": {},
"rfidHex": "xyz789"
}
DriverBehaviour
Fields
Field Name | Description |
---|---|
driverBehaviourType - DriverBehaviourType
|
|
driverBehaviourValue - Float
|
Example
{
"driverBehaviourType": "DRIVER_BEHAVIOUR_TYPE_UNKNOWN",
"driverBehaviourValue": 987.65
}
DriverBehaviourType
Values
Enum Value | Description |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Example
"DRIVER_BEHAVIOUR_TYPE_UNKNOWN"
Float
Description
The Float
scalar type represents signed double-precision fractional values as specified by IEEE 754.
Example
123.45
Gps
Example
{
"direction": 123.45,
"state": false,
"latitude": 987.65,
"longitude": 123.45,
"speed": 987.65,
"satellites": {},
"altitude": 987.65,
"hdop": 123.45
}
Group
Example
{
"id": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"version": {},
"createdAt": {},
"updatedAt": {},
"name": "abc123",
"fleetId": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"parentId": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"externalId": "abc123",
"description": "xyz789",
"isOwn": true,
"vehicleIds": [
"2e97a471-d0a5-4710-8d30-7a8dc19ca654"
],
"assignedVehicles": [Vehicle]
}
Ignition
Fields
Field Name | Description |
---|---|
engineStatus - Boolean
|
Example
{"engineStatus": false}
Int
Description
The Int
scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
Example
123
JSON
Example
{}
Long
Example
{}
PlatformEntity
String
Description
The String
scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
Example
"abc123"
TemperatureMap
TemperatureSensorMap
Temperatures
Fields
Field Name | Description |
---|---|
temperatures - [TemperatureMap]
|
|
temperatureSensorIds - [TemperatureSensorMap]
|
Example
{
"temperatures": [TemperatureMap],
"temperatureSensorIds": [TemperatureSensorMap]
}
TirePressureMap
TirePressureStatusMap
UUID
Example
"2e97a471-d0a5-4710-8d30-7a8dc19ca654"
Vehicle
Example
{
"id": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"version": {},
"createdAt": {},
"updatedAt": {},
"isDeleted": false,
"name": "xyz789",
"fleetId": "2e97a471-d0a5-4710-8d30-7a8dc19ca654",
"vin": "abc123",
"licensePlate": "abc123",
"make": "xyz789",
"model": "xyz789",
"year": 123,
"lastData": CommonFormat,
"assignedGroups": [Group]
}