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.

Getting started

getToken

request:
curl --location --request POST 'https://api.fleetcomplete.com/login/token' \
--form 'username="your username"' \
--form 'password="your password"'
response:
{"scope":"openid email profile","access_token":"eyJhbGciOiJSUzI1NiIsInR5cCI.......

access_token value should be used as 'Authorization' header in all the following requests

getUserId

request:
curl --location --request GET 'https://api.fleetcomplete.com/login/userinfo' \
--header 'Authorization: Bearer access_token from getToken response'
response:
[{"userName":"your username","userId":"your user id","fleetName":"your fleet name"}....

userId value should be used as 'userId' header in all the following requests

following requests

request:
curl --location --request POST 'https://api.fleetcomplete.com/graphql' \
--header 'Authorization: Bearer access_token from getToken response' \
--header 'userId: userId from getUserId response' \
--header 'Content-Type: application/json' \
--data-raw 'graphQL query and variables'

Query example for getVehicles()

curl data-raw value example
{
"query":"{
  getVehicles {
    vin id name
    assignedGroups { id description name fleetId externalId }
    assignedDevices { id serial phoneNumber }
  }
}"
}

Query example for getVehiclesById()

curl data-raw value example with parameterized method
{
"query":"{
  getVehicleById(id: \"76fda158-d3d4-4d06-ad28-72999de521f1\") {
    vin id name
    assignedGroups { id description name fleetId externalId }
    assignedDevices { id serial phoneNumber }
  }
}"
}

Headers tab in GraphQL IDE

Header:
{
"userId":"USER_UUID_GOES_HERE",
"Authorization":"Bearer USER_TOKEN_GOES_HERE"
}

Rate limiting

GraphQL API allows only one active request per user. Sending multiple simultaneous requests will result in an HTTP 429 Too Many Requests status code, indicating that the user has exceeded the permitted request limit. Please wait for the ongoing request to finish before attempting additional requests.

Contact

API Support

apisupport@fleetcomplete.com

API Endpoints
# HUB GraphQL API endpoint:
https://api.fleetcomplete.com/graphql
# GraphQL IDE endpoint for fiddling with graphql queries:
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

getDeviceById

Description

Get single Device record by ID

Response

Returns a Device

Arguments
Name Description
id - UUID!

Example

Query
query GetDeviceById($id: UUID!) {
getDeviceById(id: $id) {
  id
  serial
  deviceTypeKey
  enabled
  phoneNumber
}
}
Variables
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda"
}
Response
{
"data": {
  "getDeviceById": {
    "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "serial": "xyz789",
    "deviceTypeKey": "xyz789",
    "enabled": false,
    "phoneNumber": "abc123"
  }
}
}

getDeviceBySerial

Use getDevicesBySerial instead
Description

Get single Device record by Serial

Response

Returns a Device

Arguments
Name Description
serial - String!

Example

Query
query GetDeviceBySerial($serial: String!) {
getDeviceBySerial(serial: $serial) {
  id
  serial
  deviceTypeKey
  enabled
  phoneNumber
}
}
Variables
{"serial": "abc123"}
Response
{
"data": {
  "getDeviceBySerial": {
    "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "serial": "xyz789",
    "deviceTypeKey": "abc123",
    "enabled": true,
    "phoneNumber": "xyz789"
  }
}
}

getDevicesBySerial

Description

Get multiple Device records by Serial

Response

Returns [Device]

Arguments
Name Description
serial - String!

Example

Query
query GetDevicesBySerial($serial: String!) {
getDevicesBySerial(serial: $serial) {
  id
  serial
  deviceTypeKey
  enabled
  phoneNumber
}
}
Variables
{"serial": "xyz789"}
Response
{
"data": {
  "getDevicesBySerial": [
    {
      "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "serial": "xyz789",
      "deviceTypeKey": "abc123",
      "enabled": true,
      "phoneNumber": "abc123"
    }
  ]
}
}

getGeofenceById

Description

Get single Geofence record by ID

Response

Returns a Geofence

Arguments
Name Description
id - UUID!

Example

Query
query GetGeofenceById($id: UUID!) {
getGeofenceById(id: $id) {
  id
  version
  createdAt
  updatedAt
  isDeleted
  name
  fleetId
  geojson
  color
  phone
  email
  address {
    country
    countryCode
    region
    city
    postalCode
    address
  }
  description
}
}
Variables
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda"
}
Response
{
"data": {
  "getGeofenceById": {
    "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "version": {},
    "createdAt": {},
    "updatedAt": {},
    "isDeleted": false,
    "name": "abc123",
    "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "geojson": {},
    "color": "abc123",
    "phone": "abc123",
    "email": "xyz789",
    "address": Address,
    "description": "abc123"
  }
}
}

getGeofences

Description

Get all Geofence records, visible to current user

Response

Returns [Geofence]

Example

Query
query GetGeofences {
getGeofences {
  id
  version
  createdAt
  updatedAt
  isDeleted
  name
  fleetId
  geojson
  color
  phone
  email
  address {
    country
    countryCode
    region
    city
    postalCode
    address
  }
  description
}
}
Response
{
"data": {
  "getGeofences": [
    {
      "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "version": {},
      "createdAt": {},
      "updatedAt": {},
      "isDeleted": false,
      "name": "xyz789",
      "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "geojson": {},
      "color": "xyz789",
      "phone": "xyz789",
      "email": "abc123",
      "address": Address,
      "description": "xyz789"
    }
  ]
}
}

getGroups

Description

Get all Group records, visible to current user

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
    latestData {
      ...LatestDataFragment
    }
    lastData {
      ...CommonFormatFragment
    }
    assignedGroups {
      ...GroupFragment
    }
    assignedDevices {
      ...DeviceFragment
    }
    assignedLabels {
      ...LabelFragment
    }
    lastOdometer
    lastWorkingHours
    deactivated
    vehicleType {
      ...VehicleTypeFragment
    }
    customFields {
      ...CustomFieldFragment
    }
    workSchedule {
      ...WorkScheduleFragment
    }
  }
}
}
Response
{
"data": {
  "getGroups": [
    {
      "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "version": {},
      "createdAt": {},
      "updatedAt": {},
      "name": "abc123",
      "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "parentId": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "externalId": "abc123",
      "description": "abc123",
      "isOwn": true,
      "vehicleIds": [
        "e7953481-1c18-4b61-bcab-93ccb865abda"
      ],
      "assignedVehicles": [Vehicle]
    }
  ]
}
}

getLabels

Description

Get all Label records

Response

Returns [Label]

Example

Query
query GetLabels {
getLabels {
  id
  version
  createdAt
  updatedAt
  isDeleted
  name
  fleetId
}
}
Response
{
"data": {
  "getLabels": [
    {
      "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "version": {},
      "createdAt": {},
      "updatedAt": {},
      "isDeleted": true,
      "name": "abc123",
      "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda"
    }
  ]
}
}

getLatestSnapshots

Description

Get latest snapshots for a list of vehicles

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
    latestData {
      ...LatestDataFragment
    }
    lastData {
      ...CommonFormatFragment
    }
    assignedGroups {
      ...GroupFragment
    }
    assignedDevices {
      ...DeviceFragment
    }
    assignedLabels {
      ...LabelFragment
    }
    lastOdometer
    lastWorkingHours
    deactivated
    vehicleType {
      ...VehicleTypeFragment
    }
    customFields {
      ...CustomFieldFragment
    }
    workSchedule {
      ...WorkScheduleFragment
    }
  }
  timestamp
  gps {
    state
    latitude
    longitude
    direction
    altitude
    speed
    satellites
    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
    }
  }
  fleetMetaSensors {
    sensors {
      ...SensorMapFragment
    }
  }
  fuel {
    fuel
    rawFuel {
      ...RawFuelMapFragment
    }
    pulseCount
    fuelLevel {
      ...FuelLevelMapFragment
    }
    totalFuelEconomy
    fuelTankSize
  }
  misc {
    power
  }
  locationTimestamp
  locationTimeZone
}
}
Variables
{
"vehicleIds": [
  "e7953481-1c18-4b61-bcab-93ccb865abda"
]
}
Response
{
"data": {
  "getLatestSnapshots": [
    {
      "vehicleId": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "vehicle": Vehicle,
      "timestamp": "2007-12-03T10:15:30Z",
      "gps": Gps,
      "ignition": Ignition,
      "driver": Driver,
      "canBus": CanBus,
      "driverBehaviour": DriverBehaviour,
      "temperatures": Temperatures,
      "fleetMetaSensors": FleetMetaSensors,
      "fuel": Fuel,
      "misc": Misc,
      "locationTimestamp": "2007-12-03T10:15:30Z",
      "locationTimeZone": "abc123"
    }
  ]
}
}

getMetaSensors

Description

Get all MetaSensor records, visible to current user

Response

Returns [MetaSensor]

Example

Query
query GetMetaSensors {
getMetaSensors {
  name
  key
}
}
Response
{
"data": {
  "getMetaSensors": [
    {"name": "xyz789", "key": 987}
  ]
}
}

getPeople

Description

Get all Person records, visible to current user

Response

Returns [Person]

Example

Query
query GetPeople {
getPeople {
  id
  version
  createdAt
  updatedAt
  isDeleted
  isUser
  isDriver
  fleetId
  email
  firstName
  lastName
  globalUserId
  licenseNumber
  licenseIssuedIn
  employeeId
  customFields {
    name
    value
  }
}
}
Response
{
"data": {
  "getPeople": [
    {
      "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "version": {},
      "createdAt": {},
      "updatedAt": {},
      "isDeleted": true,
      "isUser": false,
      "isDriver": true,
      "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "email": "abc123",
      "firstName": "xyz789",
      "lastName": "abc123",
      "globalUserId": "abc123",
      "licenseNumber": "xyz789",
      "licenseIssuedIn": "xyz789",
      "employeeId": "xyz789",
      "customFields": [CustomField]
    }
  ]
}
}

getPersonById

Description

Get single Person record by ID

Response

Returns a Person

Arguments
Name Description
id - UUID!

Example

Query
query GetPersonById($id: UUID!) {
getPersonById(id: $id) {
  id
  version
  createdAt
  updatedAt
  isDeleted
  isUser
  isDriver
  fleetId
  email
  firstName
  lastName
  globalUserId
  licenseNumber
  licenseIssuedIn
  employeeId
  customFields {
    name
    value
  }
}
}
Variables
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda"
}
Response
{
"data": {
  "getPersonById": {
    "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "version": {},
    "createdAt": {},
    "updatedAt": {},
    "isDeleted": false,
    "isUser": true,
    "isDriver": false,
    "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "email": "xyz789",
    "firstName": "abc123",
    "lastName": "abc123",
    "globalUserId": "abc123",
    "licenseNumber": "abc123",
    "licenseIssuedIn": "xyz789",
    "employeeId": "xyz789",
    "customFields": [CustomField]
  }
}
}

getPersonCustomFields

Description

Get single Person custom fields by ID

Response

Returns [CustomField]

Arguments
Name Description
personId - UUID!

Example

Query
query GetPersonCustomFields($personId: UUID!) {
getPersonCustomFields(personId: $personId) {
  name
  value
}
}
Variables
{
"personId": "e7953481-1c18-4b61-bcab-93ccb865abda"
}
Response
{
"data": {
  "getPersonCustomFields": [
    {
      "name": "xyz789",
      "value": "xyz789"
    }
  ]
}
}

getRules

Description

Get all event rules

Response

Returns [Rule]

Example

Query
query GetRules {
getRules {
  id
  name
  enabled
  ruleType
  vehicles {
    assignedVehicleIds
    assignedGroupIds
    assignedToAll
  }
  geofenceIds
}
}
Response
{
"data": {
  "getRules": [
    {
      "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "name": "abc123",
      "enabled": false,
      "ruleType": "abc123",
      "vehicles": RuleVehicles,
      "geofenceIds": [
        "e7953481-1c18-4b61-bcab-93ccb865abda"
      ]
    }
  ]
}
}

getSnapshots

Description

Get vehicle snapshots by a period of time in parameters

Response

Returns [CommonFormat]

Arguments
Name Description
vehicleId - UUID!
from - DateTime!
to - DateTime!

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
    latestData {
      ...LatestDataFragment
    }
    lastData {
      ...CommonFormatFragment
    }
    assignedGroups {
      ...GroupFragment
    }
    assignedDevices {
      ...DeviceFragment
    }
    assignedLabels {
      ...LabelFragment
    }
    lastOdometer
    lastWorkingHours
    deactivated
    vehicleType {
      ...VehicleTypeFragment
    }
    customFields {
      ...CustomFieldFragment
    }
    workSchedule {
      ...WorkScheduleFragment
    }
  }
  timestamp
  gps {
    state
    latitude
    longitude
    direction
    altitude
    speed
    satellites
    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
    }
  }
  fleetMetaSensors {
    sensors {
      ...SensorMapFragment
    }
  }
  fuel {
    fuel
    rawFuel {
      ...RawFuelMapFragment
    }
    pulseCount
    fuelLevel {
      ...FuelLevelMapFragment
    }
    totalFuelEconomy
    fuelTankSize
  }
  misc {
    power
  }
  locationTimestamp
  locationTimeZone
}
}
Variables
{
"vehicleId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"from": "2007-12-03T10:15:30Z",
"to": "2007-12-03T10:15:30Z"
}
Response
{
"data": {
  "getSnapshots": [
    {
      "vehicleId": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "vehicle": Vehicle,
      "timestamp": "2007-12-03T10:15:30Z",
      "gps": Gps,
      "ignition": Ignition,
      "driver": Driver,
      "canBus": CanBus,
      "driverBehaviour": DriverBehaviour,
      "temperatures": Temperatures,
      "fleetMetaSensors": FleetMetaSensors,
      "fuel": Fuel,
      "misc": Misc,
      "locationTimestamp": "2007-12-03T10:15:30Z",
      "locationTimeZone": "xyz789"
    }
  ]
}
}

getUserInfo

Description

Get FleetUserInfo records visible to user currently logged in

Response

Returns [FleetUserInfo]

Example

Query
query GetUserInfo {
getUserInfo {
  userName
  userId
  fleetName
  fleetId
}
}
Response
{
"data": {
  "getUserInfo": [
    {
      "userName": "abc123",
      "userId": "abc123",
      "fleetName": "abc123",
      "fleetId": "abc123"
    }
  ]
}
}

getVehicleById

Description

Get single Vehicle record by ID

Response

Returns a Vehicle

Arguments
Name Description
id - UUID!

Example

Query
query GetVehicleById($id: UUID!) {
getVehicleById(id: $id) {
  id
  version
  createdAt
  updatedAt
  isDeleted
  name
  fleetId
  vin
  licensePlate
  make
  model
  year
  latestData {
    timestamp
    gps {
      ...GpsFragment
    }
    gpsWithTimestamp {
      ...GpsWithTimestampFragment
    }
    odometer {
      ...FloatWithTimestampFragment
    }
    workingHours {
      ...FloatWithTimestampFragment
    }
    address {
      ...AddressFragment
    }
    speedLimit {
      ...SpeedLimitFragment
    }
    geofenceData {
      ...GeofenceDataFragment
    }
    metaSensorData {
      ...SensorDataFragment
    }
    ptoHoursData {
      ...LongWithTimestampFragment
    }
    driverData {
      ...DriverDataFragment
    }
    canBus {
      ...CanBusFragment
    }
    canBusWithTimestamp {
      ...CanBusWithTimestampFragment
    }
    ignition {
      ...IgnitionFragment
    }
    ignitionWithTimestamp {
      ...IgnitionWithTimestampFragment
    }
    driverBehaviour {
      ...DriverBehaviourFragment
    }
    driverBehaviourWithTimestamp {
      ...DriverBehaviourWithTimestampFragment
    }
    temperatures {
      ...TemperaturesFragment
    }
    temperaturesWithTimestamp {
      ...TemperaturesWithTimestampFragment
    }
    fuel {
      ...FuelFragment
    }
    fuelWithTimestamp {
      ...FuelWithTimestampFragment
    }
    misc {
      ...MiscFragment
    }
    miscWithTimestamp {
      ...MiscWithTimestampFragment
    }
    crash {
      ...CrashFragment
    }
    crashWithTimestamp {
      ...CrashWithTimestampFragment
    }
  }
  lastData {
    vehicleId
    vehicle {
      ...VehicleFragment
    }
    timestamp
    gps {
      ...GpsFragment
    }
    ignition {
      ...IgnitionFragment
    }
    driver {
      ...DriverFragment
    }
    canBus {
      ...CanBusFragment
    }
    driverBehaviour {
      ...DriverBehaviourFragment
    }
    temperatures {
      ...TemperaturesFragment
    }
    fleetMetaSensors {
      ...FleetMetaSensorsFragment
    }
    fuel {
      ...FuelFragment
    }
    misc {
      ...MiscFragment
    }
    locationTimestamp
    locationTimeZone
  }
  assignedGroups {
    id
    version
    createdAt
    updatedAt
    name
    fleetId
    parentId
    externalId
    description
    isOwn
    vehicleIds
    assignedVehicles {
      ...VehicleFragment
    }
  }
  assignedDevices {
    id
    serial
    deviceTypeKey
    enabled
    phoneNumber
  }
  assignedLabels {
    id
    version
    createdAt
    updatedAt
    isDeleted
    name
    fleetId
  }
  lastOdometer
  lastWorkingHours
  deactivated
  vehicleType {
    id
    name
  }
  customFields {
    name
    value
  }
  workSchedule {
    id
    version
    createdAt
    updatedAt
    isDeleted
    name
    fleetId
    isDefault
    beginGrace
    endGrace
    periods {
      ...WorkSchedulePeriodFragment
    }
  }
}
}
Variables
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda"
}
Response
{
"data": {
  "getVehicleById": {
    "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "version": {},
    "createdAt": {},
    "updatedAt": {},
    "isDeleted": false,
    "name": "abc123",
    "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "vin": "abc123",
    "licensePlate": "abc123",
    "make": "xyz789",
    "model": "abc123",
    "year": 987,
    "latestData": LatestData,
    "lastData": CommonFormat,
    "assignedGroups": [Group],
    "assignedDevices": [Device],
    "assignedLabels": [Label],
    "lastOdometer": 123.45,
    "lastWorkingHours": 123.45,
    "deactivated": true,
    "vehicleType": VehicleType,
    "customFields": [CustomField],
    "workSchedule": WorkSchedule
  }
}
}

getVehicleCustomFields

Description

Get all CustomField records, mapped to vehicle

Response

Returns [CustomField]

Arguments
Name Description
vehicleId - UUID!

Example

Query
query GetVehicleCustomFields($vehicleId: UUID!) {
getVehicleCustomFields(vehicleId: $vehicleId) {
  name
  value
}
}
Variables
{
"vehicleId": "e7953481-1c18-4b61-bcab-93ccb865abda"
}
Response
{
"data": {
  "getVehicleCustomFields": [
    {
      "name": "abc123",
      "value": "abc123"
    }
  ]
}
}

getVehicleMappedSensors

Description

Get all MetaSensor records, mapped to vehicle

Response

Returns [Sensor]

Arguments
Name Description
vehicleId - UUID!

Example

Query
query GetVehicleMappedSensors($vehicleId: UUID!) {
getVehicleMappedSensors(vehicleId: $vehicleId) {
  name
  source
}
}
Variables
{
"vehicleId": "e7953481-1c18-4b61-bcab-93ccb865abda"
}
Response
{
"data": {
  "getVehicleMappedSensors": [
    {
      "name": "abc123",
      "source": "xyz789"
    }
  ]
}
}

getVehicleTypes

Description

Get all VehicleType records

Response

Returns [VehicleType]

Example

Query
query GetVehicleTypes {
getVehicleTypes {
  id
  name
}
}
Response
{
"data": {
  "getVehicleTypes": [
    {
      "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "name": "xyz789"
    }
  ]
}
}

getVehicles

Description

Get all Vehicle records, visible to current user

Response

Returns [Vehicle]

Example

Query
query GetVehicles {
getVehicles {
  id
  version
  createdAt
  updatedAt
  isDeleted
  name
  fleetId
  vin
  licensePlate
  make
  model
  year
  latestData {
    timestamp
    gps {
      ...GpsFragment
    }
    gpsWithTimestamp {
      ...GpsWithTimestampFragment
    }
    odometer {
      ...FloatWithTimestampFragment
    }
    workingHours {
      ...FloatWithTimestampFragment
    }
    address {
      ...AddressFragment
    }
    speedLimit {
      ...SpeedLimitFragment
    }
    geofenceData {
      ...GeofenceDataFragment
    }
    metaSensorData {
      ...SensorDataFragment
    }
    ptoHoursData {
      ...LongWithTimestampFragment
    }
    driverData {
      ...DriverDataFragment
    }
    canBus {
      ...CanBusFragment
    }
    canBusWithTimestamp {
      ...CanBusWithTimestampFragment
    }
    ignition {
      ...IgnitionFragment
    }
    ignitionWithTimestamp {
      ...IgnitionWithTimestampFragment
    }
    driverBehaviour {
      ...DriverBehaviourFragment
    }
    driverBehaviourWithTimestamp {
      ...DriverBehaviourWithTimestampFragment
    }
    temperatures {
      ...TemperaturesFragment
    }
    temperaturesWithTimestamp {
      ...TemperaturesWithTimestampFragment
    }
    fuel {
      ...FuelFragment
    }
    fuelWithTimestamp {
      ...FuelWithTimestampFragment
    }
    misc {
      ...MiscFragment
    }
    miscWithTimestamp {
      ...MiscWithTimestampFragment
    }
    crash {
      ...CrashFragment
    }
    crashWithTimestamp {
      ...CrashWithTimestampFragment
    }
  }
  lastData {
    vehicleId
    vehicle {
      ...VehicleFragment
    }
    timestamp
    gps {
      ...GpsFragment
    }
    ignition {
      ...IgnitionFragment
    }
    driver {
      ...DriverFragment
    }
    canBus {
      ...CanBusFragment
    }
    driverBehaviour {
      ...DriverBehaviourFragment
    }
    temperatures {
      ...TemperaturesFragment
    }
    fleetMetaSensors {
      ...FleetMetaSensorsFragment
    }
    fuel {
      ...FuelFragment
    }
    misc {
      ...MiscFragment
    }
    locationTimestamp
    locationTimeZone
  }
  assignedGroups {
    id
    version
    createdAt
    updatedAt
    name
    fleetId
    parentId
    externalId
    description
    isOwn
    vehicleIds
    assignedVehicles {
      ...VehicleFragment
    }
  }
  assignedDevices {
    id
    serial
    deviceTypeKey
    enabled
    phoneNumber
  }
  assignedLabels {
    id
    version
    createdAt
    updatedAt
    isDeleted
    name
    fleetId
  }
  lastOdometer
  lastWorkingHours
  deactivated
  vehicleType {
    id
    name
  }
  customFields {
    name
    value
  }
  workSchedule {
    id
    version
    createdAt
    updatedAt
    isDeleted
    name
    fleetId
    isDefault
    beginGrace
    endGrace
    periods {
      ...WorkSchedulePeriodFragment
    }
  }
}
}
Response
{
"data": {
  "getVehicles": [
    {
      "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "version": {},
      "createdAt": {},
      "updatedAt": {},
      "isDeleted": true,
      "name": "abc123",
      "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "vin": "abc123",
      "licensePlate": "abc123",
      "make": "xyz789",
      "model": "xyz789",
      "year": 987,
      "latestData": LatestData,
      "lastData": CommonFormat,
      "assignedGroups": [Group],
      "assignedDevices": [Device],
      "assignedLabels": [Label],
      "lastOdometer": 987.65,
      "lastWorkingHours": 123.45,
      "deactivated": false,
      "vehicleType": VehicleType,
      "customFields": [CustomField],
      "workSchedule": WorkSchedule
    }
  ]
}
}

getVehiclesByVin

Description

Get Vehicle records by VIN code

Response

Returns [Vehicle]

Arguments
Name Description
vin - String!

Example

Query
query GetVehiclesByVin($vin: String!) {
getVehiclesByVin(vin: $vin) {
  id
  version
  createdAt
  updatedAt
  isDeleted
  name
  fleetId
  vin
  licensePlate
  make
  model
  year
  latestData {
    timestamp
    gps {
      ...GpsFragment
    }
    gpsWithTimestamp {
      ...GpsWithTimestampFragment
    }
    odometer {
      ...FloatWithTimestampFragment
    }
    workingHours {
      ...FloatWithTimestampFragment
    }
    address {
      ...AddressFragment
    }
    speedLimit {
      ...SpeedLimitFragment
    }
    geofenceData {
      ...GeofenceDataFragment
    }
    metaSensorData {
      ...SensorDataFragment
    }
    ptoHoursData {
      ...LongWithTimestampFragment
    }
    driverData {
      ...DriverDataFragment
    }
    canBus {
      ...CanBusFragment
    }
    canBusWithTimestamp {
      ...CanBusWithTimestampFragment
    }
    ignition {
      ...IgnitionFragment
    }
    ignitionWithTimestamp {
      ...IgnitionWithTimestampFragment
    }
    driverBehaviour {
      ...DriverBehaviourFragment
    }
    driverBehaviourWithTimestamp {
      ...DriverBehaviourWithTimestampFragment
    }
    temperatures {
      ...TemperaturesFragment
    }
    temperaturesWithTimestamp {
      ...TemperaturesWithTimestampFragment
    }
    fuel {
      ...FuelFragment
    }
    fuelWithTimestamp {
      ...FuelWithTimestampFragment
    }
    misc {
      ...MiscFragment
    }
    miscWithTimestamp {
      ...MiscWithTimestampFragment
    }
    crash {
      ...CrashFragment
    }
    crashWithTimestamp {
      ...CrashWithTimestampFragment
    }
  }
  lastData {
    vehicleId
    vehicle {
      ...VehicleFragment
    }
    timestamp
    gps {
      ...GpsFragment
    }
    ignition {
      ...IgnitionFragment
    }
    driver {
      ...DriverFragment
    }
    canBus {
      ...CanBusFragment
    }
    driverBehaviour {
      ...DriverBehaviourFragment
    }
    temperatures {
      ...TemperaturesFragment
    }
    fleetMetaSensors {
      ...FleetMetaSensorsFragment
    }
    fuel {
      ...FuelFragment
    }
    misc {
      ...MiscFragment
    }
    locationTimestamp
    locationTimeZone
  }
  assignedGroups {
    id
    version
    createdAt
    updatedAt
    name
    fleetId
    parentId
    externalId
    description
    isOwn
    vehicleIds
    assignedVehicles {
      ...VehicleFragment
    }
  }
  assignedDevices {
    id
    serial
    deviceTypeKey
    enabled
    phoneNumber
  }
  assignedLabels {
    id
    version
    createdAt
    updatedAt
    isDeleted
    name
    fleetId
  }
  lastOdometer
  lastWorkingHours
  deactivated
  vehicleType {
    id
    name
  }
  customFields {
    name
    value
  }
  workSchedule {
    id
    version
    createdAt
    updatedAt
    isDeleted
    name
    fleetId
    isDefault
    beginGrace
    endGrace
    periods {
      ...WorkSchedulePeriodFragment
    }
  }
}
}
Variables
{"vin": "xyz789"}
Response
{
"data": {
  "getVehiclesByVin": [
    {
      "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "version": {},
      "createdAt": {},
      "updatedAt": {},
      "isDeleted": true,
      "name": "abc123",
      "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "vin": "abc123",
      "licensePlate": "abc123",
      "make": "abc123",
      "model": "abc123",
      "year": 987,
      "latestData": LatestData,
      "lastData": CommonFormat,
      "assignedGroups": [Group],
      "assignedDevices": [Device],
      "assignedLabels": [Label],
      "lastOdometer": 123.45,
      "lastWorkingHours": 987.65,
      "deactivated": true,
      "vehicleType": VehicleType,
      "customFields": [CustomField],
      "workSchedule": WorkSchedule
    }
  ]
}
}

getWorkScheduleById

Description

Get single Device record by ID

Response

Returns a WorkSchedule

Arguments
Name Description
id - UUID!

Example

Query
query GetWorkScheduleById($id: UUID!) {
getWorkScheduleById(id: $id) {
  id
  version
  createdAt
  updatedAt
  isDeleted
  name
  fleetId
  isDefault
  beginGrace
  endGrace
  periods {
    weekday
    begin
    duration
  }
}
}
Variables
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda"
}
Response
{
"data": {
  "getWorkScheduleById": {
    "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "version": {},
    "createdAt": {},
    "updatedAt": {},
    "isDeleted": true,
    "name": "abc123",
    "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "isDefault": false,
    "beginGrace": 123,
    "endGrace": 987,
    "periods": [WorkSchedulePeriod]
  }
}
}

getWorkSchedules

Description

Get all WorkSchedule records

Response

Returns [WorkSchedule]

Example

Query
query GetWorkSchedules {
getWorkSchedules {
  id
  version
  createdAt
  updatedAt
  isDeleted
  name
  fleetId
  isDefault
  beginGrace
  endGrace
  periods {
    weekday
    begin
    duration
  }
}
}
Response
{
"data": {
  "getWorkSchedules": [
    {
      "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "version": {},
      "createdAt": {},
      "updatedAt": {},
      "isDeleted": true,
      "name": "abc123",
      "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
      "isDefault": true,
      "beginGrace": 123,
      "endGrace": 987,
      "periods": [WorkSchedulePeriod]
    }
  ]
}
}

getWrappedReport

Description

Get reports

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": "abc123",
    "report": {}
  }
}
}

getWrappedReportInputs

Description

Get available report parameters

Response

Returns [WrappedReportInputs]

Arguments
Name Description
id - String

Example

Query
query GetWrappedReportInputs($id: String) {
getWrappedReportInputs(id: $id) {
  id
  title
  description
  onlyFleetTimezone
  inputs
}
}
Variables
{"id": "xyz789"}
Response
{
"data": {
  "getWrappedReportInputs": [
    {
      "id": "xyz789",
      "title": "xyz789",
      "description": "abc123",
      "onlyFleetTimezone": true,
      "inputs": {}
    }
  ]
}
}

Mutations

assignDriver

Description

Assign a driver to the vehicle (creates new driver assignment). If the vehicle or driver assignment exists at a given time, the existing assignment will be altered or deleted. No modifications will be made if an assignment with the same vehicle and driver already exists at the specified time. Returns "true", if the request is successful, error otherwise.

Response

Returns a Boolean

Arguments
Name Description
assignDriverInput - AssignDriverInput!

Example

Query
mutation AssignDriver($assignDriverInput: AssignDriverInput!) {
assignDriver(assignDriverInput: $assignDriverInput)
}
Variables
{"assignDriverInput": AssignDriverInput}
Response
{"data": {"assignDriver": false}}

changeVehicleGroups

Description

Change multiple groups membership for vehicle

Response

Returns a ChangeVehicleGroupsOutput

Arguments
Name Description
vehicleId - UUID!
changeVehicleGroupsInput - ChangeVehicleGroupsInput

Example

Query
mutation ChangeVehicleGroups(
$vehicleId: UUID!,
$changeVehicleGroupsInput: ChangeVehicleGroupsInput
) {
changeVehicleGroups(
  vehicleId: $vehicleId,
  changeVehicleGroupsInput: $changeVehicleGroupsInput
) {
  vehicleId
  removedGroupIds
  addedGroupIds
}
}
Variables
{
"vehicleId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"changeVehicleGroupsInput": ChangeVehicleGroupsInput
}
Response
{
"data": {
  "changeVehicleGroups": {
    "vehicleId": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "removedGroupIds": [
      "e7953481-1c18-4b61-bcab-93ccb865abda"
    ],
    "addedGroupIds": [
      "e7953481-1c18-4b61-bcab-93ccb865abda"
    ]
  }
}
}

changeVehiclesGroup

Description

Change group membership of multiple vehicles

Response

Returns [String]

Arguments
Name Description
vehicleIds - [UUID!]!
sourceGroupId - UUID!
destinationGroupId - UUID!

Example

Query
mutation ChangeVehiclesGroup(
$vehicleIds: [UUID!]!,
$sourceGroupId: UUID!,
$destinationGroupId: UUID!
) {
changeVehiclesGroup(
  vehicleIds: $vehicleIds,
  sourceGroupId: $sourceGroupId,
  destinationGroupId: $destinationGroupId
)
}
Variables
{
"vehicleIds": [
  "e7953481-1c18-4b61-bcab-93ccb865abda"
],
"sourceGroupId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"destinationGroupId": "e7953481-1c18-4b61-bcab-93ccb865abda"
}
Response
{
"data": {
  "changeVehiclesGroup": ["xyz789"]
}
}

createGeofence

Description

Create Geofence entity

Response

Returns a Geofence

Arguments
Name Description
geofenceInput - CreateGeofenceInput!

Example

Query
mutation CreateGeofence($geofenceInput: CreateGeofenceInput!) {
createGeofence(geofenceInput: $geofenceInput) {
  id
  version
  createdAt
  updatedAt
  isDeleted
  name
  fleetId
  geojson
  color
  phone
  email
  address {
    country
    countryCode
    region
    city
    postalCode
    address
  }
  description
}
}
Variables
{"geofenceInput": CreateGeofenceInput}
Response
{
"data": {
  "createGeofence": {
    "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "version": {},
    "createdAt": {},
    "updatedAt": {},
    "isDeleted": true,
    "name": "abc123",
    "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "geojson": {},
    "color": "xyz789",
    "phone": "abc123",
    "email": "abc123",
    "address": Address,
    "description": "xyz789"
  }
}
}

createPerson

Description

Create new Person entity

Response

Returns a Person

Arguments
Name Description
personInput - CreatePersonInput!

Example

Query
mutation CreatePerson($personInput: CreatePersonInput!) {
createPerson(personInput: $personInput) {
  id
  version
  createdAt
  updatedAt
  isDeleted
  isUser
  isDriver
  fleetId
  email
  firstName
  lastName
  globalUserId
  licenseNumber
  licenseIssuedIn
  employeeId
  customFields {
    name
    value
  }
}
}
Variables
{"personInput": CreatePersonInput}
Response
{
"data": {
  "createPerson": {
    "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "version": {},
    "createdAt": {},
    "updatedAt": {},
    "isDeleted": true,
    "isUser": true,
    "isDriver": false,
    "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "email": "xyz789",
    "firstName": "abc123",
    "lastName": "abc123",
    "globalUserId": "xyz789",
    "licenseNumber": "xyz789",
    "licenseIssuedIn": "abc123",
    "employeeId": "xyz789",
    "customFields": [CustomField]
  }
}
}

deleteGeofence

Description

Delete Geofence entity

Response

Returns a Boolean

Arguments
Name Description
geofenceId - UUID!

Example

Query
mutation DeleteGeofence($geofenceId: UUID!) {
deleteGeofence(geofenceId: $geofenceId)
}
Variables
{
"geofenceId": "e7953481-1c18-4b61-bcab-93ccb865abda"
}
Response
{"data": {"deleteGeofence": true}}

unassignDriver

Description

Remove a driver from the vehicle (ends vehicle assignment on given time). If no assignment exists at a given time, the error is returned. If driverId is specified in the request, the vehicle driver assignment will be terminated only if it matches the specified driver. Returns "true", if the request is successful, error otherwise.

Response

Returns a Boolean

Arguments
Name Description
unassignDriverInput - UnassignDriverInput!

Example

Query
mutation UnassignDriver($unassignDriverInput: UnassignDriverInput!) {
unassignDriver(unassignDriverInput: $unassignDriverInput)
}
Variables
{"unassignDriverInput": UnassignDriverInput}
Response
{"data": {"unassignDriver": false}}

updateGeofence

Description

Update Geofence entity fields, available in GeofenceInput

Response

Returns a Geofence

Arguments
Name Description
geofenceId - UUID!
geofenceInput - GeofenceInput!

Example

Query
mutation UpdateGeofence(
$geofenceId: UUID!,
$geofenceInput: GeofenceInput!
) {
updateGeofence(
  geofenceId: $geofenceId,
  geofenceInput: $geofenceInput
) {
  id
  version
  createdAt
  updatedAt
  isDeleted
  name
  fleetId
  geojson
  color
  phone
  email
  address {
    country
    countryCode
    region
    city
    postalCode
    address
  }
  description
}
}
Variables
{
"geofenceId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"geofenceInput": GeofenceInput
}
Response
{
"data": {
  "updateGeofence": {
    "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "version": {},
    "createdAt": {},
    "updatedAt": {},
    "isDeleted": true,
    "name": "xyz789",
    "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "geojson": {},
    "color": "abc123",
    "phone": "xyz789",
    "email": "xyz789",
    "address": Address,
    "description": "xyz789"
  }
}
}

updatePerson

Description

Update Person entity fields, available in UpdatePersonInput

Response

Returns a Person

Arguments
Name Description
personId - UUID!
personInput - UpdatePersonInput!

Example

Query
mutation UpdatePerson(
$personId: UUID!,
$personInput: UpdatePersonInput!
) {
updatePerson(
  personId: $personId,
  personInput: $personInput
) {
  id
  version
  createdAt
  updatedAt
  isDeleted
  isUser
  isDriver
  fleetId
  email
  firstName
  lastName
  globalUserId
  licenseNumber
  licenseIssuedIn
  employeeId
  customFields {
    name
    value
  }
}
}
Variables
{
"personId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"personInput": UpdatePersonInput
}
Response
{
"data": {
  "updatePerson": {
    "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "version": {},
    "createdAt": {},
    "updatedAt": {},
    "isDeleted": true,
    "isUser": true,
    "isDriver": false,
    "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "email": "xyz789",
    "firstName": "xyz789",
    "lastName": "xyz789",
    "globalUserId": "xyz789",
    "licenseNumber": "xyz789",
    "licenseIssuedIn": "abc123",
    "employeeId": "xyz789",
    "customFields": [CustomField]
  }
}
}

updatePersonCustomField

Description

Update CustomField entities, related to user

Response

Returns a CustomField

Arguments
Name Description
personId - UUID!
field - CustomFieldInput!

Example

Query
mutation UpdatePersonCustomField(
$personId: UUID!,
$field: CustomFieldInput!
) {
updatePersonCustomField(
  personId: $personId,
  field: $field
) {
  name
  value
}
}
Variables
{
"personId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"field": CustomFieldInput
}
Response
{
"data": {
  "updatePersonCustomField": {
    "name": "abc123",
    "value": "xyz789"
  }
}
}

updateVehicle

Description

Update Vehicle entity fields, available in VehicleInput

Response

Returns a Vehicle

Arguments
Name Description
vehicleId - UUID!
vehicleInput - VehicleInput!

Example

Query
mutation UpdateVehicle(
$vehicleId: UUID!,
$vehicleInput: VehicleInput!
) {
updateVehicle(
  vehicleId: $vehicleId,
  vehicleInput: $vehicleInput
) {
  id
  version
  createdAt
  updatedAt
  isDeleted
  name
  fleetId
  vin
  licensePlate
  make
  model
  year
  latestData {
    timestamp
    gps {
      ...GpsFragment
    }
    gpsWithTimestamp {
      ...GpsWithTimestampFragment
    }
    odometer {
      ...FloatWithTimestampFragment
    }
    workingHours {
      ...FloatWithTimestampFragment
    }
    address {
      ...AddressFragment
    }
    speedLimit {
      ...SpeedLimitFragment
    }
    geofenceData {
      ...GeofenceDataFragment
    }
    metaSensorData {
      ...SensorDataFragment
    }
    ptoHoursData {
      ...LongWithTimestampFragment
    }
    driverData {
      ...DriverDataFragment
    }
    canBus {
      ...CanBusFragment
    }
    canBusWithTimestamp {
      ...CanBusWithTimestampFragment
    }
    ignition {
      ...IgnitionFragment
    }
    ignitionWithTimestamp {
      ...IgnitionWithTimestampFragment
    }
    driverBehaviour {
      ...DriverBehaviourFragment
    }
    driverBehaviourWithTimestamp {
      ...DriverBehaviourWithTimestampFragment
    }
    temperatures {
      ...TemperaturesFragment
    }
    temperaturesWithTimestamp {
      ...TemperaturesWithTimestampFragment
    }
    fuel {
      ...FuelFragment
    }
    fuelWithTimestamp {
      ...FuelWithTimestampFragment
    }
    misc {
      ...MiscFragment
    }
    miscWithTimestamp {
      ...MiscWithTimestampFragment
    }
    crash {
      ...CrashFragment
    }
    crashWithTimestamp {
      ...CrashWithTimestampFragment
    }
  }
  lastData {
    vehicleId
    vehicle {
      ...VehicleFragment
    }
    timestamp
    gps {
      ...GpsFragment
    }
    ignition {
      ...IgnitionFragment
    }
    driver {
      ...DriverFragment
    }
    canBus {
      ...CanBusFragment
    }
    driverBehaviour {
      ...DriverBehaviourFragment
    }
    temperatures {
      ...TemperaturesFragment
    }
    fleetMetaSensors {
      ...FleetMetaSensorsFragment
    }
    fuel {
      ...FuelFragment
    }
    misc {
      ...MiscFragment
    }
    locationTimestamp
    locationTimeZone
  }
  assignedGroups {
    id
    version
    createdAt
    updatedAt
    name
    fleetId
    parentId
    externalId
    description
    isOwn
    vehicleIds
    assignedVehicles {
      ...VehicleFragment
    }
  }
  assignedDevices {
    id
    serial
    deviceTypeKey
    enabled
    phoneNumber
  }
  assignedLabels {
    id
    version
    createdAt
    updatedAt
    isDeleted
    name
    fleetId
  }
  lastOdometer
  lastWorkingHours
  deactivated
  vehicleType {
    id
    name
  }
  customFields {
    name
    value
  }
  workSchedule {
    id
    version
    createdAt
    updatedAt
    isDeleted
    name
    fleetId
    isDefault
    beginGrace
    endGrace
    periods {
      ...WorkSchedulePeriodFragment
    }
  }
}
}
Variables
{
"vehicleId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"vehicleInput": VehicleInput
}
Response
{
"data": {
  "updateVehicle": {
    "id": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "version": {},
    "createdAt": {},
    "updatedAt": {},
    "isDeleted": false,
    "name": "abc123",
    "fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
    "vin": "abc123",
    "licensePlate": "xyz789",
    "make": "xyz789",
    "model": "xyz789",
    "year": 123,
    "latestData": LatestData,
    "lastData": CommonFormat,
    "assignedGroups": [Group],
    "assignedDevices": [Device],
    "assignedLabels": [Label],
    "lastOdometer": 987.65,
    "lastWorkingHours": 123.45,
    "deactivated": true,
    "vehicleType": VehicleType,
    "customFields": [CustomField],
    "workSchedule": WorkSchedule
  }
}
}

updateVehicleCustomField

Description

Update CustomField entities, related to vehicle

Response

Returns a CustomField

Arguments
Name Description
vehicleId - UUID!
field - CustomFieldInput!

Example

Query
mutation UpdateVehicleCustomField(
$vehicleId: UUID!,
$field: CustomFieldInput!
) {
updateVehicleCustomField(
  vehicleId: $vehicleId,
  field: $field
) {
  name
  value
}
}
Variables
{
"vehicleId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"field": CustomFieldInput
}
Response
{
"data": {
  "updateVehicleCustomField": {
    "name": "abc123",
    "value": "abc123"
  }
}
}

Types

Address

Fields
Field Name Description
country - String Country name
countryCode - String ISO
region - String
city - String
postalCode - String
address - String
Example
{
"country": "abc123",
"countryCode": "xyz789",
"region": "abc123",
"city": "abc123",
"postalCode": "xyz789",
"address": "abc123"
}

AddressInput

Fields
Input Field Description
address - String

Street and number

city - String

City name

region - String

State abbreviation

countryCode - String

An ISO 3166-1 alpha-2 code

postalCode - String

ZIP Code

fieldMask - [AddressInputFields!]!

List of affected fields by current mutation

Example
{
"address": "xyz789",
"city": "xyz789",
"region": "abc123",
"countryCode": "xyz789",
"postalCode": "xyz789",
"fieldMask": ["address"]
}

AddressInputFields

Values
Enum Value Description

address

city

region

country_code

postal_code

Example
"address"

AssignDriverInput

Fields
Input Field Description
vehicleId - UUID!

Id of the vehicle

driverId - UUID!

Id of the driver

startTimestamp - Long

UTC epoch timestamp in milliseconds of the driver assignment start. If omitted defaults to now. Is allowed up to 10 days into the past

endTimestamp - Long

UTC epoch timestamp in milliseconds of the driver assignment end, if omitted driver assignment will be active/ongoing

Example
{
"vehicleId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"driverId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"startTimestamp": {},
"endTimestamp": {}
}

Boolean

Description

The Boolean scalar type represents true or false.

BooleanWithTimestamp

Fields
Field Name Description
timestamp - Long Timestamp indicating last appearance of value in record
changeTimestamp - Long Timestamp indicating last change time
value - Boolean Boolean value
Example
{"timestamp": {}, "changeTimestamp": {}, "value": false}

CanAxleWeightsMap

Fields
Field Name Description
key - Int
value - Float
Example
{"key": 987, "value": 123.45}

CanAxleWeightsMapWithTimestamp

Fields
Field Name Description
key - Int
value - Float
timestamp - Long
changeTimestamp - Long
Example
{"key": 123, "value": 987.65, "timestamp": {}, "changeTimestamp": {}}

CanBus

Description

Data items read from vehicle CAN bus

Fields
Field Name Description
absStatus - Boolean Indicates whether ABS is on or off
acceleratorPedalPosition - Float Actual position of the accelerator pedal (not to be confused with engine_throttle_position)(%)
accelerationX - Float x-axis acceleration component (m/s2)
accelerationY - Float y-axis acceleration component (m/s2)
ambientAirTemperature - Float (degrees C)
barometricPressure - Float (kPa)
brakeApplicationPressure - Float (kPa)
brakePedalPosition - Float (%)
brakePedalState - Boolean
brakeTorque - Float (Nm)
canCombinationWeight - Float Tractor and trailer combination gross weight (kg)
combinationWeight - Float Calculated from axle weights + trailer weight. Only output when the CANCombinationWeight parameter not present. (kg)
canrpm - Float CANRPM
canDistance - Float Odometer (km)
canDeltaDistance - Float Delta distance from previous (record or measurement?) (km)
canTripDistance - Float Trip distance (km)
canFuelUsed - Float Total fuel used by vehicle
canTripFuelUsed - Float Fuel used during trip (l)
canTripFuelUsedPercent - Float Fuel used during trip, in percentage of tank (%)
canServiceDistance - Float (km)
canFuelRate - Float (l/h)
canhrFuelUsed - Float Total fuel used by vehicle, high resolution. If present, should be mapped to CANFuelUsed, which is the canonical name.
canSpeed - Float (km/h)
canFuel - Float Calibrated fuel value read from CAN bus. Should be remapped to 'Fuel' which is the canonical name.
canRawFuel - Float Uncalibrated fuel value read from CAN bus. Can be either deciliters or percent of tank volume.
canAxleNumber - Float The axle number referenced by CANAxleWeight. PGN 0x00FEEA in the FMS standard.
canAxleWeight - Float The load of the axle referenced in CANAxleNumber in kg
canAxleWeights - [CanAxleWeightsMap] Contains a JSON object of all known axle load values
canEngineCoolantTemperature - Float The same as CANTemperature
canEngineHours - Float
canFuelEconomy - Float Instantaneous fuel economy of PGN 0x00FEF2 in the FMS standard. Unit is km/l. Probably not actually used
canWheelSpeed - Float The same as CANSpeed
cargoWeight - Float (kg)
checkEngineWarning - Boolean MIL state
clutchPedalState - Boolean
cruiseControlState - Long Probably raw enum from J1939, in decimal (number)
deltaFuelUsed - Float
engineCoolantLevel - Float (%)
engineCoolantPressure - Float (kPa)
engineFuelType - Long Enum of bus values (same for OBD and 1939?) (number)
engineOilLevel - Float (%)
engineOilPressure - Float (kPa)
engineOilTemperature - Float (degrees C)
enginePercentLoad - Float (%)
engineRunTime - Float (s)
engineThrottlePosition - Float The position of the throttle valve (can be controlled by the accelerator pedal (accelerator_pedal_position) or by another ECU i.e. while driving on cruise control) (%)
engineIdleTime - Float Total engine idle time over the life of the vehicle (hours)
engineWorkTime - Float Total engine time over the life of the vehicle (hours)
fuelDeliveryPressure - Float (kPa)
gear - String Selected gear lever position (Park, Reverse, Neutral, Drive, Sport, Low, Gear_1, etc) (string)
intakeAirTemperature - Float (degrees C)
massAirFlow - Float
oilLifeRemaining - Float Remaining oil life (%)
overweight - Boolean
parkingBrakeSwitch - Boolean
seatBeltDriver - Boolean
seatBeltPassenger - Boolean
seatOccupiedDriver - Boolean
seatOccupiedPassenger - Boolean
serviceNowWarning - Boolean
tirePressureWarning - Boolean
tirePressure - [TirePressureMap] Key-value pairs. The key is a pair of numbers where the first number counts the axle of the tire from front to rear and the second number counts the position of the tire from left to right. The value is tire pressure in kPa. (kPa)
tirePressureStatus - [TirePressureStatusMap] Key-value pairs. The key is a pair of numbers where the first number counts the axle of the tire from front to rear and the second number counts the position of the tire from left to right. The value is tire pressure status: Normal, Low, Alert. (string)
tirePressurePlacardFront - Float Recommended front tire pressure (kPa)
tirePressurePlacardRear - Float Recommended rear tire pressure (kPa)
tireLocation - String
tractionControl - Boolean Indicates whether the traction control is on or off.
tractionControlBrake - Boolean Indicates whether the traction control brake is on or off
tractionControlPowerTrain - Boolean Indicates whether the traction control powertrain is on or off
transmissionOilTemperature - Float (degrees C)
washerFluidLevel - Float (%)
waterInFuel - Boolean
canFuelConsumption - Float (l/100km)
frontLeftDoorOpen - Boolean
frontRightDoorStatus - Boolean
hoodOpen - Boolean
rearLeftDoorOpen - Boolean
rearRightDoorOpen - Boolean
trunkOpen - Boolean
canProgramNumber - Long
cruiseControlActive - Boolean 1 - active; 0 - inactive
retarderTorqueMode - Int Enum value
actualRetarderLevel - Float (%)
nonEngineRetarderSelectionLevel - Float (%)
Example
{
"absStatus": true,
"acceleratorPedalPosition": 123.45,
"accelerationX": 987.65,
"accelerationY": 987.65,
"ambientAirTemperature": 987.65,
"barometricPressure": 987.65,
"brakeApplicationPressure": 987.65,
"brakePedalPosition": 987.65,
"brakePedalState": true,
"brakeTorque": 987.65,
"canCombinationWeight": 123.45,
"combinationWeight": 123.45,
"canrpm": 123.45,
"canDistance": 123.45,
"canDeltaDistance": 123.45,
"canTripDistance": 123.45,
"canFuelUsed": 123.45,
"canTripFuelUsed": 123.45,
"canTripFuelUsedPercent": 123.45,
"canServiceDistance": 987.65,
"canFuelRate": 123.45,
"canhrFuelUsed": 123.45,
"canSpeed": 987.65,
"canFuel": 987.65,
"canRawFuel": 123.45,
"canAxleNumber": 987.65,
"canAxleWeight": 987.65,
"canAxleWeights": [CanAxleWeightsMap],
"canEngineCoolantTemperature": 123.45,
"canEngineHours": 987.65,
"canFuelEconomy": 987.65,
"canWheelSpeed": 123.45,
"cargoWeight": 123.45,
"checkEngineWarning": false,
"clutchPedalState": true,
"cruiseControlState": {},
"deltaFuelUsed": 123.45,
"engineCoolantLevel": 987.65,
"engineCoolantPressure": 987.65,
"engineFuelType": {},
"engineOilLevel": 987.65,
"engineOilPressure": 987.65,
"engineOilTemperature": 123.45,
"enginePercentLoad": 987.65,
"engineRunTime": 987.65,
"engineThrottlePosition": 987.65,
"engineIdleTime": 123.45,
"engineWorkTime": 987.65,
"fuelDeliveryPressure": 123.45,
"gear": "abc123",
"intakeAirTemperature": 987.65,
"massAirFlow": 123.45,
"oilLifeRemaining": 987.65,
"overweight": true,
"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": true,
"transmissionOilTemperature": 123.45,
"washerFluidLevel": 123.45,
"waterInFuel": false,
"canFuelConsumption": 987.65,
"frontLeftDoorOpen": false,
"frontRightDoorStatus": true,
"hoodOpen": false,
"rearLeftDoorOpen": true,
"rearRightDoorOpen": false,
"trunkOpen": false,
"canProgramNumber": {},
"cruiseControlActive": true,
"retarderTorqueMode": 123,
"actualRetarderLevel": 123.45,
"nonEngineRetarderSelectionLevel": 123.45
}

CanBusWithTimestamp

Description

Data items read from vehicle CAN bus

Fields
Field Name Description
absStatus - BooleanWithTimestamp Indicates whether ABS is on or off
acceleratorPedalPosition - FloatWithTimestamp Actual position of the accelerator pedal (not to be confused with engine_throttle_position)(%)
accelerationX - FloatWithTimestamp x-axis acceleration component (m/s2)
accelerationY - FloatWithTimestamp y-axis acceleration component (m/s2)
ambientAirTemperature - FloatWithTimestamp (degrees C)
barometricPressure - FloatWithTimestamp (kPa)
brakeApplicationPressure - FloatWithTimestamp (kPa)
brakePedalPosition - FloatWithTimestamp (%)
brakePedalState - BooleanWithTimestamp
brakeTorque - FloatWithTimestamp (Nm)
canCombinationWeight - FloatWithTimestamp Tractor and trailer combination gross weight (kg)
combinationWeight - FloatWithTimestamp Calculated from axle weights + trailer weight. Only output when the CANCombinationWeight parameter not present. (kg)
canrpm - FloatWithTimestamp CANRPM
canDistance - FloatWithTimestamp Odometer (km)
canDeltaDistance - FloatWithTimestamp Delta distance from previous (record or measurement?) (km)
canTripDistance - FloatWithTimestamp Trip distance (km)
canFuelUsed - FloatWithTimestamp Total fuel used by vehicle
canTripFuelUsed - FloatWithTimestamp Fuel used during trip (l)
canTripFuelUsedPercent - FloatWithTimestamp Fuel used during trip, in percentage of tank (%)
canServiceDistance - FloatWithTimestamp (km)
canFuelRate - FloatWithTimestamp (l/h)
canhrFuelUsed - FloatWithTimestamp Total fuel used by vehicle, high resolution. If present, should be mapped to CANFuelUsed, which is the canonical name.
canSpeed - FloatWithTimestamp (km/h)
canFuel - FloatWithTimestamp Calibrated fuel value read from CAN bus. Should be remapped to 'Fuel' which is the canonical name.
canRawFuel - FloatWithTimestamp Uncalibrated fuel value read from CAN bus. Can be either deciliters or percent of tank volume.
canAxleNumber - FloatWithTimestamp The axle number referenced by CANAxleWeight. PGN 0x00FEEA in the FMS standard.
canAxleWeight - FloatWithTimestamp The load of the axle referenced in CANAxleNumber in kg
canEngineCoolantTemperature - FloatWithTimestamp The same as CANTemperature
canEngineHours - FloatWithTimestamp
canFuelEconomy - FloatWithTimestamp Instantaneous fuel economy of PGN 0x00FEF2 in the FMS standard. Unit is km/l. Probably not actually used
canWheelSpeed - FloatWithTimestamp The same as CANSpeed
cargoWeight - FloatWithTimestamp (kg)
checkEngineWarning - BooleanWithTimestamp MIL state
clutchPedalState - BooleanWithTimestamp
cruiseControlState - LongWithTimestamp Probably raw enum from J1939, in decimal (number)
deltaFuelUsed - FloatWithTimestamp
engineCoolantLevel - FloatWithTimestamp (%)
engineCoolantPressure - FloatWithTimestamp (kPa)
engineFuelType - LongWithTimestamp Enum of bus values (same for OBD and 1939?) (number)
engineOilLevel - FloatWithTimestamp (%)
engineOilPressure - FloatWithTimestamp (kPa)
engineOilTemperature - FloatWithTimestamp (degrees C)
enginePercentLoad - FloatWithTimestamp (%)
engineRunTime - FloatWithTimestamp (s)
engineThrottlePosition - FloatWithTimestamp The position of the throttle valve (can be controlled by the accelerator pedal (accelerator_pedal_position) or by another ECU i.e. while driving on cruise control) (%)
engineIdleTime - FloatWithTimestamp Total engine idle time over the life of the vehicle (hours)
engineWorkTime - FloatWithTimestamp Total engine time over the life of the vehicle (hours)
fuelDeliveryPressure - FloatWithTimestamp (kPa)
gear - StringWithTimestamp Selected gear lever position (Park, Reverse, Neutral, Drive, Sport, Low, Gear_1, etc) (string)
intakeAirTemperature - FloatWithTimestamp (degrees C)
massAirFlow - FloatWithTimestamp
oilLifeRemaining - FloatWithTimestamp Remaining oil life (%)
overweight - BooleanWithTimestamp
parkingBrakeSwitch - BooleanWithTimestamp
seatBeltDriver - BooleanWithTimestamp
seatBeltPassenger - BooleanWithTimestamp
seatOccupiedDriver - BooleanWithTimestamp
seatOccupiedPassenger - BooleanWithTimestamp
serviceNowWarning - BooleanWithTimestamp
tirePressureWarning - BooleanWithTimestamp
tirePressurePlacardFront - FloatWithTimestamp Recommended front tire pressure (kPa)
tirePressurePlacardRear - FloatWithTimestamp Recommended rear tire pressure (kPa)
tireLocation - StringWithTimestamp
tractionControl - BooleanWithTimestamp Indicates whether the traction control is on or off.
tractionControlBrake - BooleanWithTimestamp Indicates whether the traction control brake is on or off
tractionControlPowerTrain - BooleanWithTimestamp Indicates whether the traction control powertrain is on or off
transmissionOilTemperature - FloatWithTimestamp (degrees C)
washerFluidLevel - FloatWithTimestamp (%)
waterInFuel - BooleanWithTimestamp
canFuelConsumption - FloatWithTimestamp (l/100km)
frontLeftDoorOpen - BooleanWithTimestamp
frontRightDoorStatus - BooleanWithTimestamp
hoodOpen - BooleanWithTimestamp
rearLeftDoorOpen - BooleanWithTimestamp
rearRightDoorOpen - BooleanWithTimestamp
trunkOpen - BooleanWithTimestamp
canProgramNumber - LongWithTimestamp
cruiseControlActive - BooleanWithTimestamp 1 - active; 0 - inactive
retarderTorqueMode - IntWithTimestamp Enum value
actualRetarderLevel - FloatWithTimestamp (%)
nonEngineRetarderSelectionLevel - FloatWithTimestamp (%)
canAxleWeights - [CanAxleWeightsMapWithTimestamp] Contains a JSON object of all known axle load values
tirePressure - [TirePressureMapWithTimestamp] Key-value pairs. The key is a pair of numbers where the first number counts the axle of the tire from front to rear and the second number counts the position of the tire from left to right. The value is tire pressure in kPa. (kPa)
tirePressureStatus - [TirePressureStatusMapWithTimestamp] Key-value pairs. The key is a pair of numbers where the first number counts the axle of the tire from front to rear and the second number counts the position of the tire from left to right. The value is tire pressure status: Normal, Low, Alert. (string)
Example
{
"absStatus": BooleanWithTimestamp,
"acceleratorPedalPosition": FloatWithTimestamp,
"accelerationX": FloatWithTimestamp,
"accelerationY": FloatWithTimestamp,
"ambientAirTemperature": FloatWithTimestamp,
"barometricPressure": FloatWithTimestamp,
"brakeApplicationPressure": FloatWithTimestamp,
"brakePedalPosition": FloatWithTimestamp,
"brakePedalState": BooleanWithTimestamp,
"brakeTorque": FloatWithTimestamp,
"canCombinationWeight": FloatWithTimestamp,
"combinationWeight": FloatWithTimestamp,
"canrpm": FloatWithTimestamp,
"canDistance": FloatWithTimestamp,
"canDeltaDistance": FloatWithTimestamp,
"canTripDistance": FloatWithTimestamp,
"canFuelUsed": FloatWithTimestamp,
"canTripFuelUsed": FloatWithTimestamp,
"canTripFuelUsedPercent": FloatWithTimestamp,
"canServiceDistance": FloatWithTimestamp,
"canFuelRate": FloatWithTimestamp,
"canhrFuelUsed": FloatWithTimestamp,
"canSpeed": FloatWithTimestamp,
"canFuel": FloatWithTimestamp,
"canRawFuel": FloatWithTimestamp,
"canAxleNumber": FloatWithTimestamp,
"canAxleWeight": FloatWithTimestamp,
"canEngineCoolantTemperature": FloatWithTimestamp,
"canEngineHours": FloatWithTimestamp,
"canFuelEconomy": FloatWithTimestamp,
"canWheelSpeed": FloatWithTimestamp,
"cargoWeight": FloatWithTimestamp,
"checkEngineWarning": BooleanWithTimestamp,
"clutchPedalState": BooleanWithTimestamp,
"cruiseControlState": LongWithTimestamp,
"deltaFuelUsed": FloatWithTimestamp,
"engineCoolantLevel": FloatWithTimestamp,
"engineCoolantPressure": FloatWithTimestamp,
"engineFuelType": LongWithTimestamp,
"engineOilLevel": FloatWithTimestamp,
"engineOilPressure": FloatWithTimestamp,
"engineOilTemperature": FloatWithTimestamp,
"enginePercentLoad": FloatWithTimestamp,
"engineRunTime": FloatWithTimestamp,
"engineThrottlePosition": FloatWithTimestamp,
"engineIdleTime": FloatWithTimestamp,
"engineWorkTime": FloatWithTimestamp,
"fuelDeliveryPressure": FloatWithTimestamp,
"gear": StringWithTimestamp,
"intakeAirTemperature": FloatWithTimestamp,
"massAirFlow": FloatWithTimestamp,
"oilLifeRemaining": FloatWithTimestamp,
"overweight": BooleanWithTimestamp,
"parkingBrakeSwitch": BooleanWithTimestamp,
"seatBeltDriver": BooleanWithTimestamp,
"seatBeltPassenger": BooleanWithTimestamp,
"seatOccupiedDriver": BooleanWithTimestamp,
"seatOccupiedPassenger": BooleanWithTimestamp,
"serviceNowWarning": BooleanWithTimestamp,
"tirePressureWarning": BooleanWithTimestamp,
"tirePressurePlacardFront": FloatWithTimestamp,
"tirePressurePlacardRear": FloatWithTimestamp,
"tireLocation": StringWithTimestamp,
"tractionControl": BooleanWithTimestamp,
"tractionControlBrake": BooleanWithTimestamp,
"tractionControlPowerTrain": BooleanWithTimestamp,
"transmissionOilTemperature": FloatWithTimestamp,
"washerFluidLevel": FloatWithTimestamp,
"waterInFuel": BooleanWithTimestamp,
"canFuelConsumption": FloatWithTimestamp,
"frontLeftDoorOpen": BooleanWithTimestamp,
"frontRightDoorStatus": BooleanWithTimestamp,
"hoodOpen": BooleanWithTimestamp,
"rearLeftDoorOpen": BooleanWithTimestamp,
"rearRightDoorOpen": BooleanWithTimestamp,
"trunkOpen": BooleanWithTimestamp,
"canProgramNumber": LongWithTimestamp,
"cruiseControlActive": BooleanWithTimestamp,
"retarderTorqueMode": IntWithTimestamp,
"actualRetarderLevel": FloatWithTimestamp,
"nonEngineRetarderSelectionLevel": FloatWithTimestamp,
"canAxleWeights": [CanAxleWeightsMapWithTimestamp],
"tirePressure": [TirePressureMapWithTimestamp],
"tirePressureStatus": [
  TirePressureStatusMapWithTimestamp
]
}

ChangeVehicleGroupsInput

Fields
Input Field Description
removeGroupIds - [UUID]
addGroupIds - [UUID]
Example
{
"removeGroupIds": [
  "e7953481-1c18-4b61-bcab-93ccb865abda"
],
"addGroupIds": [
  "e7953481-1c18-4b61-bcab-93ccb865abda"
]
}

ChangeVehicleGroupsOutput

Fields
Field Name Description
vehicleId - UUID
removedGroupIds - [UUID]
addedGroupIds - [UUID]
Example
{
"vehicleId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"removedGroupIds": [
  "e7953481-1c18-4b61-bcab-93ccb865abda"
],
"addedGroupIds": [
  "e7953481-1c18-4b61-bcab-93ccb865abda"
]
}

CommonFormat

Fields
Field Name Description
vehicleId - UUID
vehicle - Vehicle
timestamp - DateTime Snapshot date and time in UTC
gps - Gps GPS-originated data
ignition - Ignition Ignition-related
driver - Driver DriverId and related
canBus - CanBus Data items read from vehicle CAN bus
driverBehaviour - DriverBehaviour Data items related to driver behaviour
temperatures - Temperatures Temperatures measured by sensor (degrees C)
fleetMetaSensors - FleetMetaSensors
fuel - Fuel Fuel (probe-originated) and related fields
misc - Misc Various data items
locationTimestamp - DateTime Local timestamp, based on current GPS coordinates
locationTimeZone - String Local timezone, based on current GPS coordinates
Example
{
"vehicleId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"vehicle": Vehicle,
"timestamp": "2007-12-03T10:15:30Z",
"gps": Gps,
"ignition": Ignition,
"driver": Driver,
"canBus": CanBus,
"driverBehaviour": DriverBehaviour,
"temperatures": Temperatures,
"fleetMetaSensors": FleetMetaSensors,
"fuel": Fuel,
"misc": Misc,
"locationTimestamp": "2007-12-03T10:15:30Z",
"locationTimeZone": "xyz789"
}

Crash

Description

Crash data. This is caused by a 'high G event'. These values are normally '1'. It may be worth considering have a generic events flag base enum that would contain CRASH in this event.

Fields
Field Name Description
crashId - Long The crash id.
severity - Long The crash severity.
Example
{"crashId": {}, "severity": {}}

CrashWithTimestamp

Description

Crash data. This is caused by a 'high G event'. These values are normally '1'. It may be worth considering have a generic events flag base enum that would contain CRASH in this event.

Fields
Field Name Description
crashId - LongWithTimestamp The crash id.
severity - LongWithTimestamp The crash severity.
Example
{
"crashId": LongWithTimestamp,
"severity": LongWithTimestamp
}

CreateGeofenceInput

Fields
Input Field Description
name - String
address - AddressInput
color - String

HEX code, example: 003366 (^([a-fA-F0-9]{6})$)

description - String
email - String
geojson - JSON

geojson Feature format ( https://datatracker.ietf.org/doc/html/rfc7946#section-3.2). Collections not supported.

phone - String
Example
{
"name": "abc123",
"address": AddressInput,
"color": "abc123",
"description": "abc123",
"email": "xyz789",
"geojson": {},
"phone": "xyz789"
}

CreatePersonInput

Description

Person mutation parameter, containing values to be changed and field mask to enforce the changes

Fields
Input Field Description
email - String
firstName - String
lastName - String
licenseNumber - String
licenseIssuedIn - String
employeeId - String
isDriver - Boolean
Example
{
"email": "abc123",
"firstName": "xyz789",
"lastName": "abc123",
"licenseNumber": "xyz789",
"licenseIssuedIn": "xyz789",
"employeeId": "abc123",
"isDriver": true
}

CustomField

Fields
Field Name Description
name - String! Field name
value - String Custom field value
Example
{
"name": "abc123",
"value": "xyz789"
}

CustomFieldInput

Fields
Input Field Description
name - String!

Field name

value - String

Custom field value

Example
{
"name": "abc123",
"value": "xyz789"
}

DateTime

Example
"2007-12-03T10:15:30Z"

DayOfWeek

Values
Enum Value Description

MONDAY

TUESDAY

WEDNESDAY

THURSDAY

FRIDAY

SATURDAY

SUNDAY

Example
"MONDAY"

Device

Fields
Field Name Description
id - UUID!
serial - String
deviceTypeKey - String
enabled - Boolean
phoneNumber - String
Example
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda",
"serial": "abc123",
"deviceTypeKey": "abc123",
"enabled": false,
"phoneNumber": "xyz789"
}

Driver

Description

DriverId and related

Fields
Field Name Description
driverId - String Canonical driver ID (required by app backend to be present for all HW types)
iButton - String Serial number of IButton (bytes reordered to match the actual value printed on some keys), without Dallas family code and checksum
oneWire - String Unaltered 1wire sentence containing IButton serial number (without reordered bytes), Dallas family code and checksum
rfidIButton - Long Decimal form of RFID card serial number (4 highest bytes) read with card reader that pretends to be an IButton.
rfidIButtonHex - String Hexadecimal form of the previous.
rfidIButtonReversed - Long Decimal form of RFID card serial number (4 lowest bytes), with bytes reordered (similarly to IButton), read with card reader that pretends to be an IButton.
rfidIButtonReversedHex - String Hexadecimal form of the previous
rfid - Long Serial number of RFID card (read with RS232 reader), also supports 7byte serial numbers. Decimal form
rfidHex - String Hexadecimal form of the previous
Example
{
"driverId": "abc123",
"iButton": "abc123",
"oneWire": "xyz789",
"rfidIButton": {},
"rfidIButtonHex": "abc123",
"rfidIButtonReversed": {},
"rfidIButtonReversedHex": "abc123",
"rfid": {},
"rfidHex": "abc123"
}

DriverBehaviour

Description

Data items related to driver behaviour

Fields
Field Name Description
driverBehaviourType - DriverBehaviourType Enum with different behaviour types
driverBehaviourValue - Float
Example
{
"driverBehaviourType": "DRIVER_BEHAVIOUR_TYPE_UNKNOWN",
"driverBehaviourValue": 123.45
}

DriverBehaviourType

Values
Enum Value Description

DRIVER_BEHAVIOUR_TYPE_UNKNOWN

HARSH_ACCELERATION

HARSH_BRAKING

HARSH_CORNERING

TAILGATING

STOP_SIGN_VIOLATION

SPEED_SIGN_VIOLATION

LANE_DRIFT

DISTRACTED_DRIVING

DROWSY_DRIVING

FORWARD_COLLISION

DISTRACTED_PHONE

MAX_SPEED_EXCEEDED

Example
"DRIVER_BEHAVIOUR_TYPE_UNKNOWN"

DriverBehaviourTypeWithTimestamp

Fields
Field Name Description
timestamp - Long Timestamp indicating last appearance of value in record
changeTimestamp - Long Timestamp indicating last change time
value - DriverBehaviourType DriverBehaviourType value
Example
{
"timestamp": {},
"changeTimestamp": {},
"value": "DRIVER_BEHAVIOUR_TYPE_UNKNOWN"
}

DriverBehaviourWithTimestamp

Fields
Field Name Description
driverBehaviourType - DriverBehaviourTypeWithTimestamp
driverBehaviourValue - FloatWithTimestamp
Example
{
"driverBehaviourType": DriverBehaviourTypeWithTimestamp,
"driverBehaviourValue": FloatWithTimestamp
}

DriverData

Fields
Field Name Description
driverId - UUID
Example
{
"driverId": "e7953481-1c18-4b61-bcab-93ccb865abda"
}

FleetMetaSensors

Fields
Field Name Description
sensors - [SensorMap]
Example
{"sensors": [SensorMap]}

FleetUserInfo

Fields
Field Name Description
userName - String
userId - String
fleetName - String
fleetId - String
Example
{
"userName": "abc123",
"userId": "xyz789",
"fleetName": "xyz789",
"fleetId": "abc123"
}

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
987.65

FloatWithTimestamp

Fields
Field Name Description
timestamp - Long Timestamp indicating last appearance of value in record
changeTimestamp - Long Timestamp indicating last change time
value - Float Numeric value
Example
{"timestamp": {}, "changeTimestamp": {}, "value": 987.65}

Fuel

Fields
Field Name Description
fuel - Float The canonical Fuel field, contains the amount of fuel in the fuel tank (sum of two tanks, in case of vehicles with two fuel tanks) in liters
rawFuel - [RawFuelMap] The raw (uncalibrated) value of the fuel probe in the fuel tanks, for certain device types
pulseCount - Long The impulse count of fuel flow meter
fuelLevel - [FuelLevelMap] Fuel level in percent
totalFuelEconomy - Float
fuelTankSize - Float
Example
{
"fuel": 123.45,
"rawFuel": [RawFuelMap],
"pulseCount": {},
"fuelLevel": [FuelLevelMap],
"totalFuelEconomy": 123.45,
"fuelTankSize": 123.45
}

FuelLevelMap

Fields
Field Name Description
key - Int
value - Float
Example
{"key": 123, "value": 123.45}

FuelLevelMapWithTimestamp

Fields
Field Name Description
key - Int
value - Float
timestamp - Long
changeTimestamp - Long
Example
{"key": 123, "value": 987.65, "timestamp": {}, "changeTimestamp": {}}

FuelWithTimestamp

Description

Fuel (probe-originated) and related fields

Fields
Field Name Description
fuel - FloatWithTimestamp The canonical Fuel field, contains the amount of fuel in the fuel tank (sum of two tanks, in case of vehicles with two fuel tanks) in liters
pulseCount - LongWithTimestamp The impulse count of fuel flow meter
totalFuelEconomy - FloatWithTimestamp
fuelTankSize - FloatWithTimestamp
rawFuel - [RawFuelMapWithTimestamp] The raw (uncalibrated) value of the fuel probe in the fuel tanks, for certain device types
fuelLevel - [FuelLevelMapWithTimestamp] Fuel level in percent
Example
{
"fuel": FloatWithTimestamp,
"pulseCount": LongWithTimestamp,
"totalFuelEconomy": FloatWithTimestamp,
"fuelTankSize": FloatWithTimestamp,
"rawFuel": [RawFuelMapWithTimestamp],
"fuelLevel": [FuelLevelMapWithTimestamp]
}

Geofence

Fields
Field Name Description
id - UUID!
version - Long!
createdAt - Long! UTC, unix epoch milliseconds
updatedAt - Long! UTC, unix epoch milliseconds
isDeleted - Boolean!
name - String
fleetId - UUID!
geojson - JSON geojson Feature format ( https://datatracker.ietf.org/doc/html/rfc7946#section-3.2). Collections not supported.
color - String HEX code, example: 003366 (^([a-fA-F0-9]{6})$)
phone - String
email - String
address - Address
description - String
Example
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda",
"version": {},
"createdAt": {},
"updatedAt": {},
"isDeleted": false,
"name": "abc123",
"fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"geojson": {},
"color": "xyz789",
"phone": "xyz789",
"email": "xyz789",
"address": Address,
"description": "xyz789"
}

GeofenceData

Fields
Field Name Description
geofenceIds - [UUID]
geofences - [Geofence] Use getGeofences query for geofences details
Example
{
"geofenceIds": [
  "e7953481-1c18-4b61-bcab-93ccb865abda"
],
"geofences": [Geofence]
}

GeofenceInput

Fields
Input Field Description
name - String
address - AddressInput
color - String

HEX code, example: 003366 (^([a-fA-F0-9]{6})$)

description - String
email - String
geojson - JSON

geojson Feature format ( https://datatracker.ietf.org/doc/html/rfc7946#section-3.2). Collections not supported.

phone - String
fieldMask - [GeofenceInputFields!]!
Example
{
"name": "xyz789",
"address": AddressInput,
"color": "abc123",
"description": "abc123",
"email": "xyz789",
"geojson": {},
"phone": "xyz789",
"fieldMask": ["name"]
}

GeofenceInputFields

Values
Enum Value Description

name

address

color

description

email

geojson

phone

Example
"name"

Gps

Description

GPS-originated data

Fields
Field Name Description
state - Boolean Sourced from A/V evaluation of GPRMC sentence, where available
latitude - Float The value here is arc minutes (degree * 60) (minutes)
longitude - Float The value here is arc minutes (degree * 60) (minutes)
direction - Float The direction the vehicle is heading in degrees
altitude - Float (meters)
speed - Float (km/h)
satellites - Long Number of satellites used
hdop - Float horizontal dilution of precision
Example
{
"state": true,
"latitude": 987.65,
"longitude": 987.65,
"direction": 123.45,
"altitude": 987.65,
"speed": 123.45,
"satellites": {},
"hdop": 123.45
}

GpsWithTimestamp

Fields
Field Name Description
state - BooleanWithTimestamp
latitude - FloatWithTimestamp
longitude - FloatWithTimestamp
direction - FloatWithTimestamp
altitude - FloatWithTimestamp
speed - FloatWithTimestamp
satellites - IntWithTimestamp
hdop - FloatWithTimestamp
Example
{
"state": BooleanWithTimestamp,
"latitude": FloatWithTimestamp,
"longitude": FloatWithTimestamp,
"direction": FloatWithTimestamp,
"altitude": FloatWithTimestamp,
"speed": FloatWithTimestamp,
"satellites": IntWithTimestamp,
"hdop": FloatWithTimestamp
}

Group

Fields
Field Name Description
id - UUID!
version - Long!
createdAt - Long!
updatedAt - Long!
name - String
fleetId - UUID!
parentId - UUID
externalId - String
description - String
isOwn - Boolean
vehicleIds - [UUID]
assignedVehicles - [Vehicle]
Example
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda",
"version": {},
"createdAt": {},
"updatedAt": {},
"name": "abc123",
"fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"parentId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"externalId": "abc123",
"description": "abc123",
"isOwn": true,
"vehicleIds": [
  "e7953481-1c18-4b61-bcab-93ccb865abda"
],
"assignedVehicles": [Vehicle]
}

Ignition

Description

Ignition-related

Fields
Field Name Description
engineStatus - Boolean
Example
{"engineStatus": true}

IgnitionWithTimestamp

Description

Ignition-related

Fields
Field Name Description
engineStatus - BooleanWithTimestamp
Example
{"engineStatus": BooleanWithTimestamp}

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

IntWithTimestamp

Fields
Field Name Description
timestamp - Long Timestamp indicating last appearance of value in record
changeTimestamp - Long Timestamp indicating last change time
value - Int Numeric value
Example
{"timestamp": {}, "changeTimestamp": {}, "value": 987}

JSON

Example
{}

Label

Fields
Field Name Description
id - UUID!
version - Long!
createdAt - Long! UTC, unix epoch milliseconds
updatedAt - Long! UTC, unix epoch milliseconds
isDeleted - Boolean!
name - String
fleetId - UUID!
Example
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda",
"version": {},
"createdAt": {},
"updatedAt": {},
"isDeleted": false,
"name": "abc123",
"fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda"
}

LatestData

Fields
Field Name Description
timestamp - Long
gps - Gps
gpsWithTimestamp - GpsWithTimestamp GPS location
odometer - FloatWithTimestamp CAN based last odometer reading
workingHours - FloatWithTimestamp
address - Address
speedLimit - SpeedLimit
geofenceData - GeofenceData
metaSensorData - [SensorData]
ptoHoursData - LongWithTimestamp
driverData - DriverData
canBus - CanBus Data items read from vehicle CAN bus
canBusWithTimestamp - CanBusWithTimestamp Data items read from vehicle CAN bus with last timestamp
ignition - Ignition Ignition-related
ignitionWithTimestamp - IgnitionWithTimestamp Ignition-related with last timestamp
driverBehaviour - DriverBehaviour Driver behaviour
driverBehaviourWithTimestamp - DriverBehaviourWithTimestamp Driver behaviour with last timestamp
temperatures - Temperatures Temperatures measured by sensor (degrees C)
temperaturesWithTimestamp - TemperaturesWithTimestamp Temperatures measured by sensor (degrees C) with last timestamp
fuel - Fuel Fuel (probe-originated) and related fields
fuelWithTimestamp - FuelWithTimestamp Fuel (probe-originated) and related fields with last timestamp
misc - Misc Various data items
miscWithTimestamp - MiscWithTimestamp Various data items with timestamp
crash - Crash Crash data. This is caused by a 'high G event'.
crashWithTimestamp - CrashWithTimestamp Crash data with timestamp. This is caused by a 'high G event'.
Example
{
"timestamp": {},
"gps": Gps,
"gpsWithTimestamp": GpsWithTimestamp,
"odometer": FloatWithTimestamp,
"workingHours": FloatWithTimestamp,
"address": Address,
"speedLimit": SpeedLimit,
"geofenceData": GeofenceData,
"metaSensorData": [SensorData],
"ptoHoursData": LongWithTimestamp,
"driverData": DriverData,
"canBus": CanBus,
"canBusWithTimestamp": CanBusWithTimestamp,
"ignition": Ignition,
"ignitionWithTimestamp": IgnitionWithTimestamp,
"driverBehaviour": DriverBehaviour,
"driverBehaviourWithTimestamp": DriverBehaviourWithTimestamp,
"temperatures": Temperatures,
"temperaturesWithTimestamp": TemperaturesWithTimestamp,
"fuel": Fuel,
"fuelWithTimestamp": FuelWithTimestamp,
"misc": Misc,
"miscWithTimestamp": MiscWithTimestamp,
"crash": Crash,
"crashWithTimestamp": CrashWithTimestamp
}

Long

Example
{}

LongWithTimestamp

Fields
Field Name Description
timestamp - Long Timestamp indicating last appearance of value in record
changeTimestamp - Long Timestamp indicating last change time
value - Long Numeric value
Example
{"timestamp": {}, "changeTimestamp": {}, "value": {}}

MetaSensor

Fields
Field Name Description
name - String
key - Int
Example
{"name": "abc123", "key": 123}

Misc

Description

Various data items

Fields
Field Name Description
power - Float External power supply voltage (commonly the vehicle power system)
Example
{"power": 987.65}

MiscWithTimestamp

Description

Various data items

Fields
Field Name Description
power - FloatWithTimestamp External power supply voltage (commonly the vehicle power system)
Example
{"power": FloatWithTimestamp}

Person

Fields
Field Name Description
id - UUID!
version - Long!
createdAt - Long!
updatedAt - Long!
isDeleted - Boolean!
isUser - Boolean!
isDriver - Boolean!
fleetId - UUID!
email - String
firstName - String
lastName - String
globalUserId - String
licenseNumber - String
licenseIssuedIn - String
employeeId - String
customFields - [CustomField]
Example
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda",
"version": {},
"createdAt": {},
"updatedAt": {},
"isDeleted": true,
"isUser": true,
"isDriver": false,
"fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"email": "xyz789",
"firstName": "xyz789",
"lastName": "xyz789",
"globalUserId": "abc123",
"licenseNumber": "xyz789",
"licenseIssuedIn": "xyz789",
"employeeId": "xyz789",
"customFields": [CustomField]
}

PersonInputFields

Description

The set of person input field names supported in fieldmask

Values
Enum Value Description

email

first_name

last_name

license_number

license_issued_in

employee_id

is_driver

Example
"email"

PlatformEntity

Fields
Field Name Description
id - UUID!
version - Long!
createdAt - Long!
updatedAt - Long!
isDeleted - Boolean!
Possible Types
PlatformEntity Types

Vehicle

Person

Geofence

Label

WorkSchedule

Example
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda",
"version": {},
"createdAt": {},
"updatedAt": {},
"isDeleted": true
}

RawFuelMap

Fields
Field Name Description
key - Int
value - Float
Example
{"key": 123, "value": 123.45}

RawFuelMapWithTimestamp

Fields
Field Name Description
key - Int
value - Float
timestamp - Long
changeTimestamp - Long
Example
{"key": 987, "value": 987.65, "timestamp": {}, "changeTimestamp": {}}

Rule

Fields
Field Name Description
id - UUID!
name - String
enabled - Boolean
ruleType - String
vehicles - RuleVehicles
geofenceIds - [UUID]
Example
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda",
"name": "abc123",
"enabled": false,
"ruleType": "xyz789",
"vehicles": RuleVehicles,
"geofenceIds": [
  "e7953481-1c18-4b61-bcab-93ccb865abda"
]
}

RuleVehicles

Fields
Field Name Description
assignedVehicleIds - [UUID]
assignedGroupIds - [UUID]
assignedToAll - Boolean
Example
{
"assignedVehicleIds": [
  "e7953481-1c18-4b61-bcab-93ccb865abda"
],
"assignedGroupIds": [
  "e7953481-1c18-4b61-bcab-93ccb865abda"
],
"assignedToAll": true
}

Sensor

Fields
Field Name Description
name - String Sensor name
source - String Input source for sensor
Example
{
"name": "abc123",
"source": "abc123"
}

SensorData

Description

Datapoint from sensor

Fields
Field Name Description
key - Int
value - String
timestamp - Long
changeTimestamp - Long
Example
{
"key": 123,
"value": "abc123",
"timestamp": {},
"changeTimestamp": {}
}

SensorMap

Fields
Field Name Description
key - Int
value - String
Example
{"key": 123, "value": "xyz789"}

SpeedLimit

Fields
Field Name Description
placeId - String Place id, originated from geo info provider
limit - Int Speed limit (KMH)
Example
{"placeId": "abc123", "limit": 987}

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
"xyz789"

StringWithTimestamp

Fields
Field Name Description
timestamp - Long Timestamp indicating last appearance of value in record
changeTimestamp - Long Timestamp indicating last change time
value - String String value
Example
{
"timestamp": {},
"changeTimestamp": {},
"value": "abc123"
}

TemperatureMap

Fields
Field Name Description
key - Int Numeric index
value - Float
Example
{"key": 123, "value": 123.45}

TemperatureMapWithTimestamp

Fields
Field Name Description
key - Int
value - Float
timestamp - Long
changeTimestamp - Long
Example
{"key": 123, "value": 123.45, "timestamp": {}, "changeTimestamp": {}}

TemperatureSensorMap

Fields
Field Name Description
key - Int Numeric index
value - String
Example
{"key": 987, "value": "xyz789"}

TemperatureSensorMapWithTimestamp

Fields
Field Name Description
key - Int
value - String
timestamp - Long
changeTimestamp - Long
Example
{
"key": 987,
"value": "abc123",
"timestamp": {},
"changeTimestamp": {}
}

Temperatures

Description

Temperatures measured by sensor (degrees C)

Fields
Field Name Description
temperatures - [TemperatureMap] Key value map with index and temperature value
temperatureSensorIds - [TemperatureSensorMap] Key value map with index and temperature sensor name
Example
{
"temperatures": [TemperatureMap],
"temperatureSensorIds": [TemperatureSensorMap]
}

TemperaturesWithTimestamp

Description

Temperatures measured by sensor (degrees C)

Fields
Field Name Description
temperatures - [TemperatureMapWithTimestamp] Key value map with index and temperature value
temperatureSensorIds - [TemperatureSensorMapWithTimestamp] Key value map with index and temperature sensor name
Example
{
"temperatures": [TemperatureMapWithTimestamp],
"temperatureSensorIds": [
  TemperatureSensorMapWithTimestamp
]
}

TirePressureMap

Fields
Field Name Description
key - String
value - Float
Example
{"key": "xyz789", "value": 987.65}

TirePressureMapWithTimestamp

Fields
Field Name Description
key - String
value - Float
timestamp - Long
changeTimestamp - Long
Example
{
"key": "abc123",
"value": 987.65,
"timestamp": {},
"changeTimestamp": {}
}

TirePressureStatusMap

Fields
Field Name Description
key - String
value - String
Example
{
"key": "abc123",
"value": "xyz789"
}

TirePressureStatusMapWithTimestamp

Fields
Field Name Description
key - String
value - String
timestamp - Long
changeTimestamp - Long
Example
{
"key": "xyz789",
"value": "xyz789",
"timestamp": {},
"changeTimestamp": {}
}

UUID

Example
"e7953481-1c18-4b61-bcab-93ccb865abda"

UnassignDriverInput

Fields
Input Field Description
vehicleId - UUID!

Id of the vehicle

driverId - UUID

Id of the driver, if defined then driver assignment will be ended only if input driverId matches the driverId of the assignment

endTimestamp - Long

UTC epoch timestamp in milliseconds of the driver assignment end. If omitted defaults to now. Is allowed up to 10 days into the past

Example
{
"vehicleId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"driverId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"endTimestamp": {}
}

UpdatePersonInput

Description

Person mutation parameter, containing values to be changed and field mask to enforce the changes

Fields
Input Field Description
email - String
firstName - String
lastName - String
licenseNumber - String
licenseIssuedIn - String
employeeId - String
isDriver - Boolean
fieldMask - [PersonInputFields!]!
Example
{
"email": "xyz789",
"firstName": "xyz789",
"lastName": "xyz789",
"licenseNumber": "xyz789",
"licenseIssuedIn": "abc123",
"employeeId": "xyz789",
"isDriver": false,
"fieldMask": ["email"]
}

Vehicle

Fields
Field Name Description
id - UUID!
version - Long!
createdAt - Long!
updatedAt - Long!
isDeleted - Boolean!
name - String
fleetId - UUID!
vin - String
licensePlate - String
make - String
model - String
year - Int
latestData - LatestData
lastData - CommonFormat Use latestData instead
assignedGroups - [Group]
assignedDevices - [Device] List of devices, connected to a vehicle. Device details (except ID) are hidden (null) if the current user has no data access to the device.
assignedLabels - [Label]
lastOdometer - Float Latest odometer reading Use odometer from latestData instead
lastWorkingHours - Float Use workingHours from latestData instead
deactivated - Boolean!
vehicleType - VehicleType
customFields - [CustomField]
workSchedule - WorkSchedule
Example
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda",
"version": {},
"createdAt": {},
"updatedAt": {},
"isDeleted": true,
"name": "xyz789",
"fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"vin": "xyz789",
"licensePlate": "xyz789",
"make": "abc123",
"model": "abc123",
"year": 123,
"latestData": LatestData,
"lastData": CommonFormat,
"assignedGroups": [Group],
"assignedDevices": [Device],
"assignedLabels": [Label],
"lastOdometer": 987.65,
"lastWorkingHours": 987.65,
"deactivated": true,
"vehicleType": VehicleType,
"customFields": [CustomField],
"workSchedule": WorkSchedule
}

VehicleInput

Description

Vehicle mutation parameter, containing values to be changed and field mask to enforce the changes

Fields
Input Field Description
name - String
vin - String
licensePlate - String
make - String
model - String
year - Int
deactivated - Boolean
vehicleTypeId - UUID
fieldMask - [VehicleInputFields!]!

A list of entity field names to specify which changes to apply for core entity.

Example: [name, license_plate]

Example
{
"name": "abc123",
"vin": "xyz789",
"licensePlate": "xyz789",
"make": "xyz789",
"model": "xyz789",
"year": 987,
"deactivated": false,
"vehicleTypeId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"fieldMask": ["name"]
}

VehicleInputFields

Description

The set of vehicle input field names supported in fieldmask

Values
Enum Value Description

name

vin

license_plate

make

model

year

deactivated

vehicle_type_id

Example
"name"

VehicleType

Fields
Field Name Description
id - UUID!
name - String
Example
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda",
"name": "abc123"
}

WorkSchedule

Fields
Field Name Description
id - UUID!
version - Long!
createdAt - Long! UTC, unix epoch milliseconds
updatedAt - Long! UTC, unix epoch milliseconds
isDeleted - Boolean!
name - String
fleetId - UUID!
isDefault - Boolean Indicates that this is the fleet's default work schedule
beginGrace - Int Begin grace period, in seconds
endGrace - Int End grace period, in seconds
periods - [WorkSchedulePeriod]
Example
{
"id": "e7953481-1c18-4b61-bcab-93ccb865abda",
"version": {},
"createdAt": {},
"updatedAt": {},
"isDeleted": false,
"name": "xyz789",
"fleetId": "e7953481-1c18-4b61-bcab-93ccb865abda",
"isDefault": false,
"beginGrace": 987,
"endGrace": 987,
"periods": [WorkSchedulePeriod]
}

WorkSchedulePeriod

Fields
Field Name Description
weekday - DayOfWeek
begin - Int Time of day, represented as number of seconds since day start
duration - Int Duration in seconds
Example
{"weekday": "MONDAY", "begin": 987, "duration": 123}

WrappedReport

Fields
Field Name Description
reportId - String!
report - JSON
Example
{"reportId": "abc123", "report": {}}

WrappedReportInput

Fields
Input Field Description
reportId - String!
input - JSON!
Example
{"reportId": "xyz789", "input": {}}

WrappedReportInputs

Fields
Field Name Description
id - String
title - String
description - String
onlyFleetTimezone - Boolean
inputs - JSON
Example
{
"id": "abc123",
"title": "abc123",
"description": "xyz789",
"onlyFleetTimezone": false,
"inputs": {}
}