Application diagnosis

This API returns information about a user's application diagnosis. It can be used to determine whether the application settings are correct:

  • In a nominal state, the user's trips will be detected and recorded.

  • If the smartphone is not correctly configured, or if the user has not granted the proper accesses for the application, the trip recording may be altered.

When a user reports an issue with trip detection or recording, this API can help identify the most probable cause, which can greatly accelerate user support.

If you have your admin API key, you can try the API via this link.

Path parameters

Field
Type
Description

userId

string

Driver's unique identifier

Response

The table below summarizes the list of a driver application's diagnosis data.

Field
Type
Description

userInfo

User information

smartphoneData

Information about the user's smartphone

lastUpdate

string

Last update of application diagnostic data

Date format: YYYY-MM-dd’T’HH:mm:ss.SSSZ

status

string

Global smartphone status, which indicates if the mobile application is configured to record user trips (see the definition).

Allowed values: VALID, WARNING, ERROR

comments

array[object]

Short description of mobile application configuration status. See Comment

sensors

Sensors status

permissions

Permissions status

settings

Additional settings status

events

Events related to user actions

UserInfo

The table below summarizes the content of the userInfo object.

Field
Type
Description

userId

string

User unique identifier

firstname

string

User firstname

lastname

string

User lastname

companyName

string

Company name

registerDate

string

User registration date

Date format: YYYY-MM-dd’T’HH:mm:ss.SSSZ

firstTrip

string

Date of the first trip

Date format: YYYY-MM-dd’T’HH:mm:ss.SSSZ

lastTrip

string

Date of the last trip

Date format: YYYY-MM-dd’T’HH:mm:ss.SSSZ

SmartphoneData

The table below summarizes the content of the smartphoneData object.

Field
Type
Description

phoneModel

string

Device model name

appBuildNumber

string

Application build number

osVersion

string

Version of the operating system

osType

string

Platform: iOS or Android

sdkVersion

string

Version of the DriveKit SDK

phoneLanguage

string

Phone language

rawPhoneLanguage

string

Raw phone language

Comments

The table below summarizes the content of the comments object.

Field
Type
Description

code

integer

Comment identifier

comment

string

Short description (in English)

See Known Comments

Sensors

The table below summarizes the content of the sensors object.

Field
Type
Description

location

string

Location sensor status

Allowed values: ENABLED, DISABLED, UNKNOWN

bluetooth

string

Bluetooth sensor status

Allowed values: ENABLED, DISABLED, UNKNOWN

Permissions

The table below summarizes the content of the permissions object.

Field
Type
Description

location

string

Location permission status

Allowed values: GRANTED, DENIED, UNKNOWN

bluetooth

string

Bluetooth permission status

Allowed values: GRANTED, DENIED, UNKNOWN

activity

string

Activity permission status

Allowed values: GRANTED, DENIED, UNKNOWN

notification

string

Notification permission status

Allowed values: GRANTED, DENIED, UNKNOWN

Settings

The table below summarizes the content of the settings object.

Field
Type
Description

permissionAutodelete

string

Status of permission revocation functionality in case of prolonged inactivity (Android only).

Allowed values: ENABLED, DISABLED, UNKNOWN, NOT_APPLICABLE

batteryOptimisation

string

Battery optimization status (Android only)

Allowed values: ENABLED, DISABLED, UNKNOWN, NOT_APPLICABLE

lowPowerMode

string

Low power mode status (iOS only)

Allowed values: ENABLED, DISABLED, UNKNOWN, NOT_APPLICABLE

Events

The table below summarizes the content of the events object.

Field
Type
Description

device

string

Status indicating whether the phone is on

Allowed values: TURNED_ON, TURNED_OFF, UNKNOWN

app

string

Status indicating whether the application is installed on the phone

Allowed values: INSTALLED, UNINSTALLED, UNKNOWN

user

string

Status indicating whether the user is logged in

Allowed values: LOGGED_IN, LOGGED_OUT, UNKNOWN

Definitions

Global status

The global status value depends on the status of each individual parameter:

Status
Description

ERROR

At least one of the parameters is in CRITICAL state (🔴).

WARNING

At least one of the parameters is in WARNING state (🟡), but no parameter is in CRITICAL state (🔴).

VALID

No parameter is in CRITICAL (🔴) or WARNING states (🟡).

Note:

We chose not to consider parameters with an UNKNOWN or NOT_APPLICABLE status in the global status. More informations about the global status can be retrieved in the comments section.

Individual parameters criticality

The criticality of each parameter is determined by its status and, in some cases, is specific to the OS of the smartphone. We define 3 levels of criticality:

Level
Description

🔴 CRITICAL

Trip detection and/or recording is not possible

🟡 WARNING

Trip detection and/or recording is impaired, and trips are likely to be lost

🟢 MINOR

Trip detection and/or recording should work as expected

The table below describes, for each parameter, the level of impact of a given status on trip detection and/or recording:

Type
Parameter
Criticality
Status

sensors

location

🔴

DISABLED

sensors

bluetooth

🟡

DISABLED

permissions

location

🔴

DENIED

permissions

bluetooth

🟡

DENIED

permissions

activity

🟡

DENIED

permissions

notification

🟢

GRANTED, DENIED

settings

permissionAutodelete

🟢

ENABLED, DISABLED

settings

batteryOptimisation

🟡

ENABLED

settings

lowPowerMode

🟢

ENABLED, DISABLED

events

device

🔴

TURNED_OFF

events

app

🔴

UNINSTALLED

events

user

🔴

LOGGED_OUT

Known Comments

The table below gives more details about the known values for the comments object. We encourage you to use the comment code to identify the messages, as the comment value might change in the future.

Code
Condition
Comment

0

No issue detected

Trip detection and/or recording should work as expected

1

At least one event in warning state

Trip detection and/or recording is impaired, and trips are likely to be lost

2

At least one event in error state

Trip detection and/or recording is not possible

3

The lastUpdate is more than 7 days in the past

The data has not been updated for more than 7 days. It is not possible to guarantee that the current application settings are correct.

4

The location sensor status OR the location permission status are UNDEFINED

Location sensor status or the permission to access the location sensor could not be retrieved. It is not possible to determine if the application is running normally.

5

Multiple phone models were used at the same time in the last 30 days

Shared account detected. There is no guarantee that the diagnosis data will correspond to the driver’s current smartphone.

Last updated