Master - Management

Get user account of current Master

This API is used to get the accounts of current Master,

query with account created time, email, ID, last log in time, organization ID, role, account status, username.

Securityapi key and Authorization
Request
query Parameters
keyword
string

Query the user with keywords, which apply with the name or email of account

role
string

The user role to query, multiple role should seprate with a comma

4 = SI_Admin 5 = SI_Viewer

Example: role=4,5
status
string

The user status to query, multiple status should seprate with a comma

0 = Pending 1 = Active 2 = Deactive

Example: status=0,1,2
sort
string

The field to sort. Available fields are: name, login, created, updated

order
string (Order)

Enum of order

ASC

DESC

Enum: "ASC" "DESC"
offset
integer <int32>
Default: 0

For pagination offset

limit
integer <int32>
Default: 5

For pagination limit

Responses
200

OK

get/portal/V1/get-users
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string",
  • "count": 0,
  • "data": [
    ]
}

Add new master account

This API is to add a new master account, service will send an activation email to allow the user to activate its account.

User’s email address, role of the user, user name, are required

Securityapi key and Authorization
Request
Request Body schema:
email
required
string <email> non-empty
mode
required
string non-empty

fix value: si

role
required
integer <int32> (MasterUserRole)

4 = SI_Admin

5 = SI_Viewer

Enum: 4 5
userName
required
string [ 1 .. 42 ] characters
Responses
200

OK

post/portal/V1/add-user
Request samples
{
  • "email": "user@example.com",
  • "mode": "si",
  • "role": 4,
  • "userName": "string"
}
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string",
  • "id": 0
}

Get user account of Fleet

This API is used to get the accounts of Fleet, information of the account:

created time, ID, user email address, last log in time, organization ID, user role, account status, and username.

Securityapi key and Authorization
Request
query Parameters
order
string (Order)

Enum of order

ASC

DESC

Enum: "ASC" "DESC"
offset
integer <int32>
Default: 0

For pagination offset

limit
integer <int32>
Default: 5

For pagination limit

fleetId
required
integer <int32>

The fleet id, A.K.A: organizaion id

keyword
string

Query the fleet user with keywords, which apply with the name or email of account

role
string
Example: role=4,5
status
string

The fleet user status to query, multiple status should seprate with a comma

0 = Pending 1 = Active 2 = Deactive

Example: status=0,1,2
sort
string

The field to sort. Available fields are: name, login, created, updated

Responses
200

OK

get/portal/V1/get-fleet-accounts
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string",
  • "count": 0,
  • "data": [
    ]
}

Add new fleet account

This API is to add a new fleet account, service will send an activation email to allow the user to activate its account.

User’s email address, role of the user, user name, and fleet ID are required.

Securityapi key and Authorization
Request
Request Body schema:
email
required
string <email> non-empty
role
required
integer <int32> (FleetUserRole)

2 = Fleet_Admin

3 = Fleet_Operator

Enum: 2 3
userName
required
string [ 1 .. 42 ] characters
id
required
integer <int32>

The fleet id

Responses
200

OK

post/portal/V1/add-fleet-account
Request samples
{
  • "email": "user@example.com",
  • "role": 2,
  • "userName": "string",
  • "id": 0
}
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string",
  • "id": 0
}

Edit fleet account

This API is used to edit an existed fleet account with fleet ID, user role, and username.

Securityapi key and Authorization
Request
Request Body schema:
id
required
integer <int32>

The fleet id

role
required
integer <int32> (FleetUserRole)

2 = Fleet_Admin

3 = Fleet_Operator

Enum: 2 3
userName
required
string [ 1 .. 42 ] characters
Responses
200

OK

post/portal/V1/edit-fleet-account
Request samples
{
  • "id": 0,
  • "role": 2,
  • "userName": "string"
}
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string"
}

Change status of fleet account

This API is to change status of a fleet account, to active and deactivate or delete account

Securityapi key and Authorization
Request
query Parameters
id
required
integer <int32>

The user id

status
required
integer <int32> (UserStatus)

Use for API request and output internal user statu please reference with SysUserStatus__

0 = pending

1 = active

2 = deactive

Enum: 0 1 2
Responses
200

OK

post/portal/V1/change-fleet-account-status
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string"
}

Change status of Master account

This API is to change status of a master account, to active and deactivate or delete account

Securityapi key and Authorization
Request
Request Body schema: multipart/form-data
id
required
integer <int32>

The user id

status
required
integer <int32> (UserStatus)

Use for API request and output internal user statu please reference with SysUserStatus__

0 = pending

1 = active

2 = deactive

Enum: 0 1 2
Responses
200

OK

post/portal/V1/change-user-status
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string"
}

Get inventory list

This API is used to list the device in Master's inventory (all devices associated with this master account).

Devices’ information will be retrieved, for example: IMEI 1/2, software version, last recorded GPS information…etc.

Securityapi key and Authorization
Request
query Parameters
keyword
string

Query the inventory with keywords, which apply with IMEM or serial number

model
string

Query the inventory with models(SKU). Available model(SKU) are: K145,K145C,K165,K220,K245,K245C,K265. multiple model(SKU) should seprate with a comma"

offset
integer <int32>
Default: 0

For pagination offset

limit
integer <int32>
Default: 5

For pagination limit

Responses
200

OK

get/portal/V1/inventory/list
Response samples
application/json
{
  • "count": 0,
  • "data": [
    ]
}

Assign device into fleet

To assign devices to fleet. Multiple device ids are accepted.
The device will be moved from the master's inventory into the fleet.

Securityapi key and Authorization
Request
Request Body schema: multipart/form-data
id
required
integer <int32>

Which fleet id to assign, a.k.a organization id

planType
required
string

Plan type.
Available types are Standard , Pro , Advanced

vehicleType
required
string

Assign the device with initial vehicle type Available types are passenger , medium_vehicle , heavy_duty

deviceIds
required
string

The device id to assign. Multiple device ids are accepted, separate with a comma

region
required
string

Which region feature of AI function
Available regions are TW , US , EU , AU

Responses
200

OK

post/portal/V1/assign-devices-fleet
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string"
}

Get unassigned inventory list

This API is used to list devices in the Master inventory that have not been assigned to any fleet.

Securityapi key and Authorization
Request
query Parameters
keyword
string or null

Search for the device by serial number or IMEI.

plan
string or null

Search for the device by plan.
You can set multiple plans as search criteria at once, separated by commas.

Example: plan=Standard,Advanced,Pro
model
string or null

Search for the device by model.
You can set multiple models as search criteria at once, separated by commas.

Example: model=K245,K265
status
string or null

Search for the device by status.
You can set multiple status as search criteria at once, separated by commas.

Example: status=Online,Offline,Not_initiated
sort
string or null
Default: "serial_number"

The list of devices will be sorted based on what criteria.
Enum: [serial_number, recalls, camera_app_version, base_image_version, region_image_version, speedcam_version]

order
string (Order)

Enum of order

ASC

DESC

Enum: "ASC" "DESC"
page
integer or null <int32>
Default: 1

Which page

page_size
integer or null <int32> [ 1 .. 20 ]
Default: 10

Maximum number per page

Responses
200

OK

get/portal/V1/inventory/unassigned/list
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": 0,
  • "message": "string",
  • "build": "string",
  • "data": [
    ]
}

Get assigned inventory list

This API is used to list devices in the Master inventory that have been assigned to fleets.

Securityapi key and Authorization
Request
query Parameters
keyword
string or null

Search for the device by serial number or IMEI.

plan
string or null

Search for the device by plan.
You can set multiple plans as search criteria at once, separated by commas.

Example: plan=Standard,Advanced,Pro
model
string or null

Search for the device by model.
You can set multiple models as search criteria at once, separated by commas.

Example: model=K245,K265
status
string or null

Search for the device by status.
You can set multiple status as search criteria at once, separated by commas.

Example: status=Online,Offline,Not_initiated
sort
string or null
Default: "serial_number"

The list of devices will be sorted based on what criteria.
Enum: [serial_number, recalls, camera_app_version, base_image_version, region_image_version, speedcam_version]

order
string (Order)

Enum of order

ASC

DESC

Enum: "ASC" "DESC"
page
integer or null <int32>
Default: 1

Which page

page_size
integer or null <int32> [ 1 .. 20 ]
Default: 10

Maximum number per page

Responses
200

OK

get/portal/V1/inventory/assigned-to-fleets/list
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": 0,
  • "message": "string",
  • "build": "string",
  • "data": [
    ]
}

Autocomplete unassigned inventory list

This API is used to autocomplete search keywords for the unassigned inventory list.

Securityapi key and Authorization
Request
query Parameters
keyword
required
string >= 3 characters

Search for the device by serial number or IMEI.

Responses
200

OK

get/portal/V1/inventory/unassigned/auto-complete
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": 0,
  • "message": "string",
  • "build": "string",
  • "data": [
    ]
}

Autocomplete assigned inventory list

This API is used to autocomplete search keywords for the assigned inventory list.

Securityapi key and Authorization
Request
query Parameters
keyword
required
string >= 3 characters

Search for the device by serial number or IMEI.

Responses
200

OK

get/portal/V1/inventory/assigned-to-fleets/auto-complete
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": 0,
  • "message": "string",
  • "build": "string",
  • "data": [
    ]
}

Get fleet list

This API is used to get the fleets list under current account, including

How many account created in the fleet, account address, ID, created time, fleet ID, fleet name, phone number registered for the fleet, preferred timezone setting when system sends notification email or messages.

Securityapi key and Authorization
Request
query Parameters
order
string (Order)

Enum of order

ASC

DESC

Enum: "ASC" "DESC"
offset
integer <int32>
Default: 0

For pagination offset

limit
integer <int32>
Default: 5

For pagination limit

keyword
string

Query the fleet list with keywords, which apply with the name of fleet

Responses
200

OK

get/portal/V1/get-fleets
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string",
  • "count": 0,
  • "data": [
    ]
}

Get the information of fleet

This API is to get the information of a fleet, including

number of accounts created in the fleet, fleet name, fleet ID, fleet created time, email address of fleet owner, phone number of the fleet owner, preferred timezone setting when system sends notification email or messages.

Securityapi key and Authorization
Request
query Parameters
fleetId
required
string

The fleet id

Responses
200

OK

get/portal/V1/get-fleet
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string",
  • "data": [
    ]
}

Add a new fleet

This API is to add a new fleet

Securityapi key and Authorization
Request
Request Body schema:
fleetId
string or null
Deprecated

The name of fleet

We encourage the use of the new parameter name to replace the deprecated one, but we will continue to accept the deprecated parameter until the next revision is released.

name
required
string [ 1 .. 45 ] characters

The name of fleet

Use this parameter instead of the deprecated fleetId.

address
string or null
countryCode
string or null^\d$

telephone country code

notes
string or null
phoneNumber
string or null^\d$
Responses
200

OK

post/portal/V1/add-fleet
Request samples
{
  • "fleetId": "string",
  • "name": "string",
  • "address": "string",
  • "countryCode": "string",
  • "notes": "string",
  • "phoneNumber": "string"
}
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string",
  • "id": 0
}

Delete a fleet

Delete the fleet with the fleet Id

Securityapi key and Authorization
Request
Request Body schema: multipart/form-data
fleetId
required
integer <int32>
Responses
200

OK

post/portal/V1/delete-fleet
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string"
}

Edit fleet information

This API allows you to modify the basic information for the fleet include:

  • Name Id to display
  • country code for phone number
  • phone number
  • address
  • notes
  • timezone for notification
Securityapi key and Authorization
Request
Request Body schema:
id
required
integer <int32>

the fleet id, a.k.a organization id

fleetId
required
string [ 1 .. 42 ] characters

the display name ID of the fleet

address
string or null
countryCode
string or null^\d$
notes
string or null

remarks

phoneNumber
string or null^\d$
timezone_notification
string or null

System will apply the fleet's prefer timezone setting when sending notification email or messages

Responses
200

OK

post/portal/V1/edit-fleet
Request samples
{
  • "id": 0,
  • "fleetId": "string",
  • "address": "string",
  • "countryCode": "string",
  • "notes": "string",
  • "phoneNumber": "string",
  • "timezone_notification": "US/Eastern"
}
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string"
}

Configuration list of fleet.

Securityapi key and Authorization
Request
path Parameters
fleet_id
required
string
Responses
200

OK

get/portal/V1/fleet/{fleet_id}/configurations
Response samples
application/json
{
  • "current": {
    },
  • "default": {
    },
  • "custom": {
    }
}

Update the configuration of fleet.

This API can be used to modify the configuration of fleet, ensuring that each modification will overwrite the previous settings

This configuration relies on dynamic JSON input.

Securityapi key and Authorization
Request
path Parameters
fleet_id
required
string
Request Body schema:
object (Liveview)
object (EventSetting)
Responses
200

OK

post/portal/V1/fleet/{fleet_id}/configurations
Request samples
{
  • "liveview": {
    },
  • "event": {
    }
}

Device diagnostics

This API is to get device diagnostics result to allow administrators to quickly understand the health status of devices in online services.

Including when the issue was assigned to a technician, name of the customer, device ID, diagnostic ID, the reported issues, device model, device name, device serial number, and reported time.

Securityapi key and Authorization
Request
Request Body schema:
offset
integer or null <int32>
Default: 0

For pagination offset

limit
integer or null <int32>
Default: 5

For pagination limit

order
string (Order)

Enum of order

ASC

DESC

Enum: "ASC" "DESC"
keyword
string or null

Query the diagnostics result with keywords, which apply withserial number

model
string or null

Query the diagnostics result with models(SKU). Available model(SKU) are: K145,K145C,K165,K220,K245,K245C,K265. multiple model(SKU) should seprate with a comma

owner
string or null

Query the diagnostics result with fleet id(organization id). multiple fleet id should seprate with a comma

type
string or null

Available types are:needs_to_be_repaired, needs_attention

Responses
200

OK

post/portal/V1/diagnostics/list
Request samples
{
  • "offset": 0,
  • "limit": 5,
  • "order": "ASC",
  • "keyword": "string",
  • "model": "string",
  • "owner": "string",
  • "type": "string"
}
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string",
  • "total": 0,
  • "data": [
    ]
}

Get device list of fleet

This API is used to get the device list of fleet,

query with device IMEI, activated time, app version, base image version, CID, device ID, device name, fleet ID, fleet name, fist connected timestamp, group ID, installation position…etc.

Securityapi key and Authorization
Request
query Parameters
order
string (Order)

Enum of order

ASC

DESC

Enum: "ASC" "DESC"
offset
integer <int32>
Default: 0

For pagination offset

limit
integer <int32>
Default: 5

For pagination limit

fleet_id
string

The fleet id to query with

keyword
string

Query the device list with keywords, which apply with imei and serial number

sort
string

The field to sort. Available fields are: serial_number

status
string

The device status to query

Not_initiated Online Offline

Example: status=Not_initiated,Online,Offline
model
string

Query the device list with models(SKU). Available model(SKU) are: K145,K145C,K165,K220,K245,K245C,K265. multiple model(SKU) should seprate with a comma"

plan
string

Query the device list with plan types. Available plan types are: Standard, Pro, Advanced, Suspend

Example: plan=Standard,Pro,Advanced
Responses
200

OK

get/portal/V1/get-group-device-list
Response samples
application/json
{
  • "count": 0,
  • "data": [
    ]
}

To update device plan type and vehicle type

This API is to update device plan type and vehicle type. Update vehicle type will be deprecated in the future

Securityapi key and Authorization
Request
Request Body schema:
deviceIds
required
string non-empty

The device id to update. Multiple device ids are accepted, separate with a comma

vehicleType
required
string non-empty

The vehicle types. Update vehicle type will be deprecated in the future, please refer to VisionmaxVehicleTypes schema

planType
required
string non-empty

The plan type, please refer to UpdateablePlanType schema

Responses
200

OK

post/portal/V1/edit-devices-vehicle-plan
Request samples
{
  • "deviceIds": "string",
  • "vehicleType": "string",
  • "planType": "string"
}
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string"
}

Recall a device from fleet

This API is used to recall a device from fleet. The device will lists in Master's inventory after recall.

Need the device id to recall, can insert multiple device IDs.

Securityapi key and Authorization
Request
Request Body schema: multipart/form-data
deviceIds
required
string

The device id to recall. Multiple device ids are accepted and should separate with a comma. The device will lists in Master's inventory after recall

Responses
200

OK

post/portal/V1/recall-devices-fleet
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string",
  • "new_device_id": 0,
  • "old_device_id": 0,
  • "si_info": {
    }
}

Get device meta data

This API retrieves the device's metadata based on its single unit identifiers.
At least one of the parameters must be provided.

Securityapi key and Authorization
Request
query Parameters
MiTAC_SN
string or null

The serial number of device in Mitac.

customer_defined_sn_name
string

Customer-defined SN (Serial Number) name.

IMEI1
string or null

The IMEI of device.

ICCID
string or null

The ICCID of device

Responses
200

OK

get/portal/V1/device/meta-data
Response samples
application/json
{
  • "uq": "3903dc78-9349-41a0-9662-d1e33de117f8",
  • "doc_version": "latest",
  • "result": true,
  • "code": "S00000",
  • "message": "string",
  • "build": "string",
  • "data": {
    }
}