Работа с GPS-местоположениями и треками
Получение GPS-местоположений
Общее описание
Функция позволяет получить GPS-местоположения Сотрудников.
Максимальное количество возвращаемых местоположений — 1000.
Параметры вызова
Все параметры в запросе являются необязательными.
Функция имеет следующие параметры:
| Параметр | Описание |
|---|---|
| dateFrom | Дата, время начала периода (подробнее о формате времени). Если параметр не передан, то в ответе на запрос вернутся данные за последние 3 дня. |
| dateTo | Дата, время окончания периода (подробнее о формате времени). |
| subscriberIDs | ИД Сотрудников. Подробнее о передаче нескольких идентификаторов |
| count | Количество возвращаемых GPS-местоположений (не более 1000). |
| lastLocationID | ИД последнего местоположения, которым должны заканчиваться нужные данные (функция вернет местоположения с идентификаторами, которые строго меньше указанного). |
Результат выполнения
Функция возвращает структуру со следующими параметрами GPS-местоположений:
| Параметр | Описание |
|---|---|
| locationDate | Дата, время местоположения (подробнее о формате времени). |
| subscriberID | ИД Сотрудника. |
| locationID | ИД местоположения. |
| isValid | Признак корректности местоположения. Существуют следующие значения: true — местоположение корректно; false — местоположение некорректно. |
| Longitude | Географическая долгота местоположения (в градусах). |
| latitude | Географическая широта местоположения (в градусах). |
| angle | Направление движения (в градусах). |
| velocity | Скорость движения (в км/ч). |
Формат запроса
GET /v6/api/globalPositioningManagement/locations?dateFrom=\{dateTime}&dateTo=\{dateTime}&subscriberIDs=\{long}&count=\{integer}&lastLocationID=\{long} HTTP/1.1
Host: host
Authorization: Bearer tokenПример запроса
GET /v6/api/globalPositioningManagement/locations?dateFrom=2021-03-02T15:45:13+03:00&dateTo=2021-03-03T09:00:12+03:00&subscriberIDs=1&count=2&lastLocationID=1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer tokenФормат ответа
[
\{
"locationDate": "dateTime",
"subscriberID": integer,
"locationID": integer,
"isValid": boolean,
"longitude": number,
"latitude": number,
"angle": integer,
"velocity": number
},
\{
"locationDate": "dateTime",
"subscriberID": integer,
"locationID": integer,
"isValid": boolean,
"longitude": number,
"latitude": number,
"angle": integer,
"velocity": number
}
]Пример ответа
[
\{
"locationDate": "2021-03-03T09:00:12+03:00",
"subscriberID": 1,
"locationID": 2,
"isValid": true,
"longitude": 37.196619999999996,
"latitude": 55.959860000000006,
"angle": 0,
"velocity": 50
},
\{
"locationDate": "2021-03-02T15:45:13+03:00",
"subscriberID": 1,
"locationID": 1,
"isValid": true,
"longitude": 37.753722777777774,
"latitude": 55.65313333333333,
"angle": 0,
"velocity": 50
}
]Получение GPS-треков
Общее описание
Функция позволяет получить GPS-треки Сотрудников.
Максимальное количество возвращаемых треков — 1000.
Параметры вызова
Все параметры в запросе являются необязательными.
Функция имеет следующие параметры:
| Параметр | Описание |
|---|---|
| dateFrom | Дата, время начала периода (подробнее о формате времени). Если параметр не передан, то в ответе на запрос вернутся данные за последние 3 дня. |
| dateTo | Дата, время окончания периода (подробнее о формате времени). |
| subscriberIDs | ИД Сотрудников. Подробнее о передаче нескольких идентификаторов |
| count | Количество возвращаемых треков (не более 1000). |
| offset | Количество треков, которые необходимо пропустить относительно первого в списке. |
| lastTrackID | ИД трека, которым должен заканчиваться список возвращаемых треков (в ответе будут треки с идентификаторами, которые строго больше указанного). |
Результат выполнения
Функция возвращает структуру со следующими параметрами GPS-треков:
| Параметр | Описание |
|---|---|
| trackID | ИД трека. |
| subscriberID | ИД Сотрудника. |
| startDate | Дата, время начала трека (подробнее о формате времени). |
| finishDate | Дата, время окончания трека (подробнее о формате времени). |
| startAddress | Адрес начала трека. |
| finishAddress | Адрес окончания трека. |
| startLon | Географическая долгота адреса начала трека (в градусах). |
| startLat | Географическая широта адреса начала трека (в градусах). |
| finishLon | Географическая долгота адреса окончания трека (в градусах). |
| finishLat | Географическая широта адреса окончания трека (в градусах). |
| distance | Общая протяженность трека (в метрах). |
| duration | Общая длительность трека (в секундах). |
Формат запроса
GET /v6/api/globalPositioningManagement/tracks?dateFrom=\{dateTime}&dateTo=\{dateTime}&subscriberIDs=\{long}&count=\{intger}&offset=\{integer}&lastTrackID=\{long} HTTP/1.1
Host: host
Authorization: Bearer tokenПример запроса
GET /v6/api/globalPositioningManagement/tracks?dateFrom=2021-03-02T15:45:13+03:00&dateTo=2021-03-03T09:00:12+03:00&subscriberIDs=1&count=2&offset=1&lastTrackID=1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer tokenФормат ответа
[
\{
"trackID": integer,
"subscriberID": integer,
"startDate": "dateTime",
"finishDate": "dateTime",
"startAddress": "string",
"finishAddress": "string",
"startLon": number,
"startLat": number,
"finishLon": number,
"finishLat": number,
"distance": integer,
"duration": integer
},
\{
"trackID": integer,
"subscriberID": integer,
"startDate": "dateTime",
"finishDate": "dateTime",
"startAddress": "string",
"finishAddress": "string",
"startLon": number,
"startLat": number,
"finishLon": number,
"finishLat": number,
"distance": integer,
"duration": integer
}
]Пример ответа
[
\{
"trackID": 2,
"subscriberID": 1,
"startDate": "2021-03-03T09:00:12+03:00",
"finishDate": "2021-03-03T15:15:09+03:00",
"startAddress": "г. Москва, бульв. Мячковский, 16К2, район ст.м.Марьино",
"finishAddress": "г. Москва, ул. Новомарьинская, 12/12К1, район ст.м.Марьино",
"startLon": 37.755718333333334,
"startLat": 55.65027944444444,
"finishLon": 37.753722777777774,
"finishLat": 55.65313333333333,
"distance": 14611,
"duration": 22497
},
\{
"trackID": 3,
"subscriberID": 1,
"startDate": "2021-03-02T09:00:09+03:00",
"finishDate": "2021-03-02T15:55:11+03:00",
"startAddress": "г. Москва, пересечение ул. Поречная и бульв. Мячковский, район ст.м.Марьино",
"finishAddress": "г. Москва, бульв. Мячковский, 14К2, район ст.м.Марьино",
"startLon": 37.762928055555555,
"startLat": 55.64931388888889,
"finishLon": 37.755610833333336,
"finishLat": 55.65204972222222,
"distance": 12860,
"duration": 24902
}
]Получение GPS-трека
Общее описание
Функция позволяет получить GPS-трек Сотрудника.
Параметры вызова
В запросе используется обязательный параметр trackID — ИД GPS-трека.
Результат выполнения
Функция возвращает структуру со следующими параметрами GPS-трека:
| Параметр | Описание |
|---|---|
| trackID | ИД трека. |
| subscriberID | ИД Сотрудника. |
| startDate | Дата, время начала трека (подробнее о формате времени). |
| finishDate | Дата, время окончания трека (подробнее о формате времени). |
| startAddress | Адрес начала трека. |
| finishAddress | Адрес окончания трека. |
| startLon | Географическая долгота адреса начала трека (в градусах). |
| startLat | Географическая широта адреса начала трека (в градусах). |
| finishLon | Географическая долгота адреса окончания трека (в градусах). |
| finishLat | Географическая широта адреса окончания трека (в градусах). |
| distance | Общая протяженность трека (в метрах). |
| duration | Общая длительность трека (в секундах). |
Формат запроса
GET /v6/api/globalPositioningManagement/tracks/\{trackID} HTTP/1.1
Host: host
Authorization: Bearer tokenПример запроса
GET /v6/api/globalPositioningManagement/tracks/1 HTTP/1.1
Host: host
Authorization: Bearer tokenФормат ответа
\{
"trackID": integer,
"subscriberID": integer,
"startDate": "dateTime",
"finishDate": "dateTime",
"startAddress": "string",
"finishAddress": "string",
"startLon": number,
"startLat": number,
"finishLon": number,
"finishLat": number,
"distance": integer,
"duration": integer
}Пример ответа
\{
"trackID": 1,
"subscriberID": 1,
"startDate": "2021-03-18T12:56:37+03:00",
"finishDate": "2021-03-18T13:04:32+03:00",
"startAddress": "г. Москва, бульв. Мячковский, 16К2, район ст.м.Марьино",
"finishAddress": "г. Москва, бульв. Мячковский, 14К2, район ст.м.Марьино",
"startLon": 37.42697,
"startLat": 55.86441333333333,
"finishLon": 37.42533,
"finishLat": 55.85485,
"distance": 1695,
"duration": 475
}Получение локаций GPS-трека
Общее описание
Функция позволяет получить локации GPS-трека Сотрудника.
Параметры вызова
В запросе используется обязательный параметр trackID — ИД GPS-трека.
Результат выполнения
Функция возвращает структуру со следующими параметрами GPS-треков:
| Параметр | Описание |
|---|---|
| locationDate | Дата, время местоположения (подробнее о формате времени). |
| subscriberID | ИД Сотрудника. |
| locationID | ИД местоположения. |
| isValid | Признак корректности местоположения. Существуют следующие значения: true — местоположение корректно; false — местоположение некорректно. |
| Longitude | Географическая долгота местоположения (в градусах). |
| latitude | Географическая широта местоположения (в градусах). |
| angle | Направление движения (в градусах). |
| velocity | Скорость движения (в км/ч). |
Формат запроса
GET /v6/api/globalPositioningManagement/tracks/\{trackID}/locations HTTP/1.1
Host: host
Authorization: Bearer tokenПример запроса
GET /v6/api/globalPositioningManagement/tracks/1/locations HTTP/1.1
Host: host
Authorization: Bearer tokenФормат ответа
[
\{
"locationDate": "dateTime",
"subscriberID": integer,
"locationID": integer,
"isValid": boolean,
"longitude": number,
"latitude": number,
"angle": integer,
"velocity": number
},
\{
"locationDate": "dateTime",
"subscriberID": integer,
"locationID": integer,
"isValid": boolean,
"longitude": number,
"latitude": number,
"angle": integer,
"velocity": number
},
\{
"locationDate": "dateTime",
"subscriberID": integer,
"locationID": integer,
"isValid": boolean,
"longitude": number,
"latitude": number,
"angle": integer,
"velocity": number
}
]Пример ответа
[
\{
"locationDate": "2021-03-18T13:04:32.002+03:00",
"subscriberID": 1,
"locationID": 3,
"isValid": true,
"longitude": 37.42533,
"latitude": 55.85485,
"angle": 333,
"velocity": 3
},
\{
"locationDate": "2021-03-18T13:04:30.001+03:00",
"subscriberID": 1,
"locationID": 2,
"isValid": true,
"longitude": 37.42533,
"latitude": 55.854847,
"angle": 306,
"velocity": 2
},
\{
"locationDate": "2021-03-18T12:56:37+03:00",
"subscriberID": 1,
"locationID": 1,
"isValid": true,
"longitude": 37.42697,
"latitude": 55.8644142,
"angle": 253,
"velocity": 44
}
]Получение событий транспортных средств
Общее описание
Функция позволяет получить зафиксированные события транспортных средств за период.
Параметры вызова
Функция имеет следующие параметры:
| Параметр | Описание |
|---|---|
| startDate | Дата, время начала периода (подробнее о формате времени). |
| finishDate | Дата, время окончания периода. |
| subscriberIDs | ИД Сотрудников (обязательный параметр). Подробнее о передаче нескольких идентификаторов |
| count | Количество возвращаемых записей (можно указать не более 1000) |
| offset | Количество записей, которые необходимо пропустить относительно первой в списке. |
Результаты выполнения
Функция возвращает структуру со следующими параметрами GPS-треков:
| Параметр | Описание |
|---|---|
| subscriberID | ИД Сотрудника |
| Параметры зафиксированного события (events) | |
| type | Тип события. Существуют следующие значения:1 – заправка топлива; 2 – слив топлива; 3 – нарушение значения датчика; 4 – превышение скорости; 5 – длительное превышение скорости. |
| Latitude | Географическая широта, где было зафиксировано событие (в градусах) |
| longitude | Географическая долгота, где было зафиксировано событие (в градусах) |
| value | Значение, при котором было зафиксировано событие |
| eventDate | Дата и время события (подробнее о формате времени) |
Формат запроса
GET /v6/api/globalPositioningManagement/events?startDate=\{dateTime}&finishDate=\{dateTime}&subscriberIDs=\{long}&count=\{integer}&offset=\{integer} HTTP/1.1
Host: host
Authorization: Bearer tokenПример запроса
GET /v6/api/globalPositioningManagement/events?startDate=2021-03-02T15:45:13Z&finishDate=2021-03-03T09:00:12Z&subscriberIDs=1&count=1&offset=1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer tokenФормат ответа
\{
"data": [
\{
"subscriberID": integer,
"events": [
\{
"type": integer,
"latitude": number,
"longitude": number,
"value": number,
"eventDate": "dateTime"
}
]
}
]
}Пример ответа
\{
"data": [
\{
"subscriberID": 1,
"events": [
\{
"type": 1,
"latitude": 55.959860000000006,
"longitude": 37.196619999999996,
"value": 23,
"eventDate": "2021-04-14T11:08:43Z"
}
]
}
]
}Получение статистики по транспортным средствам за указанный период
Общее описание
Функция позволяет получить статистику за указанный период по транспортным средствам: пробег, расход топлива, уровень топлива, значение одометра, время работы двигателя.
Параметры запроса
Функция имеет следующие параметры:
| Параметр | Описание |
|---|---|
| dateFrom | Дата, время начала периода (подробнее о формате времени). |
| dateTo | Дата, время окончания периода (подробнее о формате времени). |
| subscriberIDs | ИД транспортного средства (обязательный параметр). Подробнее о передаче нескольких идентификаторов |
| interval | Интервал времени (в часах) для детализации статистики. Существуют следующие значения: 1 — будет возвращена последняя актуальная запись за указанный период. Расход топлива, возвращаемый в параметре fuelConsumption, будет считаться следующим образом: к разнице значений топлива между первой локацией за период и последней локацией за период прибавляются значения заправок. Данные в параметрах mileage и totalVehicleDistance будут рассчитываться по трекам. 2 — будет возвращено несколько записей с почасовой разбивкой за указанный период. Данные в параметрах mileage и totalVehicleDistance будут рассчитываться по локациям. 3 — будут возвращены все записи за указанный период. Данные в параметрах mileage и totalVehicleDistance будут рассчитываться по локациям. |
| count | Количество возвращаемых записей (можно указать не более 1000). |
| offset | Количество записей, которые необходимо пропустить относительно первой в списке. |
Результат выполнения
Функция возвращает структуру со следующими параметрами статистики по закрепленным за абонентами транспортным средствам:
| Параметр | Описание |
|---|---|
| subscriberID | ИД транспортного средства |
| Статистика по транспортному средству (statistics) | |
| mileage | Пробег за указанный период (в километрах). Если в запросе в параметре interval было передано значение 1, то пробег рассчитывается по трекам. Если в запросе в параметре interval было передано значение 2 или 3, то пробег рассчитывается по локациям. |
| fuelConsumption | Расход топлива (в литрах). Если в запросе в параметре interval было передано значение 1, то расход топлива считается следующим образом: к разнице значений топлива между первой локацией за период и последней локацией за период прибавляются значения заправок. |
| engineMotohours | Время работы двигателя (в часах). |
| endFuelLevel | Уровень топлива (в литрах). |
| totalVehicleDistance | Общая дистанция (в километрах, сумма значения одометра и пробега на момент локации). Если в запросе в параметре interval было передано значение 1, то общая дистанция рассчитывается по трекам. Если в запросе в параметре interval было передано значение 2 или 3, то общая дистанция рассчитывается по локациям. |
| locationDate | Дата, время зафиксированных значений (подробнее о формате времени). |
Формат запроса
GET /v6/api/globalPositioningManagement/statistics?dateFrom=\{dateTime}&dateTo=\{dateTime}&subscriberIDs=\{long}&interval=\{integer}&count=\{integer}&offset=\{integer} HTTP/1.1
Host: host
Authorization: Bearer tokenПример запроса
GET /v6/api/globalPositioningManagement/statistics?dateFrom=2021-03-02T15:45:13Z&dateTo=2021-03-02T15:45:13Z&subscriberIDs=1&interval=1&count=1&offset=2 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer tokenФормат ответа
\{
"data": [
\{
"subscriberID": integer,
"statistics": [
\{
"mileage": number,
"fuelConsumption": number,
"engineMotohours": number,
"endFuelLevel": number,
"totalVehicleDistance": number,
"locationDate": "dateTime"
}
]
}
]
}Пример ответа
\{
"data": [
\{
"subscriberID": 1,
"statistics": [
\{
"mileage": 53,
"fuelConsumption": 2,
"engineMotohours": 1,
"endFuelLevel": 25,
"totalVehicleDistance": 15729,
"locationDate": "2021-04-14T13:26:32Z"
}
]
}
]
}Получение GPS-местоположения по его идентификатору
Общее описание
Функция позволяет получить GPS-местоположение Сотрудника.
Параметры вызова
В запросе используется обязательный параметр locationID — идентификатор местоположения.
Результат выполнения
Функция возвращает структуру со следующими параметрами GPS-местоположения:
| Параметр | Описание |
|---|---|
| locationDate | Дата, время местоположения (подробнее о формате времени). |
| subscriberID | ИД cотрудника |
| locationID | ИД местоположения |
| isValid | Признак корректности местоположения. Существуют следующие значения: true — местоположение корректно; false — местоположение некорректно. |
| longitude | Географическая долгота местоположения (в градусах) |
| latitude | Географическая широта местоположения (в градусах) |
| angle | Направление движения (в градусах) |
| velocity | Скорость движения (в км/ч) |
Формат запроса
GET /v6/api/globalPositioningManagement/locations/\{locationID} HTTP/1.1
Host: host
Authorization: Bearer tokenПример запроса
GET /v6/api/globalPositioningManagement/locations/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer tokenФормат ответа
\{
"locationDate": "dateTime",
"subscriberID": integer,
"locationID": integer,
"isValid": boolean,
"longitude": number,
"latitude": number,
"angle": integer,
"velocity": number
}Пример ответа
\{
"locationDate": "2021-03-03T09:00:12+03:00",
"subscriberID": 1,
"locationID": 2,
"isValid": true,
"longitude": 37.196619999999996,
"latitude": 55.959860000000006,
"angle": 0,
"velocity": 50
}