The format of the response can differ depending on set flags.
This chapter describes flags that can be applied to units and parts of resulting JSON which they are responsible for. If you specify several flags, then parts will be gathered into one JSON.
All flags are only used in DEC format.
Unit flags:
Value HEX | Value DEC | Description |
---|---|---|
0x00000001 | 1 | base flag |
0x00000002 | 2 | custom properties |
0x00000004 | 4 | billing properties |
0x00000008 | 8 | custom fields |
0x00000010 | 16 | image |
0x00000020 | 32 | messages |
0x00000040 | 64 | GUID |
0x00000080 | 128 | administrative fields |
0x00000100 | 256 | advanced properties |
0x00000200 | 512 | available for current moment commands |
0x00000400 | 1024 | last message and position |
0x00001000 | 4096 | sensors |
0x00002000 | 8192 | counters |
0x00008000 | 32768 | maintenance |
0x00020000 | 131072 | unit configuration in reports: trip detector and fuel consumption |
0x00080000 | 524288 | list of all possible commands for current unit |
0x00100000 | 1048576 | message parameters |
0x00200000 | 2097152 | unit connection status |
0x00400000 | 4194304 | position |
0x00800000 | 8388608 | profile fields |
0x3FFFFFFFFFFFFFFF | 4611686018427387903 | set all possible flags to unit |
Flag - 0x00000001
{ "mu":<uint>, /* measure units: 0 - si, 1 - us, 2 - imperial, 3 - metric with gallons */ "nm":<text>, /* name */ "cls":<uint>, /* superclass ID: "avl_unit" */ "id":<uint>, /* unit ID */ "uacl":<uint> /* current user access level for unit */ }
Flag - 0x00000002
You can store any data you need in custom properties.
{ "prp":{ /* custom properties */ "img_rot":<text>, /* rotate images: "1" - yes, "0" - no */ "monitoring_sensor_id":<text>, /* sensor ID which will be shown in monitoring panel */ "motion_state_sensor_id":<text>,/* sensor - source of motion state ID */ "sensors_colors_id":<text>, /* sensor - source of track colour */ "use_sensor_color":<text>, /* use sensor color in monitoring panel: "1" - yes, "0" - no */ /* used one of parameters to choose source of color for track */ "sensors_colors":<text>, /* table of colors for track by sensor */ "solid_colors":<text>, /* color for track */ "speed_colors":<text>, /* table of colors for track by speed */ /* used for storage last used colors */ "track_sensor":<text>, /* table of colors for track by sensor */ "track_solid":<text>, /* color for track */ "track_speed":<text> /* table of colors for track by speed */ ... }, "ct":<uint> /* creation time */ }
Flag - 0x00000004
{ "crt":<uint>, /* creator ID */ "bact":<uint> /* account ID */ }
Flag - 0x00000008
{ "flds":{ /* custom fields */ <text>:{ /* sequence number */ "id":<uint>, /* ID */ "n":<text>, /* name */ "v":<text> /* value */ }, ... }, "fldsmax":<long>, /* maximal count of custom fields (-1 - unlimited) */ }
Flag - 0x00000010
{ "uri":<text> /* image link */ "ugi":<uint> /* image changes counter */ }
Flag - 0x00000020
After setting this flag you can receive messages from unit.
{}
Flag - 0x00000040
{ "gd":<text> /* unit GUID */ }
Flag - 0x00000080
{ "aflds":{ /* administrative fields */ <text>:{ /* sequence number */ "id":<uint>, /* ID */ "n":<text>, /* name */ "v":<text> /* value */ }, ... }, "afldsmax":<long>, /* maximal count of administrative fields (-1 - unlimited) */ }
Flag - 0x00000100
{ "uid":<text>, /* unique ID (hardware) */ "uid2":<text>, /* second unique ID (hardware) */ "hw":<long>, /* hardware type */ "ph":<text>, /* phone number */ "ph2":<text>, /* second phone number */ "psw":<text> /* password */ }
Flag - 0x00000200
{ "cmds":[ /* array of commands */ { "n":<text>, /* name */ "a":<uint>, /* access level (access rights that user must have to execute current command) */ "t":<text>, /* link type */ "c":<text> /* command type */ } ] }
Types of commands and links are described in the chapter Commands: create, edit, delete, list of access flags for units are given in the chapters Access flags: General and Access flags: Units and unit groups.
Flag - 0x00000400
{ "pos":{ /* last known position */ "t":<uint>, /* time (UTC) */ "y":<double>, /* latitude */ "x":<double>, /* longitude */ "z":<double>, /* altitude */ "s":<int>, /* speed */ "c":<int>, /* course */ "sc":<int> /* satellites count */ }, "lmsg":{ /* last known message */ ... } }
Message format depends on its type, all types are described in the chapter Data format: Messages.
Flag - 0x00001000
{ "sens":{ /* sensors */ <text>:{ /* sequence number of sensor */ "id":<long>, /* ID */ "n":<text>, /* name */ "t":<text>, /* type */ "d":<text>, /* description */ "m":<text>, /* metrics */ "p":<text>, /* parameter */ "f":<uint>, /* sensor flags */ "c":<text>, /* configuration */ "vt":<uint>, /* validation type */ "vs":<uint>, /* validation sensor ID */ "tbl":[ /* calculation table */ { /* parameters */ "x":<double>, "a":<double>, "b":<double> } ] }, ... }, "sens_max":<long> /* maximal count of sensors (-1 - unlimited) */ }
Sensor flags, types of sensors and validation, also examples of configuration are examined in the chapter Sensors: create, update and delete.
Flag - 0x00002000
{ "cfl":<uint>, /* calculation flags */ "cnm":<uint>, /* mileage counter, km or miles */ "cneh":<uint>, /* engine hours counter, h */ "cnkb":<uint> /* GPRS traffic counter, KB */ }
Calculation flags are described in the chapter Counter calculation parameters.
Flag - 0x00008000
{ "si":{ /* service intervals */ <text>:{ /* sequence number of service interval */ "id":<uint>, /* ID */ "n":<text>, /* name */ "t":<text>, /* description */ "im":<uint>, /* mileage interval */ "it":<uint>, /* days interval */ "ie":<uint>, /* engine hours interval */ "pm":<uint>, /* last service for mileage interval, km */ "pt":<uint>, /* last service for days interval, sec (UTC) */ "pe":<uint>, /* last service for engine hours interval, h */ "c":<uint> /* done times */ }, ... }, "simax":<long> /* maximal count of service intervals (-1 - unlimited) */ }
Flag - 0x00020000
{ "rtd":{ /* trip detector */ "type":<uint>, /* type of movement detection */ "gpsCorrection":<int>, /* allow GPS correction: 0 - no, 1 - yes */ "minSat":<uint>, /* min satellites count */ "minMovingSpeed":<uint>, /* min moving speed, km/h */ "minStayTime":<uint>, /* min parking time, seconds */ "maxMessagesDistance":<uint>, /* max distance between messages, meters */ "minTripTime":<uint>, /* min trip time, seconds */ "minTripDistance":<uint> /* min trip distance, meters */ }, "rfc":{ /* fuel consumption */ "calcTypes":<uint>, /* type of calculation */ "fuelLevelParams":{ /* detection of fuel fillings/thefts */ "flags":<uint>, /* flags of fillings and thefts */ "ignoreStayTimeout":<uint>, /* ignore the messages after the start of motion, sec */ "minFillingVolume":<uint>, /* minimum fuel filling volume, litres */ "minTheftTimeout":<uint>, /* minimum stay timeout to detect fuel theft, sec */ "minTheftVolume":<uint>, /* minimum fuel theft volume, litres */ "filterQuality":<ubyte>, /* filter quality (0..255) */ "fillingsJoinInterval":<uint>, /* timeout to separate consecutive fillings, sec */ "theftsJoinInterval":<uint>, /* timeout to separate consecutive thefts, sec */ "extraFillingTimeout":<uint> /* timeout to detect final filling volume, sec */ }, "fuelConsMath":{ /* consumption math */ "idling":<double>, /* idling, litres per hour */ "urban":<double>, /* urban cycle, litres per 100 km */ "suburban":<double>, /* suburban cycle, litres per 100 km */ "loadCoef":<double> /* coefficient when moving under load */ }, "fuelConsRates":{ /* consumption by rates */ "consSummer":<int>, /* summer consumption, litres per 100 km */ "consWinter":<int>, /* winter consumption, litres per 100 km */ "winterMonthFrom":<int>, /* winter from (month: 0-11) */ "winterDayFrom":<int>, /* winter from (day 1-31) */ "winterMonthTo":<int>, /* winter to (month 0-11) */ "winterDayTo":<int> /* winter to (day 1-31) */ }, "fuelConsImpulse":{ /* impulse fuel consumption sensors */ "maxImpulses":<int>, /* max impulses */ "skipZero":<int> /* skip first zero value */ } } }
Type of movement detection are described in the chapter Trip detection, types of calculation of fuel consumption and fillings/thefts flags are described in the chapter Fuel consumption.
Flag - 0x00080000
{ "cml":{ /* list of commands */ <text>:{ /* sequence number of command */ "id":<uint>, /* ID */ "n":<text>, /* name */ "c":<text>, /* type */ "l":<text>, /* link type */ "p":<text>, /* parameters */ "a":<uint>, /* access level (access rights that user must have to execute current command) */ "f":<uint> /* phone number flags: 0-any (primary, then secondary), 0x1-primary, 0x2-secondary */ }, ... }, "cml_max":<long> /* maximal count of commands (-1 - unlimited) */ }
Types of commands and links are described in the chapter Commands: create, edit, delete, list of access flags for units are given in the chapters Access flags: General and Access flags: Units and unit groups.
Allows usage of accumulative system of parameters values. Parameters will store in specified section of unit object, which will contain not only values presented in last message but in previous ones also.
Flag - 0x00100000
{ "prms":{ /* list of message parameters */ <text>:{ /* parameter name */ "v":<any>, /* parameter value */ "ct":<uint>, /* time of last value change */ "at":<uint> /* time of last message with such parameter */ }, ... } }
Unit connection status.
Flag - 0x00200000
{ "item":{ "netconn":<bool> } }
Flag - 0x00400000
{ "pos":{ /* last known position */ "t":<uint>, /* time (UTC) */ "y":<double>, /* latitude */ "x":<double>, /* longitude */ "z":<double>, /* altitude */ "s":<int>, /* speed */ "c":<int>, /* course */ "sc":<int> /* satellites count */ } }
Flag - 0x00800000
{ "pflds":{ "<long>":{ /* field ID */ "id":<long>, /* field ID */ "n":<text>, /* field name */ "v":<text> /* field value */ } }