Работа с задачами

Получение списка задач

Общее описание

Функция GET /v6/api/taskManagement/tasks?dateFrom={dateTime}&dateTo={dateTime}&subscriberIDs={long}&subscriberGroupIDs={long}&title={string}&statuses={integer}&priorities={integer}&includeUnboundTasks={boolean}&count={integer}&offset={integer}&customFieldExternalIDs={string}&customFieldValues={string}&taskTypeIDs={long}&customStatusIDs={long}?mapObjectID={long}&zoneIDs={long}&zoneGroupIDs={long} позволяет получить задачи по нужным параметрам.

Максимальное количество возвращаемых задач — 1000.

Параметры вызова

Функция имеет следующие параметры:

Параметр Описание
dateFrom Дата, время начала периода задач (подробнее о формате времени).
dateTo Дата, время окончания периода задач (подробнее о формате времени).
subscriberIDs ИД Сотрудников. Подробнее о передаче нескольких идентификаторов
subscriberGroupIDs ИД групп Сотрудников. Подробнее о передаче нескольких идентификаторов
title Название задачи.
statuses Статус задач. Существуют следующие значения:
  • 0 – новая;
  • 1 – принята;
  • 2 – отклонена;
  • 3 – выполнена;
  • 4 – в работе.
priorities Приоритет задачи. Существуют следующие значения:
  • 0 – низкий;
  • 1 – средний;
  • 2 – высокий.
includeUnboundTasks Признак включения неназначенных задач. Существуют следующие значения:
  • true – ответ будет содержать неназначенные задачи;
  • false – ответ будет содержать только назначенные задачи.
count Количество возвращаемых задач (не более 1000).
offset Количество задач, которые необходимо пропустить относительно первой в списке.
customFieldExternalIDs Внешний идентификатор дополнительного поля задачи. Подробнее о передаче нескольких идентификаторов. Должно передаваться вместе с параметром customFieldValues.
customFieldValues Значение дополнительного поля задачи. Подробнее о передаче нескольких идентификаторов. Должно передаваться вместе с параметром customFieldExternalIDs.
taskTypeIDs ИД типов задач. Подробнее о передаче нескольких идентификаторов
customStatusID ИД пользовательских статусов задач. Подробнее о передаче нескольких идентификаторов
mapObjectID ИД объекта.
mapObjectWorkScheduleID ИД расписания
zoneIDs ИД зон. Подробнее о передаче нескольких идентификаторов
zoneGroupIDs ИД групп зон. Подробнее о передаче нескольких идентификаторов
includeWorkOrders Назначения задачи. Существуют следующие значения: true – ответ будет содержать массив с назначением задачи; false – ответ не будет содержать массив с назначением задачи.
includeRouteItems Информация из маршрута. Существуют следующие значения: true – ответ будет содержать массив с информацией из маршрута; false – ответ не будет содержать массив с информацией из маршрута.
considerWorkOrders Искать ли задачи дополнительно по датам назначений. Существуют следующие значения: true – нужно искать задачи дополнительно по датам назначений; false – не нужно искать задачи дополнительно по датам назначений.
creationDateFrom Начальная дата создания
creationDateTo Конечная дата создания
mapObjectIDs ИД объектов

Результат выполнения

Функция возвращает структуру со следующими параметрами задач:

Параметр Описание
taskID ИД задачи
subscriberID ИД Сотрудника
deadline Крайний срок завершения задачи (дата и время, подробнее о формате времени).
title Название задачи
description Описание задачи
address Адрес задачи
longitude Географическая долгота адреса (в градусах)
latitude Географическая широта адреса (в градусах)
externalID Внешний пользовательский ИД задачи
clientName ФИО клиента
clientPhone Телефон клиента
clientEmail Адрес электронной почты клиента
priority Приоритет задачи. Существуют следующие значения:
  • 0 – низкий;
  • 1 – средний;
  • 2 – высокий.
rank Ранг задачи. Допустимые значения: от 0 до 100.
startDate Дата начала задачи (подробнее о формате времени).
status Статус задачи. Существуют следующие значения:
  • 0 – новая;
  • 1 – принята;
  • 2 – отклонена;
  • 3 – выполнена;
  • 4 – в работе.
taskTypeID ИД типа задачи
customStatusID ИД пользовательского статуса задачи
customStatusReasonID Ид причины смены пользовательского статуса задачи
mapObjectID ИД объекта
mapObjectWorkScheduleID ИД расписания
commentPolicy Требования к комментарию при завершении задачи. Существуют следующие значения:
  • 0 – не обязателен;
  • 1 – обязателен;
  • 2 – обязателен при отклонении заявки;
  • 3 – обязателен в обоих случаях.
serviceTime Время выполнения задачи
startInterval Интервал начала выполнения задачи
preferredPositionInRoute Порядок задачи в маршруте. Допустимые значения: от 1 до 10.
isFixed Является ли задача закрепленной (нельзя менять время начала выполнения в пределах допустимого времени опоздания, изменять или снимать исполнителя). Существуют следующие значения:
  • true — задача закреплена;
  • false — задача не закреплена.
isMandatoryInRoute Должна ли задача быть обязательно поставлена в маршрут. Существуют следующие значения:
  • true – задача должна быть обязательно в маршруте.
  • false – задачи может не быть в маршруте.
creationDate Дата и время создания задачи (подробнее о формате времени).
includeWorkOrders Назначения задачи. Существуют следующие значения:
  • true – ответ будет содержать массив с назначением задачи;
  • false – ответ не будет содержать массив с назначением задачи.
includeRouteItems Информация из маршрута. Существуют следующие значения:
  • true – ответ будет содержать массив с информацией из маршрута;
  • false – ответ не будет содержать массив с информацией из маршрута.
considerWorkOrders Искать ли задачи дополнительно по датам назначений. Существуют следующие значения:
  • true – нужно искать задачи дополнительно по датам назначений;
  • false – не нужно искать задачи дополнительно по датам назначений.
Параметры маршрута задачи (массив структур routeItems)
plannedStartDate Плановая дата начала задачи (подробнее о формате времени).
plannedEndDate Плановая дата окончания задачи (подробнее о формате времени).
timeToPoint Время доезда в минутах до адреса задачи
distanceToPoint Расстояние в метрах до адреса задачи
awaitingTime Время ожидания начала задачи после доезда до адреса задачи
Параметры компетенций задачи (competences)
competenceID ИД компетенции
amount Вес компетенции
level Уровень владения компетенцией
Параметры измерений (структура dimensions)
weight Вес (кг)
unit Юниты
width Ширина (м)
height Высота (м)
length Длина (м)
volume Объем (м3)
Параметры дополнительных полей задачи (массив структур customFieldFormItems)
externalID ИД дополнительного поля
name Название дополнительного поля
value Значение дополнительного поля
values Значения дополнительного поля в случае множественного выбора
type Тип дополнительного поля. Существуют следующие типы:
  • string – строка;
  • text – текст;
  • date – дата;
  • time – время;
  • integer – целое число;
  • double – вещественное число;
  • boolean – галочка;
  • select – список;
  • picture – изображение;
  • file – файл.
subType Подтип поля «Строка». Существуют следующие значения:
  • 0 — ввод текста;
  • 3 — ввод номера телефона;
  • 5 — ввод ссылки.
Подтип поля «Целое число». Существуют следующие значения:
  • 0 — ввод целого числа.
Подтип поля «Вещественное число». Существуют следующие значения:
  • 0 — ввод целого числа.
Подтип поля «Изображение». Существуют следующие значения:
  • 0 — любое изображение.
Параметры шаблона формы, обязательного для заполнения при отклонении или завершении задачи (массив структур taskFormTemplates)
status Статус задачи, при переводе в который необходимо заполнить форму. Существуют следующие значения:
  • 2 — отклонена;
  • 3 — выполнена.
taskFormTemplateID ИД шаблона формы.
isRequired Является ли обязательным заполнение формы. Существуют следующие значения:
  • true — заполнение формы является обязательным.
  • false — заполнение формы является необязательным.
Параметры предзаполненных полей (массив структур prefillValues)
externalID Внешний ИД поля. 
value Значение поля.
values Значения колонки в случае множественного выбора
Параметры колонок таблицы (массив массивов rows)
externalID Внешний ИД колонки. 
name Название колонки
value Значение колонки
values Значения колонки в случае множественного выбора
type Тип дополнительного поля. Существуют следующие типы:
  • string – строка;
  • integer – целое число;
  • select – список.
subtype Подтип поля «Строка». Существуют следующие значения:
  • 0 — ввод текста.
Подтип поля «Целое число». Существуют следующие значения:
  • 0 — ввод целого числа.
Параметры общей ссылки на местоположение Сотрудника, выполняющего задачу. Получателю ссылки не требуются логин и пароль для просмотра местоположения (структура sharedLink)
isActive Активность ссылки. Существуют следующие значения:
  • true — ссылка активна, можно просматривать местоположение Сотрудника;
  • false — ссылка неактивна; местоположение Сотрудника недоступно.
sharingPeriod Время действия ссылки, после его окончания просмотр местоположения по ссылке станет недоступным. Существуют следующие значения:
  • 1 — до окончания выполнения задачи. Как только статус задачи будет изменен на «Выполнена», просмотр местоположения станет недоступным;
  • 2 — до указанного времени.
sharingEndDate Дата и время окончания действия ссылки (если в параметре sharingPeriod передано значение 2)
sendToEmail Отправить ссылку на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить ссылку по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры обратной связи (структура feedback)
formInvitationProfileID ИД профиля обратной связи
formTemplateID ИД формы обратной связи
sendToEmail Отправить форму обратной связи на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить форму обратной связи по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры чек-листов (массив структур checklists)
checklistID ИД чек-листа
assetID ИД актива
name Название чек-листа
description Описание чек-листа
isRequired Является ли заполнение чек-листа обязательным. Существуют следующие значения:
  • true — заполнение чек-листа является обязательным;
  • false — заполнение чек-листа не обязательно.
checkListExternalID Внешний ИД чек-листа
type Тип чек-листа. Существуют следующие значения:
  • 0 — тип по умолчанию.
Status Статус чек-листа. Существуют следующие значения:
  • 0 — новый;
  • 1 — черновик;
  • 2 — пройден.
creationDate Дата и время создания чек-листа
taskID ИД задачи, к которой привязан чек-лист
lastModificationDate Дата и время последнего прохождения чек-листа
subscriberID ИД Сотрудника, который заполняет чек-лист
latitude Географическая широта места прохождения чек-листа (в градусах)
longitude Географическая долгота места прохождения чек-листа (в градусах)
radius Радиус погрешности определения места прохождения чек-листа (в метрах)
address Адрес прохождения чек-листа
checkListTemplateIDs ИД шаблонов чек-листов
checkListTemplateNames Названия шаблонов чек-листов
maxScore Максимальная оценка по итогам прохождения чек-листа
totalScore Общая оценка по итогам прохождения чек-листа

Формат запроса

GET /v6/api/taskManagement/tasks?dateFrom=\{dateTime}&dateTo=\{dateTime}&subscriberIDs=\{long}&subscriberGroupIDs=\{long}&title=\{string}&statuses=\{integer}&priorities=\{integer}&includeUnboundTasks=\{boolean}&count=\{integer}&offset=\{integer}&customFieldExternalIDs=\{string}&customFieldValues=\{string}&taskTypeIDs=\{long}&customStatusIDs=\{long}&mapObjectID=\{long}&mapObjectWorkScheduleID=\{long} HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/tasks?dateFrom=2020-10-05T15:45:13+03&dateTo=2020-10-06 T15:45:13+03&subscriberIDs=1&subscriberGroupIDs=1&title=task&statuses=1&priorities=1&includeUnboundTasks=true&count=100&offset=1&customFieldExternalIDs=1&customFieldValues=значение&taskTypeIDs=1&customStatusIDs=1&mapObjectID=1&mapObjectWorkScheduleID=0 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

[
    \{
        "taskID": integer,
        "routeItems": [
            \{
                "plannedStartDate": "string",
                "plannedEndDate": "string",
                "timeToPoint": integer,
                "distanceToPoint": integer
            }
        ],
        "subscriberID": integer,
        "deadline": "dateTime",
        "title": "string",
        "description": "string",
        "address": "string",
        "longitude": number,
        "latitude": number,
        "externalID": "string",
        "clientName": "string",
        "clientPhone": "string",
        "clientEmail": "string",
        "priority": integer,
        "rank": integer,
        "startDate": "dateTime",
        "status": integer,
        "taskTypeID": integer,
        "customStatusID": integer,
        "customStatusReasonID": integer,
        "mapObjectID": integer,
        "mapObjectWorkScheduleID": integer,
        "commentPolicy": integer,
        "competences": [
            \{
                "competenceID": integer,
                "amount": number,
                "level": integer
            }
        ],
        "dimensions": \{
            "weight": number,
            "unit": number,
            "width": number,
            "height": number,
            "length": number,
            "volume": number
         },
        "serviceTime": integer,
        "startInterval": integer,
        "isMandatoryInRoute": boolean,
        "preferredPositionInRoute": integer,
        "isFixed": boolean,
        "customFieldsFormTemplateID": integer,
        "customFieldFormItems": [
	    \{
                "externalID": "string",
                "name": "string",
                "value": "string",
                "values": [
                    "string"
                ],
                "type": "string",
                "subtype": integer,
                "rows": [
                    [
                        \{
                            "externalID": "string",
                            "name": "string",
                            "value": "string",
                            "values": [
                                "string"
                            ],
                            "type": "string",
                            "subtype": integer
                        }
                    ]
                ]
            }
        ],
        "taskFormTemplates": [
            \{
                "status": integer,
                "taskFormTemplateID": integer,
                "isRequired": boolean,
                "prefillValues": [
                    \{
                        "externalID": "string",
                        "value": "string",
                        "rows": [
                             [
                                 \{
                                     "externalID": "string",
                                     "value": "string"
                                 }
                             ]
                        ]
                    }
                ]
            }
        ],
        "creationDate": "dateTime",
        "sharedLink": \{
            "isActive": boolean,
            "sharingPeriod": integer,
            "sharingEndDate": "dateTime",
            "sendToEmail": boolean,
            "sendToSMS": boolean
        },
        "feedback": \{
            "formInvitationProfileID": integer,
            "formTemplateID": integer,
            "sendToEmail": boolean,
            "sendToSMS": boolean
        },
        "checklists": [
             \{
                 "checklistID": integer,
                 "assetID": integer,
                 "name": "string",
                 "description": "string",
                 "isRequired": boolean,
                 "checkListExternalID": "string",
                 "type": integer,
                 "status": integer,
                 "creationDate": "date-time",
                 "taskID": integer,
                 "lastModificationDate": "date-time",
                 "subscriberID": integer,
                 "latitude": number,
                 "longitude": number,
                 "radius": integer,
                 "address": "string",
                 "checkListTemplateIDs": [
                     integer
                 ],
                 "checkListTemplateNames": [
                     "string"
                 ],
                 "maxScore": number,
                 "totalScore": number
             }
          ]
    }
]

Пример ответа

[
    \{
        "taskID": 1,
        "routeItems": [
            \{
                "plannedStartDate": "2024-07-31T09:08:55.988Z",
                "plannedEndDate": "2024-07-31T09:08:55.988Z",
                "timeToPoint": 60,
                "distanceToPoint": 650
            }
        ],
        "subscriberID": 1,
        "deadline": "2020-10-06T20:00:00+03:00",
        "title": "task",
        "description": "Описание",
        "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
        "longitude": 37.61775044433594,
        "latitude": 55.735528725106505,
        "externalID": null,
        "clientName": "Иванов Иван",
        "clientPhone": "79161234567",
        "clientEmail": "ivan@ivanov.ru",
        "priority": 1,
        "rank": 10,
        "startDate": "2020-10-06T14:50:00+03:00",
        "status": 1,
        "taskTypeID": 1,
        "customStatusID": 1,
        "customStatusReasonID": 1,
        "mapObjectID": 1,
        "mapObjectWorkScheduleID": 0,
        "commentPolicy": 3,
        "competences": [
            \{
                "competenceID": 1,
                "amount": 5,
                "level": 2
            }
        ],
        "dimensions": \{
            "weight": 5,
            "unit": 5,
            "width": 5,
            "height": 5,
            "length": 5,
            "volume": 5
         },
        "serviceTime": 12,
        "startInterval": 12,
        "isMandatoryInRoute": true,
        "preferredPositionInRoute": 1,
        "isFixed": false,
        "customFieldsFormTemplateID": 1,
        "customFieldFormItems": [
            \{
                "externalID": "1",
                "name": "Лично в руки",
                "value": "True",
                "type": "Boolean"
            }
        ],
        "taskFormTemplates": [
            \{
                "status": 2,
                "taskFormTemplateID": 1,
                "isRequired": true,
                "prefillValues": [
                    \{
                        "externalID": "85978",
                        "value": "Значение поля",
                        "rows": [
                             [
                                 \{
                                     "externalID": "872",
                                     "value": "Значение колонки"
                                 }
                             ]
                        ]
                    }
                ]
            }
        ]
        "creationDate": "2020-10-06T12:50:00+03:00",
        "sharedLink": \{
            "isActive": true,
            "sharingPeriod": 2,
            "sharingEndDate": "2022-10-06T12:50:00+03:00",
            "sendToEmail": true,
            "sendToSMS": true
        },
        "feedback": \{
            "formInvitationProfileID": 1,
            "formTemplateID": 1,
            "sendToEmail": true,
            "sendToSMS": true
        },
        "checklists": [
             \{
                 "checklistID": 1,
                 "assetID": 1,
                 "name": "Техническое обслуживание здания",
                 "description": "Дома десятиэтажные",
                 "isRequired": true,
                 "checkListExternalID": "6093f666-97db-4722-9bd0-4c9d9ab480e7",
                 "type": 0,
                 "status": 2,
                 "creationDate": "2020-10-19T21:10:39.94+03:00",
                 "taskID": 1,
                 "lastModificationDate": "2020-10-20T11:10:39.94+03:00",
                 "subscriberID": 1,
                 "latitude": 55.735528725106505,
                 "longitude": 37.61775044433594,
                 "radius": 100,
                 "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
                 "checkListTemplateIDs": [
                     1
                 ],
                 "checkListTemplateNames": [
                     "Техническое обслуживание десятиэтажных зданий"
                 ],
                 "maxScore": 10,
                 "totalScore": 8
             }
          ]
    }
]

Получение задачи

Общее описание

Функция GET /v6/api/taskManagement/tasks/{taskID} позволяет получить задачу по ее идентификатору.

Параметры вызова

В запросе используется обязательный параметр taskID — идентификатор задачи.

Результат выполнения

Функция возвращает структуру со следующими параметрами задачи:

Параметр Описание
taskID ИД задачи
subscriberID ИД Сотрудника
deadline Крайний срок завершения задачи (дата и время, подробнее о формате времени).
title Название задачи
description Описание задачи
address Адрес задачи
longitude Географическая долгота адреса (в градусах)
latitude Географическая широта адреса (в градусах)
externalID Внешний пользовательский ИД задачи
clientName ФИО клиента
clientPhone Телефон клиента
clientEmail Адрес электронной почты клиента
priority Приоритет задачи. Существуют следующие значения:
  • 0 – низкий;
  • 1 – средний;
  • 2 – высокий.
rank Ранг задачи. Допустимые значения: от 0 до 100.
startDate Дата начала задачи (подробнее о формате времени).
status Статус задачи. Существуют следующие значения:
  • 0 – новая;
  • 1 – принята;
  • 2 – отклонена;
  • 3 – выполнена;
  • 4 – в работе.
taskTypeID ИД типа задачи
customStatusID ИД пользовательского статуса задачи
customStatusReasonID Ид причины смены пользовательского статуса задачи
mapObjectID ИД объекта
mapObjectWorkScheduleID ИД расписания
commentPolicy Требования к комментарию при завершении задачи. Существуют следующие значения:
  • 0 – не обязателен;
  • 1 – обязателен;
  • 2 – обязателен при отклонении заявки;
  • 3 – обязателен в обоих случаях.
serviceTime Время выполнения задачи
startInterval Интервал начала выполнения задачи
preferredPositionInRoute Порядок задачи в маршруте. Допустимые значения: от 1 до 10.
isFixed Является ли задача закрепленной (нельзя менять время начала выполнения в пределах допустимого времени опоздания, изменять или снимать исполнителя). Существуют следующие значения:
  • true — задача закреплена;
  • false — задача не закреплена.
isMandatoryInRoute Должна ли задача быть обязательно поставлена в маршрут. Существуют следующие значения:
  • true – задача должна быть обязательно в маршруте.
  • false – задачи может не быть в маршруте.
creationDate Дата и время создания задачи (подробнее о формате времени).
includeWorkOrders Назначения задачи. Существуют следующие значения:
  • true – ответ будет содержать массив с назначением задачи;
  • false – ответ не будет содержать массив с назначением задачи.
includeRouteItems Информация из маршрута. Существуют следующие значения:
  • true – ответ будет содержать массив с информацией из маршрута;
  • false – ответ не будет содержать массив с информацией из маршрута.
considerWorkOrders Искать ли задачи дополнительно по датам назначений. Существуют следующие значения:
  • true – нужно искать задачи дополнительно по датам назначений;
  • false – не нужно искать задачи дополнительно по датам назначений.
Параметры маршрута задачи (массив структур routeItems)
plannedStartDate Плановая дата начала задачи (подробнее о формате времени).
plannedEndDate Плановая дата окончания задачи (подробнее о формате времени).
timeToPoint Время доезда в минутах до адреса задачи
distanceToPoint Расстояние в метрах до адреса задачи
awaitingTime Время ожидания начала задачи после доезда до адреса задачи
Параметры компетенций задачи (competences)
competenceID ИД компетенции
amount Вес компетенции
level Уровень владения компетенцией
Параметры измерений (структура dimensions)
weight Вес (кг)
unit Юниты
width Ширина (м)
height Высота (м)
length Длина (м)
volume Объем (м3)
Параметры дополнительных полей задачи (массив структур customFieldFormItems)
externalID ИД дополнительного поля
name Название дополнительного поля
value Значение дополнительного поля
values Значения дополнительного поля в случае множественного выбора
type Тип дополнительного поля. Существуют следующие типы:
  • string – строка;
  • text – текст;
  • date – дата;
  • time – время;
  • integer – целое число;
  • double – вещественное число;
  • boolean – галочка;
  • select – список;
  • picture – изображение;
  • file – файл.
subType Подтип поля «Строка». Существуют следующие значения:
  • 0 — ввод текста;
  • 3 — ввод номера телефона;
  • 5 — ввод ссылки.
Подтип поля «Целое число». Существуют следующие значения:
  • 0 — ввод целого числа.
Подтип поля «Вещественное число». Существуют следующие значения:
  • 0 — ввод целого числа.
Подтип поля «Изображение». Существуют следующие значения:
  • 0 — любое изображение.
Параметры шаблона формы, обязательного для заполнения при отклонении или завершении задачи (массив структур taskFormTemplates)
status Статус задачи, при переводе в который необходимо заполнить форму. Существуют следующие значения:
  • 2 — отклонена;
  • 3 — выполнена.
taskFormTemplateID ИД шаблона формы.
isRequired Является ли обязательным заполнение формы. Существуют следующие значения:
  • true — заполнение формы является обязательным.
  • false — заполнение формы является необязательным.
Параметры предзаполненных полей (массив структур prefillValues)
externalID Внешний ИД поля. 
value Значение поля.
values Значения колонки в случае множественного выбора
Параметры колонок таблицы (массив массивов rows)
externalID Внешний ИД колонки. 
name Название колонки
value Значение колонки
values Значения колонки в случае множественного выбора
type Тип дополнительного поля. Существуют следующие типы:
  • string – строка;
  • integer – целое число;
  • select – список.
subtype Подтип поля «Строка». Существуют следующие значения:
  • 0 — ввод текста.
Подтип поля «Целое число». Существуют следующие значения:
  • 0 — ввод целого числа.
Параметры общей ссылки на местоположение Сотрудника, выполняющего задачу. Получателю ссылки не требуются логин и пароль для просмотра местоположения (структура sharedLink)
isActive Активность ссылки. Существуют следующие значения:
  • true — ссылка активна, можно просматривать местоположение Сотрудника;
  • false — ссылка неактивна; местоположение Сотрудника недоступно.
sharingPeriod Время действия ссылки, после его окончания просмотр местоположения по ссылке станет недоступным. Существуют следующие значения:
  • 1 — до окончания выполнения задачи. Как только статус задачи будет изменен на «Выполнена», просмотр местоположения станет недоступным;
  • 2 — до указанного времени.
sharingEndDate Дата и время окончания действия ссылки (если в параметре sharingPeriod передано значение 2)
sendToEmail Отправить ссылку на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить ссылку по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры обратной связи (структура feedback)
formInvitationProfileID ИД профиля обратной связи
formTemplateID ИД формы обратной связи
sendToEmail Отправить форму обратной связи на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить форму обратной связи по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры чек-листов (массив структур checklists)
checklistID ИД чек-листа
assetID ИД актива
name Название чек-листа
description Описание чек-листа
isRequired Является ли заполнение чек-листа обязательным. Существуют следующие значения:
  • true — заполнение чек-листа является обязательным;
  • false — заполнение чек-листа не обязательно.
checkListExternalID Внешний ИД чек-листа
type Тип чек-листа. Существуют следующие значения:
  • 0 — тип по умолчанию.
Status Статус чек-листа. Существуют следующие значения:
  • 0 — новый;
  • 1 — черновик;
  • 2 — пройден.
creationDate Дата и время создания чек-листа
taskID ИД задачи, к которой привязан чек-лист
lastModificationDate Дата и время последнего прохождения чек-листа
subscriberID ИД Сотрудника, который заполняет чек-лист
latitude Географическая широта места прохождения чек-листа (в градусах)
longitude Географическая долгота места прохождения чек-листа (в градусах)
radius Радиус погрешности определения места прохождения чек-листа (в метрах)
address Адрес прохождения чек-листа
checkListTemplateIDs ИД шаблонов чек-листов
checkListTemplateNames Названия шаблонов чек-листов
maxScore Максимальная оценка по итогам прохождения чек-листа
totalScore Общая оценка по итогам прохождения чек-листа

Формат запроса

GET /v6/api/taskManagement/tasks/\{taskID} HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/tasks/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

\{
    "taskID": integer,
    "routeItems": [
        \{
            "plannedStartDate": "string",
            "plannedEndDate": "string",
            "timeToPoint": integer,
            "distanceToPoint": integer
        }
    ],
    "subscriberID": integer,
    "deadline": "dateTime",
    "title": "string",
    "description": "string",
    "address": "string",
    "longitude": number,
    "latitude": number,
    "externalID": "string",
    "clientName": "string",
    "clientPhone": "string",
    "clientEmail": "string",
    "priority": integer,
    "rank": integer,
    "startDate": "dateTime",
    "status": integer,
    "taskTypeID": integer,
    "customStatusID": integer,
    "customStatusReasonID": integer,
    "mapObjectWorkScheduleID": integer,
    "commentPolicy": integer,
    "competences": [
        \{
            "competenceID": integer,
            "amount": number,
            "level": integer
        }
    ],
    "dimensions": \{
        "weight": number,
        "unit": number,
        "width": number,
        "height": number,
        "length": number,
        "volume": number
    },
    "serviceTime": integer,
    "startInterval": integer,
    "isMandatoryInRoute": boolean,
    "preferredPositionInRoute": integer,
    "isFixed": boolean,
    "customFieldsFormTemplateID": integer,
    "customFieldFormItems": [
        \{
            "externalID": "string",
            "name": "string",
            "value": "string",
            "values": [
                "string"
            ],
            "type": "string",
            "subtype": integer,
            "rows": [
                 [
                     \{
                        "externalID": "string",
                        "name": "string",
                        "value": "string",
                        "values": [
                            "string"
                        ],
                        "type": "string",
                        "subtype": integer
                    }
                ]
            ]
        }
    ],
    "taskFormTemplates": [
        \{
            "status": integer,
            "taskFormTemplateID": integer,
            "isRequired": boolean,
            "prefillValues": [
                \{
                    "externalID": "string",
                    "value": "string",
                    "rows": [
                         [
                             \{
                                 "externalID": "string",
                                 "value": "string"
                             }
                         ]
                    ]
                }
            ]
        }
    ]
    "creationDate": "dateTime",
    "sharedLink": \{
        "isActive": boolean,
        "sharingPeriod": integer,
        "sharingEndDate": "dateTime",
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "feedback": \{
        "formInvitationProfileID": integer,
        "formTemplateID": integer,
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "checklists": [
         \{
             "checklistID": integer,
             "assetID": integer,
             "name": "string",
             "description": "string",
             "isRequired": boolean,
             "checkListExternalID": "string",
             "type": integer,
             "status": integer,
             "creationDate": "date-time",
             "taskID": integer,
             "lastModificationDate": "date-time",
             "subscriberID": integer,
             "latitude": number,
             "longitude": number,
             "radius": integer,
             "address": "string",
             "checkListTemplateIDs": [
                 integer
             ],
             "checkListTemplateNames": [
                 "string"
             ],
             "maxScore": number,
             "totalScore": number
         }
      ]
}

Пример ответа

\{
    "taskID": 1,	
    "routeItems": [
        \{
            "plannedStartDate": "2024-07-31T09:08:55.988Z",
            "plannedEndDate": "2024-07-31T09:08:55.988Z",
            "timeToPoint": 60,
            "distanceToPoint": 650
        }
    ],
    "subscriberID": 1,
    "deadline": "2020-10-06T20:00:00+03:00",
    "title": "task",
    "description": "Описание",
    "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
    "longitude": 37.61775044433594,
    "latitude": 55.735528725106505,
    "externalID": null,
    "clientName": "Иванов Иван",
    "clientPhone": "79161234567",
    "clientEmail": "ivan@ivanov.ru",
    "priority": 1,
    "rank": 10,
    "startDate": "2020-10-06T14:50:00+03:00",
    "status": 1,
    "taskTypeID": 1,
    "customStatusID": 1,
    "customStatusReasonID": 1,
    "mapObjectID": 1,
    "mapObjectWorkScheduleID": 0,
    "commentPolicy": 3,
    "competences": [
        \{	
            "competenceID": 1,
            "amount": 13,
            "level": 3
        }
    ],
    "dimensions": \{
        "weight": 5,  
        "unit": 5,
        "width": 5,
        "height": 5,
        "length": 5,
        "volume": 5
    },
    "serviceTime": 12,
    "startInterval": 12,
    "isMandatoryInRoute": true,
    "preferredPositionInRoute": 1,
    "isFixed": false,
    "customFieldsFormTemplateID": 1,
    "customFieldFormItems": [
        \{			
            "externalID": "1",
            "name": "Лично в руки",
            "value": "True",
            "type": "Boolean"
        }
    ],
    "taskFormTemplates": [
        \{
            "status": 2,
            "taskFormTemplateID": 1,
            "isRequired": true,
            "prefillValues": [
                \{
                    "externalID": "85978",
                    "value": "Значение поля",
                    "rows": [
                         [
                             \{
                                 "externalID": "872",
                                 "value": "Значение колонки"
                             }
                         ]
                    ]
                }
            ]
        }
    ]
    "creationDate": "2020-10-06T12:50:00+03:00",
    "sharedLink": \{
        "isActive": true,
        "sharingPeriod": 2,
        "sharingEndDate": "2022-10-06T12:50:00+03:00",
        "sendToEmail": true,
        "sendToSMS": true
    },
    "feedback": \{
        "formInvitationProfileID": 1,
        "formTemplateID": 1,
        "sendToEmail": true,
        "sendToSMS": true
    },
    "checklists": [
         \{
             "checklistID": 1,
             "assetID": 1,
             "name": "Техническое обслуживание здания",
             "description": "Дома десятиэтажные",
             "isRequired": true,
             "checkListExternalID": "6093f666-97db-4722-9bd0-4c9d9ab480e7",
             "type": 0,
             "status": 2,
             "creationDate": "2020-10-19T21:10:39.94+03:00",
             "taskID": 1,
             "lastModificationDate": "2020-10-20T11:10:39.94+03:00",
             "subscriberID": 1,
             "latitude": 55.735528725106505,
             "longitude": 37.61775044433594,
             "radius": 100,
             "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
             "checkListTemplateIDs": [
                 1
             ],
             "checkListTemplateNames": [
                 "Техническое обслуживание десятиэтажных зданий"
             ],
             "maxScore": 10,
             "totalScore": 8
         }
      ]
}

Получение задачи по внешнему идентификатору

Общее описание

Функция GET /v6/api/taskManagement/tasks/externalID/{externalID} позволяет получить задачу по ее внешнему идентификатору.

Параметры вызова

В запросе используется обязательный параметр externalID — внешний идентификатор задачи.

Результат выполнения

Функция возвращает структуру со следующими параметрами задачи:

Параметр Описание
taskID ИД задачи
subscriberID ИД Сотрудника
deadline Крайний срок завершения задачи (дата и время, подробнее о формате времени).
title Название задачи
description Описание задачи
address Адрес задачи
longitude Географическая долгота адреса (в градусах)
latitude Географическая широта адреса (в градусах)
externalID Внешний пользовательский ИД задачи
clientName ФИО клиента
clientPhone Телефон клиента
clientEmail Адрес электронной почты клиента
priority Приоритет задачи. Существуют следующие значения:
  • 0 – низкий;
  • 1 – средний;
  • 2 – высокий.
rank Ранг задачи. Допустимые значения: от 0 до 100.
startDate Дата начала задачи (подробнее о формате времени).
status Статус задачи. Существуют следующие значения:
  • 0 – новая;
  • 1 – принята;
  • 2 – отклонена;
  • 3 – выполнена;
  • 4 – в работе.
taskTypeID ИД типа задачи
customStatusID ИД пользовательского статуса задачи
customStatusReasonID Ид причины смены пользовательского статуса задачи
mapObjectID ИД объекта
mapObjectWorkScheduleID ИД расписания
commentPolicy Требования к комментарию при завершении задачи. Существуют следующие значения:
  • 0 – не обязателен;
  • 1 – обязателен;
  • 2 – обязателен при отклонении заявки;
  • 3 – обязателен в обоих случаях.
serviceTime Время выполнения задачи
startInterval Интервал начала выполнения задачи
preferredPositionInRoute Порядок задачи в маршруте. Допустимые значения: от 1 до 10.
isFixed Является ли задача закрепленной (нельзя менять время начала выполнения в пределах допустимого времени опоздания, изменять или снимать исполнителя). Существуют следующие значения:
  • true — задача закреплена;
  • false — задача не закреплена.
isMandatoryInRoute Должна ли задача быть обязательно поставлена в маршрут. Существуют следующие значения:
  • true – задача должна быть обязательно в маршруте.
  • false – задачи может не быть в маршруте.
creationDate Дата и время создания задачи (подробнее о формате времени).
includeWorkOrders Назначения задачи. Существуют следующие значения:
  • true – ответ будет содержать массив с назначением задачи;
  • false – ответ не будет содержать массив с назначением задачи.
includeRouteItems Информация из маршрута. Существуют следующие значения:
  • true – ответ будет содержать массив с информацией из маршрута;
  • false – ответ не будет содержать массив с информацией из маршрута.
considerWorkOrders Искать ли задачи дополнительно по датам назначений. Существуют следующие значения:
  • true – нужно искать задачи дополнительно по датам назначений;
  • false – не нужно искать задачи дополнительно по датам назначений.
Параметры маршрута задачи (массив структур routeItems)
plannedStartDate Плановая дата начала задачи (подробнее о формате времени).
plannedEndDate Плановая дата окончания задачи (подробнее о формате времени).
timeToPoint Время доезда в минутах до адреса задачи
distanceToPoint Расстояние в метрах до адреса задачи
awaitingTime Время ожидания начала задачи после доезда до адреса задачи
Параметры компетенций задачи (competences)
competenceID ИД компетенции
amount Вес компетенции
level Уровень владения компетенцией
Параметры измерений (структура dimensions)
weight Вес (кг)
unit Юниты
width Ширина (м)
height Высота (м)
length Длина (м)
volume Объем (м3)
Параметры дополнительных полей задачи (массив структур customFieldFormItems)
externalID ИД дополнительного поля
name Название дополнительного поля
value Значение дополнительного поля
values Значения дополнительного поля в случае множественного выбора
type Тип дополнительного поля. Существуют следующие типы:
  • string – строка;
  • text – текст;
  • date – дата;
  • time – время;
  • integer – целое число;
  • double – вещественное число;
  • boolean – галочка;
  • select – список;
  • picture – изображение;
  • file – файл.
subType Подтип поля «Строка». Существуют следующие значения:
  • 0 — ввод текста;
  • 3 — ввод номера телефона;
  • 5 — ввод ссылки.
Подтип поля «Целое число». Существуют следующие значения:
  • 0 — ввод целого числа.
Подтип поля «Вещественное число». Существуют следующие значения:
  • 0 — ввод целого числа.
Подтип поля «Изображение». Существуют следующие значения:
  • 0 — любое изображение.
Параметры шаблона формы, обязательного для заполнения при отклонении или завершении задачи (массив структур taskFormTemplates)
status Статус задачи, при переводе в который необходимо заполнить форму. Существуют следующие значения:
  • 2 — отклонена;
  • 3 — выполнена.
taskFormTemplateID ИД шаблона формы.
isRequired Является ли обязательным заполнение формы. Существуют следующие значения:
  • true — заполнение формы является обязательным.
  • false — заполнение формы является необязательным.
Параметры предзаполненных полей (массив структур prefillValues)
externalID Внешний ИД поля. 
value Значение поля.
values Значения колонки в случае множественного выбора
Параметры колонок таблицы (массив массивов rows)
externalID Внешний ИД колонки. 
name Название колонки
value Значение колонки
values Значения колонки в случае множественного выбора
type Тип дополнительного поля. Существуют следующие типы:
  • string – строка;
  • integer – целое число;
  • select – список.
subtype Подтип поля «Строка». Существуют следующие значения:
  • 0 — ввод текста.
Подтип поля «Целое число». Существуют следующие значения:
  • 0 — ввод целого числа.
Параметры общей ссылки на местоположение Сотрудника, выполняющего задачу. Получателю ссылки не требуются логин и пароль для просмотра местоположения (структура sharedLink)
isActive Активность ссылки. Существуют следующие значения:
  • true — ссылка активна, можно просматривать местоположение Сотрудника;
  • false — ссылка неактивна; местоположение Сотрудника недоступно.
sharingPeriod Время действия ссылки, после его окончания просмотр местоположения по ссылке станет недоступным. Существуют следующие значения:
  • 1 — до окончания выполнения задачи. Как только статус задачи будет изменен на «Выполнена», просмотр местоположения станет недоступным;
  • 2 — до указанного времени.
sharingEndDate Дата и время окончания действия ссылки (если в параметре sharingPeriod передано значение 2)
sendToEmail Отправить ссылку на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить ссылку по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры обратной связи (структура feedback)
formInvitationProfileID ИД профиля обратной связи
formTemplateID ИД формы обратной связи
sendToEmail Отправить форму обратной связи на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить форму обратной связи по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры чек-листов (массив структур checklists)
checklistID ИД чек-листа
assetID ИД актива
name Название чек-листа
description Описание чек-листа
isRequired Является ли заполнение чек-листа обязательным. Существуют следующие значения:
  • true — заполнение чек-листа является обязательным;
  • false — заполнение чек-листа не обязательно.
checkListExternalID Внешний ИД чек-листа
type Тип чек-листа. Существуют следующие значения:
  • 0 — тип по умолчанию.
Status Статус чек-листа. Существуют следующие значения:
  • 0 — новый;
  • 1 — черновик;
  • 2 — пройден.
creationDate Дата и время создания чек-листа
taskID ИД задачи, к которой привязан чек-лист
lastModificationDate Дата и время последнего прохождения чек-листа
subscriberID ИД Сотрудника, который заполняет чек-лист
latitude Географическая широта места прохождения чек-листа (в градусах)
longitude Географическая долгота места прохождения чек-листа (в градусах)
radius Радиус погрешности определения места прохождения чек-листа (в метрах)
address Адрес прохождения чек-листа
checkListTemplateIDs ИД шаблонов чек-листов
checkListTemplateNames Названия шаблонов чек-листов
maxScore Максимальная оценка по итогам прохождения чек-листа
totalScore Общая оценка по итогам прохождения чек-листа

Формат запроса

GET /v6/api/taskManagement/tasks/externalID/\{externalID} HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/tasks/externalID/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

\{
    "taskID": integer,
    "routeItems": [
        \{
            "plannedStartDate": "string",
            "plannedEndDate": "string",
            "timeToPoint": integer,
            "distanceToPoint": integer
        }
    ],
    "subscriberID": integer,
    "deadline": "dateTime",
    "title": "string",
    "description": "string",
    "address": "string",
    "longitude": number,
    "latitude": number,
    "externalID": "string",
    "clientName": "string",
    "clientPhone": "string",
    "clientEmail": "string",
    "priority": integer,
    "rank": integer,
    "startDate": "dateTime",
    "status": integer,
    "taskTypeID": integer,
    "customStatusID": integer,
    "customStatusReasonID": integer,
    "mapObjectWorkScheduleID": integer,
    "commentPolicy": integer,
    "competences": [
        \{
            "competenceID": integer,
            "amount": number,
            "level": integer
        }
    ],
    "dimensions": \{
        "weight": number,
        "unit": number,
        "width": number,
        "height": number,
        "length": number,
        "volume": number
    },
    "serviceTime": integer,
    "startInterval": integer,
    "isMandatoryInRoute": boolean,
    "preferredPositionInRoute": integer,
    "isFixed": boolean,
    "customFieldsFormTemplateID": integer,
    "customFieldFormItems": [
        \{
            "externalID": "string",
            "name": "string",
            "value": "string",
            "values": [
                "string"
            ],
            "type": "string",
            "subtype": integer,
            "rows": [
                 [
                     \{
                        "externalID": "string",
                        "name": "string",
                        "value": "string",
                        "values": [
                            "string"
                        ],
                        "type": "string",
                        "subtype": integer
                    }
                ]
            ]
        }
    ],
    "taskFormTemplates": [
        \{
            "status": integer,
            "taskFormTemplateID": integer,
            "isRequired": boolean,
            "prefillValues": [
                \{
                    "externalID": "string",
                    "value": "string",
                    "rows": [
                         [
                             \{
                                 "externalID": "string",
                                 "value": "string"
                             }
                         ]
                    ]
                }
            ]
        }
    ]
    "creationDate": "dateTime",
    "sharedLink": \{
        "isActive": boolean,
        "sharingPeriod": integer,
        "sharingEndDate": "dateTime",
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "feedback": \{
        "formInvitationProfileID": integer,
        "formTemplateID": integer,
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "checklists": [
         \{
             "checklistID": integer,
             "assetID": integer,
             "name": "string",
             "description": "string",
             "isRequired": boolean,
             "checkListExternalID": "string",
             "type": integer,
             "status": integer,
             "creationDate": "date-time",
             "taskID": integer,
             "lastModificationDate": "date-time",
             "subscriberID": integer,
             "latitude": number,
             "longitude": number,
             "radius": integer,
             "address": "string",
             "checkListTemplateIDs": [
                 integer
             ],
             "checkListTemplateNames": [
                 "string"
             ],
             "maxScore": number,
             "totalScore": number
         }
      ]
}

Пример ответа

\{
    "taskID": 1,	
    "routeItems": [
        \{
            "plannedStartDate": "2024-07-31T09:08:55.988Z",
            "plannedEndDate": "2024-07-31T09:08:55.988Z",
            "timeToPoint": 60,
            "distanceToPoint": 650
        }
    ],
    "subscriberID": 1,
    "deadline": "2020-10-06T20:00:00+03:00",
    "title": "task",
    "description": "Описание",
    "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
    "longitude": 37.61775044433594,
    "latitude": 55.735528725106505,
    "externalID": null,
    "clientName": "Иванов Иван",
    "clientPhone": "79161234567",
    "clientEmail": "ivan@ivanov.ru",
    "priority": 1,
    "rank": 10,
    "startDate": "2020-10-06T14:50:00+03:00",
    "status": 1,
    "taskTypeID": 1,
    "customStatusID": 1,
    "customStatusReasonID": 1,
    "mapObjectID": 1,
    "mapObjectWorkScheduleID": 0,
    "commentPolicy": 3,
    "competences": [
        \{	
            "competenceID": 1,
            "amount": 13,
            "level": 3
        }
    ],
    "dimensions": \{
        "weight": 5,  
        "unit": 5,
        "width": 5,
        "height": 5,
        "length": 5,
        "volume": 5
    },
    "serviceTime": 12,
    "startInterval": 12,
    "isMandatoryInRoute": true,
    "preferredPositionInRoute": 1,
    "isFixed": false,
    "customFieldsFormTemplateID": 1,
    "customFieldFormItems": [
        \{			
            "externalID": "1",
            "name": "Лично в руки",
            "value": "True",
            "type": "Boolean"
        }
    ],
    "taskFormTemplates": [
        \{
            "status": 2,
            "taskFormTemplateID": 1,
            "isRequired": true,
            "prefillValues": [
                \{
                    "externalID": "85978",
                    "value": "Значение поля",
                    "rows": [
                         [
                             \{
                                 "externalID": "872",
                                 "value": "Значение колонки"
                             }
                         ]
                    ]
                }
            ]
        }
    ]
    "creationDate": "2020-10-06T12:50:00+03:00",
    "sharedLink": \{
        "isActive": true,
        "sharingPeriod": 2,
        "sharingEndDate": "2022-10-06T12:50:00+03:00",
        "sendToEmail": true,
        "sendToSMS": true
    },
    "feedback": \{
        "formInvitationProfileID": 1,
        "formTemplateID": 1,
        "sendToEmail": true,
        "sendToSMS": true
    },
    "checklists": [
         \{
             "checklistID": 1,
             "assetID": 1,
             "name": "Техническое обслуживание здания",
             "description": "Дома десятиэтажные",
             "isRequired": true,
             "checkListExternalID": "6093f666-97db-4722-9bd0-4c9d9ab480e7",
             "type": 0,
             "status": 2,
             "creationDate": "2020-10-19T21:10:39.94+03:00",
             "taskID": 1,
             "lastModificationDate": "2020-10-20T11:10:39.94+03:00",
             "subscriberID": 1,
             "latitude": 55.735528725106505,
             "longitude": 37.61775044433594,
             "radius": 100,
             "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
             "checkListTemplateIDs": [
                 1
             ],
             "checkListTemplateNames": [
                 "Техническое обслуживание десятиэтажных зданий"
             ],
             "maxScore": 10,
             "totalScore": 8
         }
      ]
}

Создание задачи

Общее описание

Функция POST /v6/api/taskManagement/tasks позволяет создать одну задачу.

Для создания нескольких задач необходимо использовать функцию POST /v6/api/jobManagement/jobs/tasks.

Параметры вызова

Функция имеет следующие параметры:

Параметр Описание
subscriberID ИД Сотрудника
deadline Крайний срок завершения задачи (дата и время, подробнее о формате времени)
title Название задачи (обязательное поле)
description Описание задачи
address Адрес задачи
longitude Географическая долгота адреса (в градусах). Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
latitude Географическая широта адреса (в градусах). Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
externalID Внешний пользовательский ИД задачи
clientName ФИО клиента
clientPhone Телефон клиента
clientEmail Адрес электронной почты клиента
priority Приоритет задачи. Существуют следующие значения:
  • 0 – низкий;
  • 1 – средний;
  • 2 – высокий.
rank Ранг задачи. Допустимые значения: от 0 до 100.
startDate Дата начала задачи (обязательное поле). Подробнее о формате времени)
status Статус задачи. Существуют следующие значения:
  • 0 – новая;
  • 1 – принята;
  • 2 – отклонена;
  • 3 – выполнена;
  • 4 – в работе.
taskTypeID ИД типа задачи
customStatusID ИД пользовательского статуса задачи
customStatusReasonID Ид причины смены пользовательского статуса задачи
mapObjectID ИД объекта. Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
mapObjectWorkScheduleID ИД расписания
commentPolicy Требования к комментарию при завершении задачи. Существуют следующие значения:
  • 0 – не обязателен;
  • 1 – обязателен;
  • 2 – обязателен при отклонении заявки;
  • 3 – обязателен в обоих случаях.
serviceTime Время выполнения задачи
startInterval Интервал начала выполнения задачи
preferredPositionInRoute Порядок задачи в маршруте. Допустимые значения: от 1 до 10.
isFixed Является ли задача закрепленной. Существуют следующие значения:
  • true — задача закреплена;
  • false — задача не закреплена.
isMandatoryInRoute Должна ли задача быть обязательно поставлена в маршрут. Существуют следующие значения:
  • true – задача должна быть обязательно в маршруте.
  • false – задачи может не быть в маршруте.
Параметры компетенций задачи (competences)
competenceID ИД компетенции
amount Вес компетенции
level Уровень владения компетенцией
Параметры измерений (структура dimensions)
weight Вес (кг)
unit Юниты
width Ширина (м)
height Высота (м)
length Длина (м)
volume Объем (м3)
Параметры дополнительных полей задачи (массив структур customFieldFormItems)
externalID ИД дополнительного поля
value Значение дополнительного поля
values Значения поля в случае множественного выбора
Параметры шаблонов формы, обязательной при отклонении или завершении задачи (массив структур taskFormTemplates)
status Статус задачи, при переводе в который необходимо заполнить форму. Возможные значения:
  • 2 — отклонена
  • 3 — выполнена
Если статус не передан или равен null, сотрудник сможет заполнить только шаблоны со статусом null. Если таких нет — любой шаблон формы.
taskFormTemplateID ИД шаблона формы
isRequired Является ли заполнение формы обязательным. Возможные значения:
  • true — заполнение обязательно
  • false — заполнение необязательно
Параметры предзаполненных полей (массив структур prefillValues)
externalID Внешний ИД поля
value Значение поля
values Значения в случае множественного выбора
Параметры колонок таблицы (массив массивов rows)
externalID Внешний ИД колонки
value Значение колонки
values Значения в случае множественного выбора
Параметры общей ссылки на местоположение сотрудника (структура sharedLink)
isActive Активность ссылки:
  • true — ссылка активна
  • false — ссылка неактивна
sharingPeriod Время действия ссылки:
  • 1 — до окончания выполнения задачи
  • 2 — до указанного времени
sharingEndDate Дата и время окончания действия ссылки (если sharingPeriod = 2)
sendToEmail Отправка ссылки на e-mail клиента:
  • true — отправить
  • false — не отправлять
sendToSMS Отправка ссылки по SMS:
  • true — отправить
  • false — не отправлять
Параметры обратной связи (структура feedback)
formInvitationProfileID ИД профиля обратной связи
formTemplateID ИД формы обратной связи
sendToEmail Отправить форму обратной связи на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить форму обратной связи по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры чек-листа (массив структур checklists)
assetID ИД актива
isRequired Является ли заполнение чек-листа обязательным. Существуют следующие значения:
  • true — заполнение чек-листа является обязательным;
  • false — заполнение чек-листа не обязательно.
type Тип чек-листа. Существуют следующие значения:
  • 0 — типа по умолчанию.
checkListTemplateIDs ИД шаблонов чек-листов
name Название чек-листа
Description Описание чек-листа

Результат выполнения

При успешном выполнении возвращается статус 201.

Функция возвращает структуру со следующими параметрами задачи:

Параметр Описание
taskID ИД задачи
subscriberID ИД Сотрудника
deadline Крайний срок завершения задачи (дата и время, подробнее о формате времени).
title Название задачи
description Описание задачи
address Адрес задачи
longitude Географическая долгота адреса (в градусах)
latitude Географическая широта адреса (в градусах)
externalID Внешний пользовательский ИД задачи
clientName ФИО клиента
clientPhone Телефон клиента
clientEmail Адрес электронной почты клиента
priority Приоритет задачи. Существуют следующие значения:
  • 0 – низкий;
  • 1 – средний;
  • 2 – высокий.
rank Ранг задачи. Допустимые значения: от 0 до 100.
startDate Дата начала задачи (подробнее о формате времени).
status Статус задачи. Существуют следующие значения:
  • 0 – новая;
  • 1 – принята;
  • 2 – отклонена;
  • 3 – выполнена;
  • 4 – в работе.
taskTypeID ИД типа задачи
customStatusID ИД пользовательского статуса задачи
customStatusReasonID Ид причины смены пользовательского статуса задачи
mapObjectID ИД объекта
mapObjectWorkScheduleID ИД расписания
commentPolicy Требования к комментарию при завершении задачи. Существуют следующие значения:
  • 0 – не обязателен;
  • 1 – обязателен;
  • 2 – обязателен при отклонении заявки;
  • 3 – обязателен в обоих случаях.
serviceTime Время выполнения задачи
startInterval Интервал начала выполнения задачи
preferredPositionInRoute Порядок задачи в маршруте. Допустимые значения: от 1 до 10.
isFixed Является ли задача закрепленной (нельзя менять время начала выполнения в пределах допустимого времени опоздания, изменять или снимать исполнителя). Существуют следующие значения:
  • true — задача закреплена;
  • false — задача не закреплена.
isMandatoryInRoute Должна ли задача быть обязательно поставлена в маршрут. Существуют следующие значения:
  • true – задача должна быть обязательно в маршруте.
  • false – задачи может не быть в маршруте.
creationDate Дата и время создания задачи (подробнее о формате времени).
includeWorkOrders Назначения задачи. Существуют следующие значения:
  • true – ответ будет содержать массив с назначением задачи;
  • false – ответ не будет содержать массив с назначением задачи.
includeRouteItems Информация из маршрута. Существуют следующие значения:
  • true – ответ будет содержать массив с информацией из маршрута;
  • false – ответ не будет содержать массив с информацией из маршрута.
considerWorkOrders Искать ли задачи дополнительно по датам назначений. Существуют следующие значения:
  • true – нужно искать задачи дополнительно по датам назначений;
  • false – не нужно искать задачи дополнительно по датам назначений.
Параметры маршрута задачи (массив структур routeItems)
plannedStartDate Плановая дата начала задачи (подробнее о формате времени).
plannedEndDate Плановая дата окончания задачи (подробнее о формате времени).
timeToPoint Время доезда в минутах до адреса задачи
distanceToPoint Расстояние в метрах до адреса задачи
awaitingTime Время ожидания начала задачи после доезда до адреса задачи
Параметры компетенций задачи (competences)
competenceID ИД компетенции
amount Вес компетенции
level Уровень владения компетенцией
Параметры измерений (структура dimensions)
weight Вес (кг)
unit Юниты
width Ширина (м)
height Высота (м)
length Длина (м)
volume Объем (м3)
Параметры дополнительных полей задачи (массив структур customFieldFormItems)
externalID ИД дополнительного поля
name Название дополнительного поля
value Значение дополнительного поля
values Значения дополнительного поля в случае множественного выбора
type Тип дополнительного поля. Существуют следующие типы:
  • string – строка;
  • text – текст;
  • date – дата;
  • time – время;
  • integer – целое число;
  • double – вещественное число;
  • boolean – галочка;
  • select – список;
  • picture – изображение;
  • file – файл.
subType Подтип поля «Строка». Существуют следующие значения:
  • 0 — ввод текста;
  • 3 — ввод номера телефона;
  • 5 — ввод ссылки.
Подтип поля «Целое число». Существуют следующие значения:
  • 0 — ввод целого числа.
Подтип поля «Вещественное число». Существуют следующие значения:
  • 0 — ввод целого числа.
Подтип поля «Изображение». Существуют следующие значения:
  • 0 — любое изображение.
Параметры шаблона формы, обязательного для заполнения при отклонении или завершении задачи (массив структур taskFormTemplates)
status Статус задачи, при переводе в который необходимо заполнить форму. Существуют следующие значения:
  • 2 — отклонена;
  • 3 — выполнена.
taskFormTemplateID ИД шаблона формы.
isRequired Является ли обязательным заполнение формы. Существуют следующие значения:
  • true — заполнение формы является обязательным.
  • false — заполнение формы является необязательным.
Параметры предзаполненных полей (массив структур prefillValues)
externalID Внешний ИД поля. 
value Значение поля.
values Значения колонки в случае множественного выбора
Параметры колонок таблицы (массив массивов rows)
externalID Внешний ИД колонки. 
name Название колонки
value Значение колонки
values Значения колонки в случае множественного выбора
type Тип дополнительного поля. Существуют следующие типы:
  • string – строка;
  • integer – целое число;
  • select – список.
subtype Подтип поля «Строка». Существуют следующие значения:
  • 0 — ввод текста.
Подтип поля «Целое число». Существуют следующие значения:
  • 0 — ввод целого числа.
Параметры общей ссылки на местоположение Сотрудника, выполняющего задачу. Получателю ссылки не требуются логин и пароль для просмотра местоположения (структура sharedLink)
isActive Активность ссылки. Существуют следующие значения:
  • true — ссылка активна, можно просматривать местоположение Сотрудника;
  • false — ссылка неактивна; местоположение Сотрудника недоступно.
sharingPeriod Время действия ссылки, после его окончания просмотр местоположения по ссылке станет недоступным. Существуют следующие значения:
  • 1 — до окончания выполнения задачи. Как только статус задачи будет изменен на «Выполнена», просмотр местоположения станет недоступным;
  • 2 — до указанного времени.
sharingEndDate Дата и время окончания действия ссылки (если в параметре sharingPeriod передано значение 2)
sendToEmail Отправить ссылку на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить ссылку по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры обратной связи (структура feedback)
formInvitationProfileID ИД профиля обратной связи
formTemplateID ИД формы обратной связи
sendToEmail Отправить форму обратной связи на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить форму обратной связи по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры чек-листов (массив структур checklists)
checklistID ИД чек-листа
assetID ИД актива
name Название чек-листа
description Описание чек-листа
isRequired Является ли заполнение чек-листа обязательным. Существуют следующие значения:
  • true — заполнение чек-листа является обязательным;
  • false — заполнение чек-листа не обязательно.
checkListExternalID Внешний ИД чек-листа
type Тип чек-листа. Существуют следующие значения:
  • 0 — тип по умолчанию.
Status Статус чек-листа. Существуют следующие значения:
  • 0 — новый;
  • 1 — черновик;
  • 2 — пройден.
creationDate Дата и время создания чек-листа
taskID ИД задачи, к которой привязан чек-лист
lastModificationDate Дата и время последнего прохождения чек-листа
subscriberID ИД Сотрудника, который заполняет чек-лист
latitude Географическая широта места прохождения чек-листа (в градусах)
longitude Географическая долгота места прохождения чек-листа (в градусах)
radius Радиус погрешности определения места прохождения чек-листа (в метрах)
address Адрес прохождения чек-листа
checkListTemplateIDs ИД шаблонов чек-листов
checkListTemplateNames Названия шаблонов чек-листов
maxScore Максимальная оценка по итогам прохождения чек-листа
totalScore Общая оценка по итогам прохождения чек-листа

Формат запроса

POST /v6/api/taskManagement/tasks HTTP/1.1
Host: host
Authorization: Bearer token		

\{
    "subscriberID": integer,
    "deadline": "dateTime",
    "title": "string",
    "description": "string",
    "address": "string",
    "longitude": number,
    "latitude": number,
    "externalID": "string",
    "clientName": "string",
    "clientPhone": "string",
    "clientEmail": "string",
    "priority": integer,
    "rank": integer,
    "startDate": "dateTime",
    "status": integer,
    "taskTypeID": integer,
    "customStatusID": integer,
    "customStatusReasonID": integer,
    "mapObjectID": integer,
    "mapObjectWorkScheduleID": integer,
    "commentPolicy": integer,
    "competences": [
        \{
            "competenceID": integer,
            "amount": number,
            "level": integer
        }
    ],
    "dimensions": \{
        "weight": number,
        "unit": number,
        "width": number,
        "height": number,
        "length": number,
        "volume": number
    },
    "serviceTime": integer,
    "startInterval": integer,
    "isMandatoryInRoute": boolean,
    "preferredPositionInRoute": integer,
    "isFixed": boolean,
    "customFieldsFormTemplateID": integer,
    "customFieldFormItems": [
        \{
            "externalID": "string",
            "value": "string",
            "values": [
                "string"
            ],
            "rows": [
                 [
                     \{
                        "externalID": "string",
                        "value": "string",
                        "values": [
                            "string"
                        ],
                    }
                ]
            ]
        }
    ],
    "taskFormTemplates": [
        \{
            "status": integer,
            "taskFormTemplateID": integer,
            "isRequired": boolean,
            "prefillValues": [
                \{
                    "externalID": "string",
                    "value": "string",
                    "values": [
                        "string",
                    ]
                    "rows": [
                         [
                             \{
                                 "externalID": "string",
                                 "value": "string",
                                 "value": [
                                     "string"
                                 ]
                             }
                         ]
                    ]
                }
            ]
        }
    ],
    "sharedLink": \{
        "isActive": boolean,
        "sharingPeriod": integer,
        "sharingEndDate": "dateTime",
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "feedback": \{
        "formInvitationProfileID": integer,
        "formTemplateID": integer,
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "checklists": [
        \{
          "assetID": integer,
          "isRequired": boolean,
          "type": integer,
          "checkListTemplateIDs": [
            integer
          ],
          "name": "string",
          "description": "string"
        }
    ]
}

Пример запроса

POST /v6/api/taskManagement/tasks HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

\{
    "subscriberID": 1,
    "deadline": "2020-10-06T20:00:00",
    "title": "task",
    "description": "Описание",
    "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
    "longitude": 37.61775044433594,
    "latitude": 55.735528725106505,
    "externalID": 2,
    "clientName": "Иванов Иван",
    "clientPhone": "79161234567",
    "clientEmail": "ivan@ivanov.ru",
    "priority": 1,
    "rank": 10,
    "startDate": "2020-10-06T14:50:00",
    "status": 0,
    "taskTypeID": 1,
    "customStatusID": 1,
    "customStatusReasonID": 1,
    "mapObjectID": 1,
    "mapObjectWorkScheduleID": 0,
    "commentPolicy": 3,
    "competences": [
        \{
            "competenceID": 1,
            "amount": 13,
            "level": 3
        }			
    ],
    "dimensions": \{
        "weight": 5,
        "unit": 5,
        "width": 5,
        "height": 5,
        "length": 5,
        "volume": 5
    },
    "serviceTime": 12,
    "startInterval": 12,
    "isMandatoryInRoute": true,
    "preferredPositionInRoute": 1,
    "isFixed": false,
    "customFieldsFormTemplateID": 1,
    "customFieldFormItems": [
        \{
            "externalID": "1",
            "value": "True"
        }
    ],
    "taskFormTemplates": [
        \{
            "status": 2,
            "taskFormTemplateID": 1,
            "isRequired": true
        },
        \{
            "status": 3,
            "taskFormTemplateID": 2,
            "isRequired": true
        }
    ],
    "sharedLink": \{
        "isActive": true,
        "sharingPeriod": 2,
        "sharingEndDate": "2022-10-06T12:50:00+03:00",
        "sendToEmail": true,
        "sendToSMS": true
    },
    "feedback": \{
        "formInvitationProfileID": 1,
        "formTemplateID": 1,
        "sendToEmail": true,
        "sendToSMS": true
    },
    "checklists": [
        \{
          "assetID": 1,
          "isRequired": true,
          "type": 0,
          "checkListTemplateIDs": [
            1
          ],
          "name": "Техническое обслуживание здания",
          "description": "Полное тех. Обслуживание"
        }
    ]
}

Формат ответа

\{
    "taskID": integer,
    "routeItems": [
        \{
            "plannedStartDate": "string",
            "plannedEndDate": "string",
            "timeToPoint": integer,
            "distanceToPoint": integer
        }
    ],
    "subscriberID": integer,
    "deadline": "dateTime",
    "title": "string",
    "description": "string",
    "address": "string",
    "longitude": number,
    "latitude": number,
    "externalID": "string",
    "clientName": "string",
    "clientPhone": "string",
    "clientEmail": "string",
    "priority": integer,
    "rank": integer,
    "startDate": "dateTime",
    "status": integer,
    "taskTypeID": integer,
    "customStatusID": integer,
    "customStatusReasonID": integer,
    "mapObjectID": integer,
    "mapObjectWorkScheduleID": integer,
    "commentPolicy": integer,
    "competences": [
        \{
            "competenceID": integer,
            "amount": number,
            "level": integer
        }
    ],
    "dimensions": \{
        "weight": number,
        "unit": number,
        "width": number,
        "height": number,
        "length": number,
        "volume": number
    },
    "serviceTime": integer,
    "startInterval": integer,
    "isMandatoryInRoute": boolean,
    "preferredPositionInRoute": integer,
    "isFixed": boolean,
    "customFieldsFormTemplateID": integer,
    "customFieldFormItems": [
        \{
            "externalID": "string",
            "name": "string",
            "value": "string",
            "values": [
                "string"
            ],
            "type": "string",
            "subtype": integer,
            "rows": [
                 [
                     \{
                        "externalID": "string",
                        "name": "string",
                        "value": "string",
                        "values": [
                            "string"
                        ],
                        "type": "string",
                        "subtype": integer
                    }
                ]
            ]
        }
    ],
    "taskFormTemplates": [
        \{
            "status": integer,
            "taskFormTemplateID": integer,
            "isRequired": boolean,
            "prefillValues": [
                \{
                    "externalID": "string",
                    "value": "string",
                    "rows": [
                         [
                             \{
                                 "externalID": "string",
                                 "value": "string"
                             }
                         ]
                    ]
                }
            ]
        }
    ]
    "creationDate": "dateTime",
    "sharedLink": \{
        "isActive": boolean,
        "sharingPeriod": integer,
        "sharingEndDate": "dateTime",
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "feedback": \{
        "formInvitationProfileID": integer,
        "formTemplateID": integer,
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "checklists": [
         \{
             "checklistID": integer,
             "assetID": integer,
             "name": "string",
             "description": "string",
             "isRequired": boolean,
             "checkListExternalID": "string",
             "type": integer,
             "status": integer,
             "creationDate": "date-time",
             "taskID": integer,
             "lastModificationDate": "date-time",
             "subscriberID": integer,
             "latitude": number,
             "longitude": number,
             "radius": integer,
             "address": "string",
             "checkListTemplateIDs": [
                 integer
             ],
             "checkListTemplateNames": [
                 "string"
             ],
             "maxScore": number,
             "totalScore": number
         }
      ]
}

Пример ответа

\{
    "taskID": 1,	
    "routeItems": [
        \{
            "plannedStartDate": "2024-07-31T09:08:55.988Z",
            "plannedEndDate": "2024-07-31T09:08:55.988Z",
            "timeToPoint": 60,
            "distanceToPoint": 650
        }
    ],
    "subscriberID": 1,
    "deadline": "2020-10-06T20:00:00+03:00",
    "title": "task",
    "description": "Описание",
    "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
    "longitude": 37.61775044433594,
    "latitude": 55.735528725106505,
    "externalID": null,
    "clientName": "Иванов Иван",
    "clientPhone": "79161234567",
    "clientEmail": "ivan@ivanov.ru",
    "priority": 1,
    "rank": 10,
    "startDate": "2020-10-06T14:50:00+03:00",
    "status": 1,
    "taskTypeID": 1,
    "customStatusID": 1,
    "customStatusReasonID": 1,
    "mapObjectID": 1,
    "mapObjectWorkScheduleID": 0,
    "commentPolicy": 3,
    "competences": [
        \{	
            "competenceID": 1,
            "amount": 13,
            "level": 3
        }
    ],
    "dimensions": \{
        "weight": 5,
        "unit": 5,
        "width": 5,
        "height": 5,
        "length": 5,
        "volume": 5
    },
    "serviceTime": 12,
    "startInterval": 12,
    "isMandatoryInRoute": true,
    "preferredPositionInRoute": 1,
    "isFixed": false,
    "customFieldsFormTemplateID": 1,
    "customFieldFormItems": [
        \{			
            "externalID": "1",
            "name": "Лично в руки",
            "value": "True",
            "type": "Boolean"
        }
    ],
    "taskFormTemplates": [
        \{
            "status": 2,
            "taskFormTemplateID": 1,
            "isRequired": true,
            "prefillValues": [
                \{
                    "externalID": "85978",
                    "value": "Значение поля",
                    "rows": [
                         [
                             \{
                                 "externalID": "872",
                                 "value": "Значение колонки"
                             }
                         ]
                    ]
                }
            ]
        }
    ]
    "creationDate": "2020-10-06T12:50:00+03:00",
    "sharedLink": \{
        "isActive": true,
        "sharingPeriod": 2,
        "sharingEndDate": "2022-10-06T12:50:00+03:00",
        "sendToEmail": true,
        "sendToSMS": true
    },
    "feedback": \{
        "formInvitationProfileID": 1,
        "formTemplateID": 1,
        "sendToEmail": true,
        "sendToSMS": true
    },
    "checklists": [
         \{
             "checklistID": 1,
             "assetID": 1,
             "name": "Техническое обслуживание здания",
             "description": "Дома десятиэтажные",
             "isRequired": true,
             "checkListExternalID": "6093f666-97db-4722-9bd0-4c9d9ab480e7",
             "type": 0,
             "status": 2,
             "creationDate": "2020-10-19T21:10:39.94+03:00",
             "taskID": 1,
             "lastModificationDate": "2020-10-20T11:10:39.94+03:00",
             "subscriberID": 1,
             "latitude": 55.735528725106505,
             "longitude": 37.61775044433594,
             "radius": 100,
             "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
             "checkListTemplateIDs": [
                 1
             ],
             "checkListTemplateNames": [
                 "Техническое обслуживание десятиэтажных зданий"
             ],
             "maxScore": 10,
             "totalScore": 8
         }
      ]
}

Обновление задачи

Общее описание

Функция PUT /v6/api/taskManagement/tasks/{taskID} позволяет обновить задачу (должны быть переданы все атрибуты задачи для обновления, т.е. задача обновляется полностью).

Параметры вызова

Функция имеет следующие параметры:

Параметр Описание
subscriberID ИД Сотрудника
deadline Крайний срок завершения задачи (дата и время, подробнее о формате времени)
title Название задачи (обязательное поле)
description Описание задачи
address Адрес задачи
longitude Географическая долгота адреса (в градусах). Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
latitude Географическая широта адреса (в градусах). Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
externalID Внешний пользовательский ИД задачи
clientName ФИО клиента
clientPhone Телефон клиента
clientEmail Адрес электронной почты клиента
priority Приоритет задачи. Существуют следующие значения:
  • 0 – низкий;
  • 1 – средний;
  • 2 – высокий.
rank Ранг задачи. Допустимые значения: от 0 до 100.
startDate Дата начала задачи (обязательное поле). Подробнее о формате времени)
status Статус задачи. Существуют следующие значения:
  • 0 – новая;
  • 1 – принята;
  • 2 – отклонена;
  • 3 – выполнена;
  • 4 – в работе.
taskTypeID ИД типа задачи
customStatusID ИД пользовательского статуса задачи
customStatusReasonID Ид причины смены пользовательского статуса задачи
mapObjectID ИД объекта. Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
mapObjectWorkScheduleID ИД расписания
commentPolicy Требования к комментарию при завершении задачи. Существуют следующие значения:
  • 0 – не обязателен;
  • 1 – обязателен;
  • 2 – обязателен при отклонении заявки;
  • 3 – обязателен в обоих случаях.
serviceTime Время выполнения задачи
startInterval Интервал начала выполнения задачи
preferredPositionInRoute Порядок задачи в маршруте. Допустимые значения: от 1 до 10.
isFixed Является ли задача закрепленной. Существуют следующие значения:
  • true — задача закреплена;
  • false — задача не закреплена.
isMandatoryInRoute Должна ли задача быть обязательно поставлена в маршрут. Существуют следующие значения:
  • true – задача должна быть обязательно в маршруте.
  • false – задачи может не быть в маршруте.
Параметры компетенций задачи (competences)
competenceID ИД компетенции
amount Вес компетенции
level Уровень владения компетенцией
Параметры измерений (структура dimensions)
weight Вес (кг)
unit Юниты
width Ширина (м)
height Высота (м)
length Длина (м)
volume Объем (м3)
Параметры дополнительных полей задачи (массив структур customFieldFormItems)
externalID ИД дополнительного поля
value Значение дополнительного поля
values Значения поля в случае множественного выбора
Параметры шаблонов формы, обязательной при отклонении или завершении задачи (массив структур taskFormTemplates)
status Статус задачи, при переводе в который необходимо заполнить форму. Возможные значения:
  • 2 — отклонена
  • 3 — выполнена
Если статус не передан или равен null, сотрудник сможет заполнить только шаблоны со статусом null. Если таких нет — любой шаблон формы.
taskFormTemplateID ИД шаблона формы
isRequired Является ли заполнение формы обязательным. Возможные значения:
  • true — заполнение обязательно
  • false — заполнение необязательно
Параметры предзаполненных полей (массив структур prefillValues)
externalID Внешний ИД поля
value Значение поля
values Значения в случае множественного выбора
Параметры колонок таблицы (массив массивов rows)
externalID Внешний ИД колонки
value Значение колонки
values Значения в случае множественного выбора
Параметры общей ссылки на местоположение сотрудника (структура sharedLink)
isActive Активность ссылки:
  • true — ссылка активна
  • false — ссылка неактивна
sharingPeriod Время действия ссылки:
  • 1 — до окончания выполнения задачи
  • 2 — до указанного времени
sharingEndDate Дата и время окончания действия ссылки (если sharingPeriod = 2)
sendToEmail Отправка ссылки на e-mail клиента:
  • true — отправить
  • false — не отправлять
sendToSMS Отправка ссылки по SMS:
  • true — отправить
  • false — не отправлять
Параметры обратной связи (структура feedback)
formInvitationProfileID ИД профиля обратной связи
formTemplateID ИД формы обратной связи
sendToEmail Отправить форму обратной связи на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить форму обратной связи по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры чек-листа (массив структур checklists)
assetID ИД актива
isRequired Является ли заполнение чек-листа обязательным. Существуют следующие значения:
  • true — заполнение чек-листа является обязательным;
  • false — заполнение чек-листа не обязательно.
type Тип чек-листа. Существуют следующие значения:
  • 0 — типа по умолчанию.
checkListTemplateIDs ИД шаблонов чек-листов
name Название чек-листа
Description Описание чек-листа

Результат выполнения

При успешном выполнении возвращается статус 204.

Формат запроса

PUT /v6/api/taskManagement/tasks/\{taskID} HTTP/1.1
Host: host
Authorization: Bearer token

\{
    "subscriberID": integer,
    "deadline": "dateTime",
    "title": "string",
    "description": "string",
    "address": "string",
    "longitude": number,
    "latitude": number,
    "externalID": "string",
    "clientName": "string",
    "clientPhone": "string",
    "clientEmail": "string",
    "priority": integer,
    "rank": integer,
    "startDate": "dateTime",
    "status": integer,
    "taskTypeID": integer,
    "customStatusID": integer,
    "customStatusReasonID": integer,
    "mapObjectID": integer,
    "mapObjectWorkScheduleID": integer,
    "commentPolicy": integer,
    "competences": [
        \{
            "competenceID": integer,
            "amount": number,
            "level": integer
        }
    ],
    "dimensions": \{
        "weight": number,
        "unit": number,
        "width": number,
        "height": number,
        "length": number,
        "volume": number
    },
    "serviceTime": integer,
    "startInterval": integer,
    "isMandatoryInRoute": boolean,
    "preferredPositionInRoute": integer,
    "isFixed": boolean,
    "customFieldsFormTemplateID": integer,
    "customFieldFormItems": [
        \{
            "externalID": "string",
            "value": "string",
            "values": [
                "string"
            ],
            "rows": [
                 [
                     \{
                        "externalID": "string",
                        "value": "string",
                        "values": [
                            "string"
                        ],
                    }
                ]
            ]
        }
    ],
    "taskFormTemplates": [
        \{
            "status": integer,
            "taskFormTemplateID": integer,
            "isRequired": boolean,
            "prefillValues": [
                \{
                    "externalID": "string",
                    "value": "string",
                    "values": [
                        "string",
                    ]
                    "rows": [
                         [
                             \{
                                 "externalID": "string",
                                 "value": "string",
                                 "value": [
                                     "string"
                                 ]
                             }
                         ]
                    ]
                }
            ]
        }
    ],
    "sharedLink": \{
        "isActive": boolean,
        "sharingPeriod": integer,
        "sharingEndDate": "dateTime",
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "feedback": \{
        "formInvitationProfileID": integer,
        "formTemplateID": integer,
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "checklists": [
        \{
          "assetID": integer,
          "isRequired": boolean,
          "type": integer,
          "checkListTemplateIDs": [
            integer
          ],
          "name": "string",
          "description": "string"
        }
    ]
}

Пример запроса

PUT /v6/api/taskManagement/tasks/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

\{
    "subscriberID": 1,
    "deadline": "2020-10-06T20:00:00",
    "title": "task",
    "description": "Описание",
    "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
    "longitude": 37.61775044433594,
    "latitude": 55.735528725106505,
    "externalID": 2,
    "clientName": "Иванов Иван",
    "clientPhone": "79161234567",
    "clientEmail": "ivan@ivanov.ru",
    "priority": 1,
    "rank": 10,
    "startDate": "2020-10-06T14:50:00",
    "status": 0,
    "taskTypeID": 1,
    "customStatusID": 1,
    "customStatusReasonID": 1,
    "mapObjectID": 1,
    "mapObjectWorkScheduleID": integer,
    "commentPolicy": 3,
    "competences": [
        \{
            "competenceID": 1,
            "amount": 13,
            "level": 3
        }			
    ],
    "dimensions": \{
        "weight": 5,
        "unit": 5,
        "width": 5,
        "height": 5,
        "length": 5,
        "volume": 5
    },
    "serviceTime": 12,
    "startInterval": 12,
    "isMandatoryInRoute": true,
    "preferredPositionInRoute": 1,
    "isFixed": false,
    "customFieldsFormTemplateID": 1,
    "customFieldFormItems": [
        \{
            "externalID": "1",
            "value": "True"
        }
    ],
    "taskFormTemplates": [
        \{
            "status": 2,
            "taskFormTemplateID": 1,
            "isRequired": true
        },
        \{
            "status": 3,
            "taskFormTemplateID": 2,
            "isRequired": true
        }
    ],
    "sharedLink": \{
        "isActive": true,
        "sharingPeriod": 2,
        "sharingEndDate": "2022-10-06T12:50:00+03:00",
        "sendToEmail": true,
        "sendToSMS": true
    },
    "feedback": \{
        "formInvitationProfileID": 1,
        "formTemplateID": 1,
        "sendToEmail": true,
        "sendToSMS": true
    },
    "checklists": [
        \{
          "assetID": 1,
          "isRequired": true,
          "type": 0,
          "checkListTemplateIDs": [
            1
          ],
          "name": "Техническое обслуживание здания",
          "description": "Полное тех. Обслуживание"
        }
    ]
}

Изменение задачи

Общее описание

Функция PATCH /v6/api/taskManagement/tasks/{taskID} позволяет изменить только часть параметров задачи по ее идентификатору.

Параметры вызова

Функция имеет следующие параметры:

Параметр Описание
subscriberID ИД Сотрудника
deadline Крайний срок завершения задачи (дата и время, подробнее о формате времени)
title Название задачи (обязательное поле)
description Описание задачи
address Адрес задачи
longitude Географическая долгота адреса (в градусах). Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
latitude Географическая широта адреса (в градусах). Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
externalID Внешний пользовательский ИД задачи
clientName ФИО клиента
clientPhone Телефон клиента
clientEmail Адрес электронной почты клиента
priority Приоритет задачи. Существуют следующие значения:
  • 0 – низкий;
  • 1 – средний;
  • 2 – высокий.
rank Ранг задачи. Допустимые значения: от 0 до 100.
startDate Дата начала задачи (обязательное поле). Подробнее о формате времени)
status Статус задачи. Существуют следующие значения:
  • 0 – новая;
  • 1 – принята;
  • 2 – отклонена;
  • 3 – выполнена;
  • 4 – в работе.
taskTypeID ИД типа задачи
customStatusID ИД пользовательского статуса задачи
customStatusReasonID Ид причины смены пользовательского статуса задачи
mapObjectID ИД объекта. Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
mapObjectWorkScheduleID ИД расписания
commentPolicy Требования к комментарию при завершении задачи. Существуют следующие значения:
  • 0 – не обязателен;
  • 1 – обязателен;
  • 2 – обязателен при отклонении заявки;
  • 3 – обязателен в обоих случаях.
serviceTime Время выполнения задачи
startInterval Интервал начала выполнения задачи
preferredPositionInRoute Порядок задачи в маршруте. Допустимые значения: от 1 до 10.
isFixed Является ли задача закрепленной. Существуют следующие значения:
  • true — задача закреплена;
  • false — задача не закреплена.
isMandatoryInRoute Должна ли задача быть обязательно поставлена в маршрут. Существуют следующие значения:
  • true – задача должна быть обязательно в маршруте.
  • false – задачи может не быть в маршруте.
Параметры компетенций задачи (competences)
competenceID ИД компетенции
amount Вес компетенции
level Уровень владения компетенцией
Параметры измерений (структура dimensions)
weight Вес (кг)
unit Юниты
width Ширина (м)
height Высота (м)
length Длина (м)
volume Объем (м3)
Параметры дополнительных полей задачи (массив структур customFieldFormItems)
externalID ИД дополнительного поля
value Значение дополнительного поля
values Значения поля в случае множественного выбора
Параметры шаблонов формы, обязательной при отклонении или завершении задачи (массив структур taskFormTemplates)
status Статус задачи, при переводе в который необходимо заполнить форму. Возможные значения:
  • 2 — отклонена
  • 3 — выполнена
Если статус не передан или равен null, сотрудник сможет заполнить только шаблоны со статусом null. Если таких нет — любой шаблон формы.
taskFormTemplateID ИД шаблона формы
isRequired Является ли заполнение формы обязательным. Возможные значения:
  • true — заполнение обязательно
  • false — заполнение необязательно
Параметры предзаполненных полей (массив структур prefillValues)
externalID Внешний ИД поля
value Значение поля
values Значения в случае множественного выбора
Параметры колонок таблицы (массив массивов rows)
externalID Внешний ИД колонки
value Значение колонки
values Значения в случае множественного выбора
Параметры общей ссылки на местоположение сотрудника (структура sharedLink)
isActive Активность ссылки:
  • true — ссылка активна
  • false — ссылка неактивна
sharingPeriod Время действия ссылки:
  • 1 — до окончания выполнения задачи
  • 2 — до указанного времени
sharingEndDate Дата и время окончания действия ссылки (если sharingPeriod = 2)
sendToEmail Отправка ссылки на e-mail клиента:
  • true — отправить
  • false — не отправлять
sendToSMS Отправка ссылки по SMS:
  • true — отправить
  • false — не отправлять
Параметры обратной связи (структура feedback)
formInvitationProfileID ИД профиля обратной связи
formTemplateID ИД формы обратной связи
sendToEmail Отправить форму обратной связи на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить форму обратной связи по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры чек-листа (массив структур checklists)
assetID ИД актива
isRequired Является ли заполнение чек-листа обязательным. Существуют следующие значения:
  • true — заполнение чек-листа является обязательным;
  • false — заполнение чек-листа не обязательно.
type Тип чек-листа. Существуют следующие значения:
  • 0 — типа по умолчанию.
checkListTemplateIDs ИД шаблонов чек-листов
name Название чек-листа
Description Описание чек-листа

Результат выполнения

При успешном выполнении возвращается статус 204.

Формат запроса

PATCH /v6/api/taskManagement/tasks/\{taskID} HTTP/1.1
Host: host
Authorization: Bearer token

\{
    "subscriberID": integer,
    "deadline": "dateTime",
    "title": "string",
    "description": "string",
    "address": "string",
    "longitude": number,
    "latitude": number,
    "externalID": "string",
    "clientName": "string",
    "clientPhone": "string",
    "clientEmail": "string",
    "priority": integer,
    "rank": integer,
    "startDate": "dateTime",
    "status": integer,
    "taskTypeID": integer,
    "customStatusID": integer,
    "customStatusReasonID": integer,
    "mapObjectID": integer,
    "mapObjectWorkScheduleID": integer,
    "commentPolicy": integer,
    "competences": [
        \{
            "competenceID": integer,
            "amount": number,
            "level": integer
        }
    ],
    "dimensions": \{
        "weight": number,
        "unit": number,
        "width": number,
        "height": number,
        "length": number,
        "volume": number
    },
    "serviceTime": integer,
    "startInterval": integer,
    "isMandatoryInRoute": boolean,
    "preferredPositionInRoute": integer,
    "isFixed": boolean,
    "customFieldsFormTemplateID": integer,
    "customFieldFormItems": [
        \{
            "externalID": "string",
            "value": "string",
            "values": [
                "string"
            ],
            "rows": [
                 [
                     \{
                        "externalID": "string",
                        "value": "string",
                        "values": [
                            "string"
                        ],
                    }
                ]
            ]
        }
    ],
    "taskFormTemplates": [
        \{
            "status": integer,
            "taskFormTemplateID": integer,
            "isRequired": boolean,
            "prefillValues": [
                \{
                    "externalID": "string",
                    "value": "string",
                    "values": [
                        "string",
                    ]
                    "rows": [
                         [
                             \{
                                 "externalID": "string",
                                 "value": "string",
                                 "value": [
                                     "string"
                                 ]
                             }
                         ]
                    ]
                }
            ]
        }
    ],
    "sharedLink": \{
        "isActive": boolean,
        "sharingPeriod": integer,
        "sharingEndDate": "dateTime",
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "feedback": \{
        "formInvitationProfileID": integer,
        "formTemplateID": integer,
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "checklists": [
        \{
          "assetID": integer,
          "isRequired": boolean,
          "type": integer,
          "checkListTemplateIDs": [
            integer
          ],
          "name": "string",
          "description": "string"
        }
    ]
}

Пример запроса

PATCH /v6/api/taskManagement/tasks/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

\{
    "deadline": "2020-10-10T20:00:00",
    "clientName": "Петров Петр",
    "clientPhone": "79151234567",
    "priority": 2,
    "rank": 40,
    "startDate": "2020-10-10T14:50:00",
    "mapObjectID": 5,
    "mapObjectWorkScheduleID": 0,
    "commentPolicy": 2,
    "competences": [
        \{
            "competenceID": 1,
            "amount": 30,
            "level": 3
        }			
    ],
    "serviceTime": 60,
    "startInterval": 60,
    "isMandatoryInRoute": true,
    "preferredPositionInRoute": 1,
    "isFixed": true,
    "customFieldsFormTemplateID": 1,
    "customFieldFormItems": [
        \{
            "externalID": "1",
            "value": "False"
        }
    ],
    "checklists": [
        \{
          "assetID": 1,
          "isRequired": true,
          "type": 0,
          "checkListTemplateIDs": [
            1
          ],
          "name": "Техническое обслуживание здания",
          "description": "Полное тех. Обслуживание"
        }
    ]
}

Удаление задачи

Общее описание

Функция DELETE /v6/api/taskManagement/tasks/{taskID} позволяет удалить задачу по ее идентификатору.

Параметры вызова

В запросе используется обязательный параметр taskID — идентификатор задачи.

Результат выполнения

При успешном выполнении возвращается статус 204.

Формат запроса

DELETE /v6/api/taskManagement/tasks/\{taskID} HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

DELETE /v6/api/taskManagement/tasks/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Удаление задачи по внешнему идентификатору

Общее описание

Функция DELETE /v6/api/taskManagement/tasks/externalID/{externalID} позволяет удалить задачу по ее идентификатору.

Параметры вызова

В запросе используется обязательный параметр externalID — внешний идентификатор задачи.

Результат выполнения

При успешном выполнении возвращается статус 204.

Формат запроса

DELETE /v6/api/taskManagement/externalID/\{externalID} HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

DELETE /v6/api/taskManagement/tasks/externalID/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Получение комментариев к задачам

Общее описание

Функция GET /v6/api/taskManagement/taskComments?taskIDs={long}&subscriberIDs={long}&from={dateTime}&to={dateTime} позволяет получить комментарии к задачам.

Параметры вызова

Функция имеет следующие параметры:

Параметр Описание
taskIDs ИД задач. Подробнее о передаче нескольких идентификаторов
subscriberIDs ИД Сотрудников. Подробнее о передаче нескольких идентификаторов
from Дата и время начала периода комментариев (подробнее о формате времени)
to Дата и время окончания периода комментариев (подробнее о формате времени)

Результат выполнения

Функция возвращает массив структур со следующими параметрами комментариев:

Параметр Описание
taskCommentID ИД комментария
subscriberID ИД Сотрудника
taskID ИД задачи
timestamp Время изменения задачи (подробнее о формате времени)
serverTimestamp Время изменения задачи по времени сервера
newStatus Новый статус задачи. Возможные значения:
  • 0 – новая
  • 1 – принята
  • 2 – отклонена
  • 3 – выполнена
  • 4 – в работе
  • 5 – в пути
oldStatus Прежний статус задачи. Возможные значения:
  • 0 – новая
  • 1 – принята
  • 2 – отклонена
  • 3 – выполнена
  • 4 – в работе
  • 5 – в пути
Comment Комментарий
isCheckin Отметка о местоположении:
  • true – есть отметка
  • false – отсутствует
Address Адрес местоположения изменения задачи
longitude Географическая долгота
latitude Географическая широта
changedBy Имя Сотрудника, изменившего задачу
attachmentURNs URN прикреплённого файла (подробнее о скачивании файла)
Информация о вышедшем крайнем сроке выполнения задачи (структура deadlineExpiration)
expirationDate Дата и время крайнего срока (подробнее о формате времени)
Информация об изменении Сотрудника, выполняющего задачу (структура subscriberChange)
oldSubscriberID ИД предыдущего Сотрудника
newSubscriberID ИД нового Сотрудника
Информация об изменении пользовательского статуса (структура customStatusChange)
oldCustomStatusID ИД предыдущего пользовательского статуса
oldCustomStatusName Название предыдущего пользовательского статуса
newCustomStatusID ИД нового пользовательского статуса
newCustomStatusName Название нового пользовательского статуса
reasonID ИД причины смены пользовательского статуса

Формат запроса

GET /v6/api/taskManagement/taskComments?taskIDs=\{long}&subscriberIDs=\{long}&from=\{dateTIme}&to=\{dateTime} HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/taskComments?taskIDs=1&subscriberIDs=1&from=2020-11-10&to=2020-11-20 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

[
    \{
        "taskCommentID": integer,
        "subscriberID": integer,
        "taskID": integer,
        "timestamp": "dateTime",
        "serverTimestamp": "dateTime",
        "newStatus": integer,
        "oldStatus": integer,
        "comment": "string",
        "isCheckin": boolean,
        "address": "string",
        "longitude": number,
        "latitude": number,
        "changedBy": "string",
        "attachmentURNs": [
            "string",
            "string"
        ],
        "details": \{
            "deadlineExpiration": \{
                "expirationDate": "string"
            },
            "subscriberChange": \{
                "oldSubscriberID": integer,
                "newSubscriberID": integer
            },
            "customStatusChange": \{
                "oldCustomStatusID": integer,
                "oldCustomStatusName": "string",
                "newCustomStatusID": integer,
                "newCustomStatusName": "string",
                "reasonID": integer
            }
        }
    }
]

Пример ответа

[
    \{
        "taskCommentID": 1,
        "subscriberID": 1,
        "taskID": 1,
        "timestamp": "2020-11-19T11:50:23+03:00",
        "serverTimestamp": "2020-11-19T11:50:23+03:00",
        "newStatus": 2,
        "oldStatus": 1,
        "isCheckin": false,	
        "longitude": 37.5668602276783,
        "latitude": 55.7694248249114,
        "changedBy": "Десятова Марина",
        "attachmentURNs": [],
        "details": \{
            "deadlineExpiration": \{
                "expirationDate": "2020-11-19T11:50:23+03:00"
            },
            "subscriberChange": \{
                "oldSubscriberID": null,
                "newSubscriberID": 2
            },
            "customStatusChange": \{
                "oldCustomStatusID": 106,
                "oldCustomStatusName": "В пути",
                "newCustomStatusID": 107,
                "newCustomStatusName": "string",
                "reasonID": null
            }
        }
    },
    \{
        "taskCommentID": 2,
        "subscriberID": 2,
        "taskID": 1,
        "timestamp": "2020-11-19T13:31:03+03:00",
        "serverTimestamp": "2020-11-19T13:27:36+03:00",
        "newStatus": 2,
        "oldStatus": 2,
        "comment": "Фото",
        "isCheckin": false,
        "address": "г. Москва, ул. Туристская, 10К1, район ст.м.Сходненская",
        "longitude": 37.4285033,
        "latitude": 55.8528188,
        "changedBy": "Сидоров Дмитрий",
        "attachmentURNs": [
            "m1Atk",
            "XmwkV"
        ],
        "details": \{
            "subscriberChange": \{
                "oldSubscriberID": null,
                "newSubscriberID": 2
            },
            "customStatusChange": \{
                "oldCustomStatusID": null,
                "oldCustomStatusName": null,
                "newCustomStatusID": 8,
                "newCustomStatusName": "Отправлен",
                "reasonID": null
            }
        }
    }
]

Получение комментариев к задаче

Общее описание

Функция GET /v6/api/taskManagement/tasks/{taskID}/taskComments позволяет получить комментарии к задаче по её идентификатору.

Параметры вызова

В запросе используется обязательный параметр taskID — идентификатор задачи.

Результат выполнения

Функция возвращает массив структур со следующими параметрами комментариев:

Параметр Описание
taskCommentID ИД комментария
subscriberID ИД Сотрудника
taskID ИД задачи
timestamp Время изменения задачи (подробнее о формате времени)
serverTimestamp Время изменения задачи по времени сервера
newStatus Новый статус задачи. Возможные значения:
  • 0 – новая
  • 1 – принята
  • 2 – отклонена
  • 3 – выполнена
  • 4 – в работе
  • 5 – в пути
oldStatus Прежний статус задачи. Возможные значения:
  • 0 – новая
  • 1 – принята
  • 2 – отклонена
  • 3 – выполнена
  • 4 – в работе
  • 5 – в пути
Comment Комментарий
isCheckin Отметка о местоположении:
  • true – есть отметка
  • false – отсутствует
Address Адрес местоположения изменения задачи
longitude Географическая долгота
latitude Географическая широта
changedBy Имя Сотрудника, изменившего задачу
attachmentURNs URN прикреплённого файла (подробнее о скачивании файла)
Информация о вышедшем крайнем сроке выполнения задачи (структура deadlineExpiration)
expirationDate Дата и время крайнего срока (подробнее о формате времени)
Информация об изменении Сотрудника, выполняющего задачу (структура subscriberChange)
oldSubscriberID ИД предыдущего Сотрудника
newSubscriberID ИД нового Сотрудника
Информация об изменении пользовательского статуса (структура customStatusChange)
oldCustomStatusID ИД предыдущего пользовательского статуса
oldCustomStatusName Название предыдущего пользовательского статуса
newCustomStatusID ИД нового пользовательского статуса
newCustomStatusName Название нового пользовательского статуса
reasonID ИД причины смены пользовательского статуса

Формат запроса

GET /v6/api/taskManagement/tasks/\{taskID}/taskComments HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/tasks/1/taskComments HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

[
    \{
        "taskCommentID": integer,
        "subscriberID": integer,
        "taskID": integer,
        "timestamp": "dateTime",
        "serverTimestamp": "dateTime",
        "newStatus": integer,
        "oldStatus": integer,
        "comment": "string",
        "isCheckin": boolean,
        "address": "string",
        "longitude": number,
        "latitude": number,
        "changedBy": "string",
        "attachmentURNs": [
            "string",
            "string"
        ]
        "details": \{
            "deadlineExpiration": \{
                "expirationDate": "string"
            },
            "subscriberChange": \{
                "oldSubscriberID": integer,
                "newSubscriberID": integer
            },
            "customStatusChange": \{
                "oldCustomStatusID": integer,
                "oldCustomStatusName": "string",
                "newCustomStatusID": integer,
                "newCustomStatusName": "string",
                "reasonID": integer
            }
        }
    }
]

Пример ответа

[
    \{
        "taskCommentID": 1,
        "subscriberID": 1,
        "taskID": 1,
        "timestamp": "2020-11-19T11:50:23+03:00",
        "serverTimestamp": "2020-11-19T11:50:23+03:00",
        "newStatus": 2,
        "oldStatus": 1,
        "isCheckin": false,
        "longitude": 37.5668602276783,
        "latitude": 55.7694248249114,
        "changedBy": "Сидоров Дмитрий",
        "attachmentURNs": [],
        "details": \{
            "deadlineExpiration": \{
                "expirationDate": "2020-11-19T11:50:23+03:00"
            },
            "subscriberChange": \{
                "oldSubscriberID": null,
                "newSubscriberID": 1
            },
            "customStatusChange": \{
                "oldCustomStatusID": 106,
                "oldCustomStatusName": "В пути",
                "newCustomStatusID": 107,
                "newCustomStatusName": "string",
                "reasonID": null
            }
        }
    }
]

Добавление комментария к задаче

Общее описание

Функция POST /v6/api/taskManagement/tasks/{taskID}/taskComments позволяет добавить комментарий к задаче.

Параметры вызова

Функция имеет следующие параметры:

Параметр Описание
taskID ИД задачи (обязательный параметр)
taskStatus Статус задачи. Существуют следующие значения:
  • 0 – новая;
  • 1 – принята;
  • 2 – отклонена;
  • 3 – выполнена;
  • 4 – в работе;
  • 5 – в пути.
comment Комментарий к задаче
isChekin Отметка о местоположении. Существуют следующие значения:
  • true – есть отметка о местоположении;
  • false – отметка о местоположении отсутствует.

Результат выполнения

Функция возвращает структуру со следующими параметрами комментария:

Параметр Описание
taskCommentID ИД комментария
subscriberID ИД Сотрудника
taskID ИД задачи
timestamp Время изменения задачи (подробнее о формате времени)
serverTimestamp Время изменения задачи по времени сервера
newStatus Новый статус задачи. Возможные значения:
  • 0 – новая
  • 1 – принята
  • 2 – отклонена
  • 3 – выполнена
  • 4 – в работе
  • 5 – в пути
oldStatus Прежний статус задачи. Возможные значения:
  • 0 – новая
  • 1 – принята
  • 2 – отклонена
  • 3 – выполнена
  • 4 – в работе
  • 5 – в пути
Comment Комментарий
isCheckin Отметка о местоположении:
  • true – есть отметка
  • false – отсутствует
Address Адрес местоположения изменения задачи
longitude Географическая долгота
latitude Географическая широта
changedBy Имя Сотрудника, изменившего задачу
attachmentURNs URN прикреплённого файла (подробнее о скачивании файла)
Информация о вышедшем крайнем сроке выполнения задачи (структура deadlineExpiration)
expirationDate Дата и время крайнего срока (подробнее о формате времени)
Информация об изменении Сотрудника, выполняющего задачу (структура subscriberChange)
oldSubscriberID ИД предыдущего Сотрудника
newSubscriberID ИД нового Сотрудника
Информация об изменении пользовательского статуса (структура customStatusChange)
oldCustomStatusID ИД предыдущего пользовательского статуса
oldCustomStatusName Название предыдущего пользовательского статуса
newCustomStatusID ИД нового пользовательского статуса
newCustomStatusName Название нового пользовательского статуса
reasonID ИД причины смены пользовательского статуса

Формат запроса

POST /v6/api/taskManagement/tasks/\{taskID}/taskComments HTTP/1.1
Host: host
Authorization: Bearer token

\{
    "taskStatus": integer,
    "comment": "string",
    "customStatusID": integer,
    "customStatusReasonID": integer
}

Пример запроса

POST /v6/api/taskManagement/tasks/1/taskComments HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

\{
    "taskStatus": 2,
    "comment": "Комментарий",
    "customStatusID": 110,
    "customStatusReasonID": 1
}

Формат ответа

\{
    "taskCommentID": integer,
    "taskID": integer,
    "timestamp": "dateTime",
    "serverTimestamp": "dateTime",
    "newStatus": integer,
    "oldStatus": integer,
    "comment": "string",
    "isCheckin": boolean,
    "address": "string",
    "longitude": number,
    "latitude": number,
    "changedBy": "string",
    "attachmentURNs": [
        "string",
        "string"
   ],
   "details": \{
        "deadlineExpiration": \{
            "expirationDate": "string"
        },
        "subscriberChange": \{
            "oldSubscriberID": integer,
            "newSubscriberID": integer
        },
        "customStatusChange": \{
            "oldCustomStatusID": integer,
            "oldCustomStatusName": "string",
            "newCustomStatusID": integer,
            "newCustomStatusName": "string",
            "reasonID": integer
        }
   }
}

Пример ответа

\{
    "taskCommentID": 1,
    "taskID": 1,
    "timestamp": "2020-11-19T16:01:39+03:00",
    "serverTimestamp": "2020-11-19T15:58:15+03:00",
    "newStatus": 5,
    "oldStatus": 2,
    "comment": "Комментарий",
    "isCheckin": true,
    "address": "г. Москва, пер. Тишинский Большой, 43/20, район ст.м.Улица 1905 года",
    "longitude": 37.5668602276783,
    "latitude": 55.7694248249114,
    "changedBy": "Десятова Марина",
    "attachmentURNs": [],
    "details": \{
        "subscriberChange": \{
            "oldSubscriberID": null,
            "newSubscriberID": 1
        },
        "customStatusChange": \{
            "oldCustomStatusID": 107,
            "oldCustomStatusName": "В работе",
            "newCustomStatusID": 108,
            "newCustomStatusName": "Не выполнен",
            "reasonID": 1
        }
   }
}

Получение профилей приглашений на заполнение форм обратной связи

Общее описание

Функция GET /v6/api/taskManagement/forms/invitations/profiles позволяет получить профили приглашений на заполнение форм обратной связи.

Параметры вызова

Функция не имеет дополнительных параметров.

Результат выполнения

Функция возвращает структуру со следующими параметрами графиков работы:

Параметр Описание
profileID ИД профиля приглашения на заполнение формы обратной связи
creationDate Дата создания профиля приглашения на заполнение формы обратной связи (подробнее о формате времени см. раздел 2.6).
title Название профиля приглашения на заполнение формы обратной связи
isDefault Профиль по умолчанию. Существуют следующие значения:
  • true — профиль по умолчанию;
  • false — не является профилем по умолчанию.

Формат запроса

GET /v6/api/taskManagement/forms/invitations/profiles HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/forms/invitations/profiles HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

[
  \{
    "profileID": integer,
    "creationDate": "datetime",
    "title": "string",
    "isDefault": boolean
  }
]

Пример ответа

[
  \{
    "profileID": 1,
    "creationDate": "2022-11-17T10:50:30+03:00",
    "title": "Отзыв",
    "isDefault": true
  },
  \{
    "profileID": 2,
    "creationDate": "2022-11-17T10:50:30+03:00",
    "title": "Пожелания",
    "isDefault": false
  }
]

Получение файлов, прикрепленных к задаче

Общее описание

Функция GET /v6/api/taskManagement/tasks/{taskID}/attachments позволяет получить файлы, прикрепленные к задаче.

Параметры вызова

В запросе используется обязательный параметр taskID — идентификатор задачи.

Результат выполнения

Функция возвращает массив структур со следующими параметрами файлов, прикрепленных к задаче:

Параметр Описание
taskAttachmentID ИД файла, прикрепленного к задаче
urn URN файла, прикрепленного к задаче. Подробнее о скачивании файла
fileSize Размер файла (в байтах)
fileName Имя файла
creationDate Дата и время прикрепления файла к задаче (подробнее о формате времени).
contentType MIME-тип файла

Формат запроса

GET /v6/api/taskManagement/tasks/\{taskID}/attachments HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/tasks/1/attachments HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

\{
    "taskAttachments": [
        \{
            "taskAttachmentID": integer,
            "urn": "string",
            "fileSize": integer,
            "fileName": "string",
            "creationDate": "dateTime",
            "contentType": "string"
        }
    ]
}

Пример ответа

\{
    "taskAttachments": [
        \{
            "taskAttachmentID": 1,
            "urn": "eJPMa",
            "fileSize": 50192,
            "fileName": "Счет 276385 от 17.02.2023 – платежка.pdf",
            "creationDate": "2023-02-27T14:29:11.99+03:00",
            "contentType": "application/pdf"
        }
    ]
}

Получение прикрепленного к задаче файла

Общее описание

Функция GET /v6/api/taskManagement/tasks/attachments/{taskAttachmentID} позволяет получить файл, прикрепленный к задаче.

Параметры вызова

В запросе используется обязательный параметр taskAttachmentID — идентификатор файла, прикрепленного к задаче.

Результат выполнения

Функция возвращает структуру со следующими параметрами файла, прикрепленного к задаче:

Параметр Описание
taskAttachmentID ИД файла, прикрепленного к задаче
urn URN файла, прикрепленного к задаче. Подробнее о скачивании файла 
fileSize Размер файла (в байтах)
fileName Имя файла
creationDate Дата и время прикрепления файла к задаче (подробнее о формате времени).
contentType MIME-тип файла

Формат запроса

GET /v6/api/taskManagement/tasks/attachments/\{taskAttachmentID} HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/tasks/attachments/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

\{
    "taskAttachmentID": integer,
    "urn": "string",
    "fileSize": integer,
    "fileName": "string",
    "creationDate": "dateTime",
    "contentType": "string"
}

Пример ответа

\{
    "taskAttachmentID":1,
    "urn": "eJPMa",
    "fileSize": 50192,
    "fileName": "Счет 276385 от 17.02.2023 – платежка.pdf",
    "creationDate": "2023-02-27T14:29:11.99+03:00",
    "contentType": "application/pdf"
}

Прикрепление файла к задаче

Общее описание

Функция POST /v6/api/taskManagement/tasks/{taskID}/attachments позволяет прикрепить файл к задаче.

Пример запроса

Функция имеет следующие параметры:

Параметр Описание
taskID ИД задачи
Параметры, указываемые для передаваемого файла
filename Название файла с расширением, например, file.txt
Content-Type MIME-тип файла
file content Содержимое файла

Результат выполнения

При успешном выполнении возвращается статус 201.

Функция возвращает структуру со следующими параметрами файла, прикрепленного к задаче:

Параметр Описание
taskAttachmentID ИД файла, прикрепленного к задаче
urn URN файла, прикрепленного к задаче. Подробнее о скачивании файла
fileSize Размер файла (в байтах)
fileName Имя файла
creationDate Дата и время прикрепления файла к задаче (подробнее о формате времени).
contentType MIME-тип файла

Формат запроса

POST /v6/api/taskManagement/tasks/\{taskID}/attachments HTTP/1.1
Host: host
Authorization: Bearer token
Content-Length: \{length}
Content-Type: multipart/form-data; boundary=\{boundary}

--\{boundary}
Content-Disposition: form-data; name="file"; filename="\{filename.ext}"
Content-Type: application/octet-stream

\{file content}
--\{boundary}–

Пример запроса

POST /v6/api/taskManagement/tasks/1/attachments HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token
Content-Length: 50425
Content-Type: multipart/form-data; boundary=------JcAMToDcoRQh45mt

------JcAMToDcoRQh45mt
Content-Disposition: form-data; name="file"; filename="Счет 276385 от 17.02.2023 – платежка.pdf"
Content-Type: application/pdf

\{содержимое файла}
------JcAMToDcoRQh45mt–

Формат ответа

\{
    "taskAttachmentID": integer,
    "urn": "string",
    "fileSize": integer,
    "fileName": "string",
    "creationDate": "dateTime",
    "contentType": "string"
}

Пример ответа

\{
    "taskAttachmentID":1,
    "urn": "eJPMa",
    "fileSize": 50192,
    "fileName": "Счет 276385 от 17.02.2023 – платежка.pdf",
    "creationDate": "2023-02-27T14:29:11.99+03:00",
    "contentType": "application/pdf"
}

Удаление файла, прикрепленного к задаче

Общее описание

Функция DELETE /v6/api/taskManagement/tasks/{taskID}/attachments/{taskAttachmentID} позволяет удалить файл, прикрепленный к задаче.

Пример запроса

Функция имеет следующие параметры:

Параметр Описание
taskID ИД задачи
taskAttachmentID ИД файла, прикрепленного к задаче

Результат выполнения

При успешном выполнении возвращается статус 204.

Формат запроса

DELETE /v6/api/taskManagement/tasks/\{taskID}/attachments/\{taskAttachmentID} HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

DELETE /v6/api/taskManagement/tasks/1/attachments/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Получение настроек общей ссылки по идентификатору задачи

Общее описание

Функция GET /v6/api/taskManagement/tasks/{taskID}/taskSharing позволяет получить настройки общей ссылки по идентификатору задачи.

Параметры вызова

В запросе используется обязательный параметр taskID — идентификатор задачи.

Результат выполнения

Функция возвращает структуру со следующими параметрами настроек общей ссылки:

Параметр Описание
sharingURL URL общей ссылки задачи
sharingPeriod Время действия ссылки, после его окончания просмотр местоположения по ссылке станет недоступным. Существуют следующие значения:
  • 1 — до окончания выполнения задачи. Как только статус задачи будет изменен на «Выполнена» или «Отклонена», просмотр местоположения станет недоступным;
  • 2 — до указанного времени.
sharingEndDate Дата и время окончания действия ссылки (если в параметре sharingPeriod передано значение 2)
sendToEmail Нужно ли отправить ссылку на электронную почту клиента. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Нужно ли отправить ссылку по SMS клиенту. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.

Формат запроса

GET /v6/api/taskManagement/tasks/\{taskID}/taskSharing HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/tasks/1/taskSharing HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

\{
    "sharingURL": "string",
    "sharingPeriod": integer,
    "sharingEndDate": "string",
    "sendToEmail": boolean,
    "sendToSMS": boolean
}

Пример ответа

\{
    "sharingURL": "https://tracking.mpoisk.ru/t/a6b9f75157994f60b6ec988fed2cd992",
    "sharingPeriod": 2,
    "sharingEndDate": "2023-07-25T10:57:26.607Z",
    "sendToEmail": true,
    "sendToSMS": true
}

Обновление настроек общей ссылки для задачи

Общее описание

Функция PUT /v6/api/taskManagement/tasks/{taskID}/taskSharing позволяет обновить настройки общей ссылки для задачи.

Параметры вызова

Функция имеет следующие параметры:

Параметр Описание
taskID ИД задачи
isActive Активность ссылки. Существуют следующие значения:
  • true — ссылка активна, можно просматривать местоположение Сотрудника;
  • false — ссылка неактивна; местоположение Сотрудника недоступно.
sharingPeriod Время действия ссылки, после его окончания просмотр местоположения по ссылке станет недоступным. Существуют следующие значения:
  • 1 — до окончания выполнения задачи. Как только статус задачи будет изменен на «Выполнена» или «Отклонена», просмотр местоположения станет недоступным;
  • 2 — до указанного времени.
sharingEndDate Дата и время окончания действия ссылки (если в параметре sharingPeriod передано значение 2)
sendToEmail Нужно ли отправить ссылку на электронную почту клиента. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Для отправки в задаче должна быть указана электронная почта клиента.
sendToSMS Нужно ли отправить ссылку по SMS клиенту. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Для отправки в задаче должен быть указан телефон клиента и подключена опция «Уведомления».

Результат выполнения

При успешном выполнении возвращается статус 200.

Формат запроса

PUT /v6/api/taskManagement/tasks/\{taskID}/taskSharing HTTP/1.1
Host: host
Authorization: Bearer token

\{
    "isActive": boolean,
    "sharingPeriod": integer,
    "sharingEndDate": "string",
    "sendToEmail": boolean,
    "sendToSMS": boolean
}

Пример запроса для создания общей ссылки

PUT /v6/api/taskManagement/tasks/1/taskSharing HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

\{
    "isActive": true,
    "sharingPeriod": 2,
    "sharingEndDate": "2023-07-25T10:57:26.607Z",
    "sendToEmail": true,
    "sendToSMS": true
}

Пример запроса для отключения общей ссылки

PUT /v6/api/taskManagement/tasks/1/taskSharing HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

\{
    "isActive": false
}

Получение профилей тайм-слотов

Общее описание

Функция GET /v6/api/taskManagement/timeslots/profiles позволяет получить профили тайм-слотов.

Параметры вызова

Функция не имеет дополнительных параметров.

Результат выполнения

Функция возвращает структуру со следующими параметрами профилей тайм-слотов:

Параметр Описание
timeslotProfileID ИД профиля тайм-слота
name Название профиля тайм-слота
duration Длительность тайм-слота (в минутах)
isActive Является ли профиль тайм-слота активным. Существуют следующие значения:
  • true — профиль активен.
  • false — профиль не активен.
Параметры тайм-слотов профиля (items)
time Время начала тайм-слота
weekDay День недели тайм-слота. Существуют следующие значения:
  • 0 — понедельник;
  • 1 — вторник;
  • 2 — среда;
  • 3 — четверг;
  • 4 — пятница;
  • 5 — суббота;
  • 6 — воскресенье.

Формат запроса

GET /v6/api/taskManagement/timeslots/profiles HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/timeslots/profiles HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

[
    \{
        "timeslotProfileID": integer,
        "name": "string",
        "duration": integer,
        "isActive": boolean,
        "items": [
            \{
                "time": "string",
                "weekDay": integer
            }
        ]
    }
]

Пример ответа

[
    \{
        "timeslotProfileID": 1,
        "name": "Двухчасовой",
        "duration": 119,
        "isActive": true,
        "items": [
            \{
                "time": "08:00",
                "weekDay": 0
            },
            \{
                "time": "10:00",
                "weekDay": 0
            },
            \{
                "time": "12:00",
                "weekDay": 0
            },
            \{
                "time": "14:00",
                "weekDay": 0
            },
            \{
                "time": "16:00",
                "weekDay": 0
            },
            \{
                "time": "18:00",
                "weekDay": 0
            },
            \{
                "time": "20:00",
                "weekDay": 0
            },
            \{
                "time": "08:00",
                "weekDay": 1
            },
            \{
                "time": "10:00",
                "weekDay": 1
            },
            \{
                "time": "12:00",
                "weekDay": 1
            },
            \{
                "time": "14:00",
                "weekDay": 1
            },
            \{
                "time": "16:00",
                "weekDay": 1
            },
            \{
                "time": "18:00",
                "weekDay": 1
            },
            \{
                "time": "20:00",
                "weekDay": 1
            }
        ]
    }
]

Получение свободных тайм-слотов

Общее описание

Функция GET /v6/api/taskManagement/timeslots?timeslotProfileID={long}&externalID={string}&objectID={long}&latitude={double}&longitude={double}&competenceIDs={long}&competences={string}&teamSettings={subscriberCount:integer}&serviceTime={integer}&dateFrom={date-time}&dateTo={date-time}&priority={integer}&rank={integer}&count={integer} позволяет получить свободные тайм-слоты.

Параметры вызова

Функция имеет следующие параметры:

Параметр Описание
timeslotProfileID ИД профиля тайм-слотов
externalID Внешний ИД задачи. Если в запросе передан этот параметр, то тайм-слот этой задачи возвращается как доступный для бронирования.
mapObjectID ИД объекта. Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude. Если в запросе передан параметр mapObjectID, то в качестве часового пояса по умолчанию используется часовой пояс объекта, если время не передано со смещением относительно UTC или по UTC.
latitude Географическая широта адреса (в градусах). Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
longitude Географическая долгота адреса (в градусах). Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
competenceIDs ИД компетенций. Подробнее о передаче нескольких идентификаторов
сompetences Идентификатор количественной компетенции и ее количество в формате {"id":integer,"amount":integer}, где id — ИД компетенции, amount — количество компетенции
serviceTime Время выполнения задачи (в минутах)
dateFrom Дата и время начала периода, с которого необходимо искать свободные тайм-слоты (подробнее о формате времени). Максимальный период для поиска доступных тайм-слотов — 7 дней.
dateTo Дата и время окончания периода, до которого необходимо искать свободные тайм-слоты (подробнее о формате времени). Максимальный период для поиска доступных тайм-слотов — 7 дней.
priority Приоритет задачи. Существуют следующие значения:
  • 0 – низкий;
  • 1 – средний;
  • 2 – высокий.
rank Ранг задачи. Допустимые значения: от 0 до 100.
count Количество возвращаемых тайм-слотов. Допустимые значения: от 1 до 100.

Результат выполнения

Функция возвращает структуру со следующими доступными тайм-слотов:

Параметр Описание
dateFrom Дата и время начала свободного тайм-слота (подробнее о формате времени)
dateTo Дата и время окончания свободного тайм-слота (подробнее о формате времени)

Формат запроса

GET /v6/api/taskManagement/timeslots? timeslotProfileID=\{long}&externalID=\{string}& mapObjectID=\{long}&latitude=\{double}&longitude=\{double}&competenceIDs=\{long}&competences=\{string}&teamSettings=\{subscriberCount:integer}&serviceTime=\{integer}&dateFrom=\{date-time}&dateTo=\{date-time}&priority=\{integer}&rank=\{integer}&count=\{integer} HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/timeslots? timeslotProfileID=1&externalID=1& mapObjectID=1&latitude=55.803181&longitude=37.471977&competenceIDs=1&competences=\{"id":2,"amount":2}& teamSettings=\{subscriberCount:2}&serviceTime=20&dateFrom=2024-06-24&dateTo=2024-06-25&priority=2&rank=2&count=2 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

[
    \{
        "dateFrom": "string",
        "dateTo": "string"
    }
]

Пример ответа

[
    \{
        "dateFrom": "2024-11-08T11:00:00Z",
        "dateTo": "2024-11-08T12:59:00Z"
    },
    \{
        "dateFrom": "2024-06-27T12:00:00Z",
        "dateTo": "2024-06-27T13:59:00Z"
    },
    \{
        "dateFrom": "2024-06-28T16:00:00Z",
        "dateTo": "2024-06-28T17:59:00Z"
    }
]

Бронирование тайм-слота

Общее описание

Функция POST /v6/api/taskManagement/timeslots/tasks позволяет добавить на указанный тайм-слот задачу.

Параметры вызова

Функция имеет следующие параметры:

Параметр Описание
forceCreateTask Необходимо ли создавать задачу, если ее не удалось распланировать. Существуют следующие значения:
  • true — задачу необходимо создавать;
  • false — задачу не нужно создавать
deadline Крайний срок завершения задачи 
title Название задачи (обязательное поле)
description Описание задачи
address Адрес задачи
longitude Географическая долгота адреса (в градусах). Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
latitude Географическая широта адреса (в градусах). Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
externalID Внешний пользовательский ИД задачи
clientName ФИО клиента
clientPhone Телефон клиента
clientEmail Адрес электронной почты клиента
priority Приоритет задачи. Существуют следующие значения:
  • 0 – низкий;
  • 1 – средний;
  • 2 – высокий.
rank Ранг задачи. Допустимые значения: от 0 до 100.
startDate Дата начала задачи (обязательное поле). 
taskTypeID ИД типа задачи
mapObjectID ИД объекта. Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude.
mapObjectWorkScheduleID ИД расписания
commentPolicy Требования к комментарию при завершении задачи. Существуют следующие значения:
  • 0 – не обязателен;
  • 1 – обязателен;
  • 2 – обязателен при отклонении заявки;
  • 3 – обязателен в обоих случаях.
serviceTime Время выполнения задачи
startInterval Интервал начала выполнения задачи
preferredPositionInRoute Порядок задачи в маршруте. Допустимые значения: от 1 до 10.
isMandatoryInRoute Должна ли задача быть обязательно поставлена в маршрут. Существуют следующие значения:
  • true — задача должна быть обязательно в маршруте.
  • false — задачи может не быть в маршруте.
isFixed Является ли задача закрепленной (нельзя менять время начала выполнения в пределах допустимого времени опоздания, изменять или снимать исполнителя). Существуют следующие значения:
  • true — задача закреплена;
  • false — задача не закреплена.
customFieldFormTemplateID ИД шаблона дополнительных полей задачи
Параметры компетенций задачи (competences)
competenceID ИД компетенции
amount Параметр обозначает количество сотрудников, которое требуется для выполнения задачи (значение от 1 до 10).
level Уровень владения компетенцией
Параметры настройки бригады (teamSettings)
subscriberCount Параметр обозначает количество сотрудников, которое требуется для выполнения задачи (значение от 1 до 10).
Параметры измерений (структура dimensions)
weight Вес (кг)
unit Юниты
width Ширина (м)
height Высота (м)
length Длина (м)
volume Объем (м3)
Параметры дополнительных полей задачи (массив структур customFieldFormItems)
externalID ИД дополнительного поля
value Значение дополнительного поля
Параметры шаблонов формы, обязательного для заполнения при отклонении или завершении задачи (массив структур taskFormTemplates)
status Статус задачи, при переводе в который необходимо заполнить форму. Существуют следующие значения:
  • 2 — отклонена;
  • 3 — выполнена.
Если статус задачи не передан или передан равным null, то в приложении сотрудник сможет заполнить и прикрепить в комментарии задачи только шаблоны форм со статусом null. Если у задачи нет шаблонов с таким статусом, то в приложении сотрудник сможет заполнить и прикрепить к комментарию задачи любой шаблон формы.
taskFormTemplateID ИД шаблона формы
isRequired Является ли обязательным заполнение формы. Существуют следующие значения:
  • true — заполнение формы является обязательным;
  • false — заполнение формы является необязательным;
Параметры предзаполненных полей (массив структур prefillValues)
externalID Внешний ИД поля. 
value Значение поля
Параметры колонок таблицы (массив массивов rows)
externalID Внешний ИД колонки. 
value Значение колонки
Параметры общей ссылки на местоположение Сотрудника, выполняющего задачу (структура sharedLink)
isActive Активность ссылки. Существуют следующие значения:
  • true — ссылка активна, можно просматривать местоположение Сотрудника;
  • false — ссылка неактивна; местоположение Сотрудника недоступно.
sharingPeriod Время действия ссылки, после его окончания просмотр местоположения по ссылке станет недоступным. Существуют следующие значения:
  • 1 — до окончания выполнения задачи. Как только статус задачи будет изменен на «Выполнена», просмотр местоположения станет недоступным;
  • 2 — до указанного времени.
sharingEndDate Дата и время окончания действия ссылки (если в параметре sharingPeriod передано значение 2)
sendToEmail Отправить ссылку на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить ссылку по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры обратной связи (структура feedback)
formInvitationProfileID ИД профиля обратной связи
formTemplateID ИД формы обратной связи
sendToEmail Отправить форму обратной связи на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить форму обратной связи по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры чек-листа (массив структур checklists)
assetID ИД актива
isRequired Является ли заполнение чек-листа обязательным. Существуют следующие значения:
  • true — заполнение чек-листа является обязательным;
  • false — заполнение чек-листа не обязательно.
type Тип чек-листа. Существуют следующие значения:
  • 0 — типа по умолчанию.
checkListTemplateIDs ИД шаблонов чек-листов
checkListTemplateExternalIDs Внешние ИД шаблонов чек-листов
name Название чек-листа
description Описание чек-листа

Результат выполнения

Функция возвращает структуру со следующими параметрами задачи, добавленной на выбранный тайм-слот:

Параметр Описание
subscriberID ИД Сотрудника
teamID ИД Бригады
taskID ИД задачи
deadline Крайний срок завершения задачи 
title Название задачи
description Описание задачи
address Адрес задачи
longitude Географическая долгота адреса (в градусах)
latitude Географическая широта адреса (в градусах)
externalID Внешний пользовательский ИД задачи
clientName ФИО клиента
clientPhone Телефон клиента
clientEmail Адрес электронной почты клиента
priority Приоритет задачи. Существуют следующие значения:
  • 0 – низкий;
  • 1 – средний;
  • 2 – высокий.
rank Ранг задачи. Допустимые значения: от 0 до 100.
startDate Дата начала задачи (подробнее о формате времени см. раздел 2.6).
status Статус задачи. Существуют следующие значения:
  • 0 – новая;
  • 1 – принята;
  • 2 – отклонена;
  • 3 – выполнена;
  • 4 – в работе.
taskTypeID ИД типа задачи
customStatusID ИД пользовательского статуса задачи
customStatusReasonID ИД причины смены пользовательского статуса задачи
mapObjectID ИД объекта
mapObjectWorkScheduleID ИД расписания
commentPolicy Требования к комментарию при завершении задачи. Существуют следующие значения:
  • 0 – не обязателен;
  • 1 – обязателен;
  • 2 – обязателен при отклонении заявки;
  • 3 – обязателен в обоих случаях.
serviceTime Время выполнения задачи
startInterval Интервал начала выполнения задачи
preferredPositionInRoute Порядок задачи в маршруте. Допустимые значения: от 1 до 10.
isMandatoryInRoute Должна ли задача быть обязательно поставлена в маршрут. Существуют следующие значения:
  • true – задача должна быть обязательно в маршруте.
  • false – задачи может не быть в маршруте.
isFixed Является ли задача закрепленной (нельзя менять время начала выполнения в пределах допустимого времени опоздания, изменять или снимать исполнителя). Существуют следующие значения:
  • true — задача закреплена;
  • false — задача не закреплена.
creationDate Дата и время создания задачи 
Параметры маршрута задачи (массив структур routeItems)
plannedStartDate Плановая дата начала задачи 
plannedEndDate Плановая дата окончания задачи 
timeToPoint Время доезда в минутах до адреса задачи
distanceToPoint Расстояние в метрах до адреса задачи
Параметры компетенций задачи (competences)
competenceID ИД компетенции
amount Вес компетенции
level Уровень владения компетенцией
Параметры настройки бригады (teamSettings)
subscriberCount Параметр обозначает количество сотрудников, которое требуется для выполнения задачи (значение от 1 до 10).
Параметры измерений (структура dimensions)
weight Вес (кг)
unit Юниты
width Ширина (м)
height Высота (м)
length Длина (м)
volume Объем (м3)
Параметры дополнительных полей задачи (массив структур customFieldFormItems)
externalID ИД дополнительного поля
name Название дополнительного поля
value Значение дополнительного поля
type Тип дополнительного поля. Существуют следующие типы:
  • string – строка;
  • text – текст;
  • date – дата;
  • time – время;
  • integer – целое число;
  • double – вещественное число;
  • boolean – галочка;
  • select – список;
  • picture – изображение;
  • file – файл.
Параметры шаблона формы, обязательного для заполнения при отклонении или завершении задачи (массив структур taskFormTemplates)
status Статус задачи, при переводе в который необходимо заполнить форму. Существуют следующие значения:
  • 2 — отклонена;
  • 3 — выполнена.
taskFormTemplateID ИД шаблона формы.
isRequired Является ли обязательным заполнение формы. Существуют следующие значения:
  • true — заполнение формы является обязательным;
  • false — заполнение формы является необязательным.
Параметры предзаполненных полей (массив структур prefillValues)
externalID Внешний ИД поля.
value Значение поля.
Параметры колонок таблицы (массив массивов rows)
externalID Внешний ИД колонки. 
value Значение колонки.
Параметры общей ссылки на местоположение Сотрудника, выполняющего задачу (структура sharedLink)
isActive Активность ссылки. Существуют следующие значения:
  • true — ссылка активна, можно просматривать местоположение Сотрудника;
  • false — ссылка неактивна; местоположение Сотрудника недоступно.
sharingPeriod Время действия ссылки, после его окончания просмотр местоположения по ссылке станет недоступным. Существуют следующие значения:
  • 1 — до окончания выполнения задачи. Как только статус задачи будет изменен на «Выполнена», просмотр местоположения станет недоступным;
  • 2 — до указанного времени.
sharingEndDate Дата и время окончания действия ссылки (если в параметре sharingPeriod передано значение 2)
sendToEmail Отправить ссылку на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить ссылку по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры обратной связи (структура feedback)
formInvitationProfileID ИД профиля обратной связи
formTemplateID ИД формы обратной связи
sendToEmail Отправить форму обратной связи на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить форму обратной связи по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры чек-листов (массив структур checklists)
checklistID ИД чек-листа
assetID ИД актива
name Название чек-листа
description Описание чек-листа
isRequired Является ли заполнение чек-листа обязательным. Существуют следующие значения:
  • true — заполнение чек-листа является обязательным;
  • false — заполнение чек-листа не обязательно.
checkListExternalID Внешний ИД чек-листа
type Тип чек-листа. Существуют следующие значения:
  • 0 — тип по умолчанию.
Status Статус чек-листа. Существуют следующие значения:
  • 0 — новый;
  • 1 — черновик;
  • 2 — пройден.
creationDate Дата и время создания чек-листа
taskID ИД задачи, к которой привязан чек-лист
lastModificationDate Дата и время последнего прохождения чек-листа
subscriberID ИД Сотрудника, который заполняет чек-лист
latitude Географическая широта места прохождения чек-листа (в градусах)
longitude Географическая долгота места прохождения чек-листа (в градусах)
radius Радиус погрешности определения места прохождения чек-листа (в метрах)
address Адрес прохождения чек-листа
checkListTemplateIDs ИД шаблонов чек-листов
checkListTemplateNames Названия шаблонов чек-листов
maxScore Максимальная оценка по итогам прохождения чек-листа
totalScore Общая оценка по итогам прохождения чек-листа

Формат запроса

POST /v6/api/taskManagement/timeslots/tasks HTTP/1.1
Host: host
Authorization: Bearer token

\{
    "forceCreateTask": boolean,
    "subscriberID": integer,
    "deadline": "dateTime",
    "title": "string",
    "description": "string",
    "address": "string",
    "longitude": number,
    "latitude": number,
    "externalID": "string",
    "clientName": "string",
    "clientPhone": "string",
    "clientEmail": "string",
    "priority": integer,
    "rank": integer,
    "startDate": "dateTime",
    "taskTypeID": integer,
    "mapObjectID": integer,
    "mapObjectWorkScheduleID": integer,
    "commentPolicy": integer,
    "competences": [
        \{
            "competenceID": integer,
            "amount": number,
            "level": integer
        }
    ],
    "dimensions": \{
        "weight": number,
        "unit": number,
        "width": number,
        "height": number,
        "length": number,
        "volume": number
    },
    "serviceTime": integer,
    "startInterval": integer,
    "isMandatoryInRoute": boolean,
    "preferredPositionInRoute": integer,
    "isFixed": boolean,
    "customFieldsFormTemplateID": integer,
    "customFieldFormItems": [
        \{
            "externalID": "string",
            "value": "string"
        }	
    ],
    "taskFormTemplates": [
        \{
            "status": integer,
            "taskFormTemplateID": integer,
            "isRequired": boolean,
            "prefillValues": [
                \{
                    "externalID": "string",
                    "value": "string",
                    "rows": [
                         [
                             \{
                                 "externalID": "string",
                                 "value": "string"
                             }
                         ]
                    ]
                }
            ]
        }
    ],
    "sharedLink": \{
        "isActive": boolean,
        "sharingPeriod": integer,
        "sharingEndDate": "dateTime",
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "feedback": \{
        "formInvitationProfileID": integer,
        "formTemplateID": integer,
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "checklists": [
        \{
          "assetID": integer,
          "isRequired": boolean,
          "type": integer,
          "checkListTemplateIDs": [
            integer
          ],
          "checkListTemplateExternalIDs": [
            integer
          ],
          "name": "string",
          "description": "string"
        }
    ],
    "teamSettings": \{
        "subscriberCount": integer
    }
  }

Пример запроса

POST /v6/api/taskManagement/timeslots/tasks HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

\{
    "forceCreateTask": false,
    "subscriberID": 1,
    "deadline": "2020-10-06T20:00:00",
    "title": "task",
    "description": "Описание",
    "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
    "longitude": 37.61775044433594,
    "latitude": 55.735528725106505,
    "externalID": 2,
    "clientName": "Иванов Иван",
    "clientPhone": "79161234567",
    "clientEmail": "ivan@ivanov.ru",
    "priority": 1,
    "rank": 10,
    "startDate": "2020-10-06T14:50:00",
    "taskTypeID": 1,
    "mapObjectID": 1,
    "mapObjectWorkScheduleID": 0,
    "commentPolicy": 3,
    "competences": [
        \{
            "competenceID": 1,
            "amount": 13,
            "level": 3
        }			
    ],
    "dimensions": \{
        "weight": 5,
        "unit": 5,
        "width": 5,
        "height": 5,
        "length": 5,
        "volume": 5
    },
    "serviceTime": 12,
    "startInterval": 12,
    "isMandatoryInRoute": true,
    "preferredPositionInRoute": 1,
    "isFixed": false,
    "customFieldsFormTemplateID": 1,
    "customFieldFormItems": [
        \{
            "externalID": "1",
            "value": "True"
        }
    ],
    "taskFormTemplates": [
        \{
            "status": 2,
            "taskFormTemplateID": 1,
            "isRequired": true
        },
        \{
            "status": 3,
            "taskFormTemplateID": 2,
            "isRequired": true
        }
    ],
    "sharedLink": \{
        "isActive": true,
        "sharingPeriod": 2,
        "sharingEndDate": "2022-10-06T12:50:00+03:00",
        "sendToEmail": true,
        "sendToSMS": true
    },
    "feedback": \{
        "formInvitationProfileID": 1,
        "formTemplateID": 1,
        "sendToEmail": true,
        "sendToSMS": true
    },
    "checklists": [
        \{
          "assetID": 1,
          "isRequired": true,
          "type": 0,
          "checkListTemplateIDs": [
            1
          ],
          "checkListTemplateExternalIDs": [
            1
          ],
          "name": "Техническое обслуживание здания",
          "description": "Полное тех. Обслуживание"
            }
       ],
    "teamSettings": \{
        "subscriberCount": 2
       }
   }

Формат ответа

\{
    "subscriberID": integer,
    "teamID": integer,
    "routeItems": [
        \{
            "plannedStartDate": "string",
            "plannedEndDate": "string",
            "timeToPoint": integer,
            "distanceToPoint": integer
        }
    ],
    "workOrders": [
        \{
            "workOrderID": integer,
            "teamID": integer,
            "startTime": "string",
            "endTime": "string",
            "serviceTime": integer,
            "creationDate": "string",
            "teamName": "string"
        }
  ],
    "deadline": "dateTime",
    "title": "string",
    "description": "string",
    "address": "string",
    "longitude": number,
    "latitude": number,
    "externalID": "string",
    "clientName": "string",
    "clientPhone": "string",
    "clientEmail": "string",
    "priority": integer,
    "rank": integer,
    "startDate": "dateTime",
    "status": integer,
    "taskTypeID": integer,
    "customStatusID": integer,
    "customStatusReasonID": integer,
    "mapObjectID": integer,
    "mapObjectWorkScheduleID": integer,
    "commentPolicy": integer,
    "competences": [
        \{
            "competenceID": integer,
            "amount": number,
            "level": integer
        }
    ],
    "dimensions": \{
        "weight": number,
        "unit": number,
        "width": number,
        "height": number,
        "length": number,
        "volume": number
    },
    "serviceTime": integer,
    "startInterval": integer,
    "isMandatoryInRoute": boolean,
    "preferredPositionInRoute": integer,
    "isFixed": boolean,
    "customFieldsFormTemplateID": integer,
    "customFieldFormItems": [
        \{
            "externalID": "string",
            "value": "string"
        }	
    ],
    "taskFormTemplates": [
        \{
            "status": integer,
            "taskFormTemplateID": integer,
            "isRequired": boolean,
            "prefillValues": [
                \{
                    "externalID": "string",
                    "value": "string",
                    "rows": [
                         [
                             \{
                                 "externalID": "string",
                                 "value": "string"
                             }
                         ]
                    ]
                }
            ]
        }
    ],
    "sharedLink": \{
        "isActive": boolean,
        "sharingPeriod": integer,
        "sharingEndDate": "dateTime",
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "feedback": \{
        "formInvitationProfileID": integer,
        "formTemplateID": integer,
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "checklists": [
        \{
             "checklistID": integer,
             "assetID": integer,
             "name": "string",
             "description": "string",
             "isRequired": boolean,
             "checkListExternalID": "string",
             "type": integer,
             "status": integer,
             "creationDate": "string",
             "taskID": integer,
             "lastModificationDate": "string",
             "subscriberID": integer,
             "latitude": number,
             "longitude": number,
             "radius": integer,
             "address": "string",
             "checkListTemplateIDs": [
                 integer
             ],
             "checkListTemplateNames": [
                 "string"
             ],
             "maxScore": number,
             "totalScore": number
        }
    ],
    "teamSettings": \{
        "subscriberCount": integer
  }
}

Пример ответа

\{
    "subscriberID": 1,
    "teamID": 2,
    "routeItems": [
        \{
            "plannedStartDate": "2024-07-18T08:12:12.142Z",
            "plannedEndDate": "2024-07-18T08:12:12.142Z",
            "timeToPoint": 0,
            "distanceToPoint": 0,
            "creationDate": "2024-12-19T16:21:11.971Z",
            "lastUpdateDate": "2024-12-19T16:21:11.971Z"
        }
    ],
     "workOrders": [
        \{
            "workOrderID": 379997,
            "teamID": 3067378,
            "startTime": "2024-12-21T14:00:00+03:00",
            "endTime": "2024-12-21T15:20:00+03:00",
            "serviceTime": 80,
            "creationDate": "2024-12-19T17:27:12.32+03:00",
            "teamName": "Бригада Павлов+Петров"
        }
  ],
    "taskID": 1,	
    "deadline": "2020-10-06T20:00:00+03:00",
    "title": "task",
    "description": "Описание",
    "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
    "longitude": 37.61775044433594,
    "latitude": 55.735528725106505,
    "externalID": null,
    "clientName": "Иванов Иван",
    "clientPhone": "79161234567",
    "clientEmail": "ivan@ivanov.ru",
    "priority": 1,
    "rank": 10,
    "startDate": "2020-10-06T14:50:00+03:00",
    "status": 1,
    "taskTypeID": 1,
    "customStatusID": 1,
    "customStatusReasonID": 1,
    "mapObjectID": 1,
    "mapObjectWorkScheduleID": 0,
    "commentPolicy": 3,
    "competences": [
        \{	
            "competenceID": 1,
            "amount": 13,
            "level": 3
        }
    ],
    "dimensions": \{
        "weight": 5,
        "unit": 5,
        "width": 5,
        "height": 5,
        "length": 5,
        "volume": 5
    },
    "serviceTime": 12,
    "startInterval": 12,
    "isMandatoryInRoute": true,
    "preferredPositionInRoute": 1,
    "isFixed": false,
    "customFieldsFormTemplateID": 1,
    "customFieldFormItems": [
        \{			
            "externalID": "1",
            "name": "Лично в руки",
            "value": "True",
            "type": "Boolean"
        }
    ],
    "taskFormTemplates": [
        \{
            "status": 2,
            "taskFormTemplateID": 1,
            "isRequired": true,
            "prefillValues": [
                \{
                    "externalID": "85978",
                    "value": "Значение поля",
                    "rows": [
                         [
                             \{
                                 "externalID": "872",
                                 "value": "Значение колонки"
                             }
                         ]
                    ]
                }
            ]
        }
    ]
    "creationDate": "2020-10-06T12:50:00+03:00",
    "sharedLink": \{
        "isActive": true,
        "sharingPeriod": 2,
        "sharingEndDate": "2022-10-06T12:50:00+03:00",
        "sendToEmail": true,
        "sendToSMS": true
    },					
    "feedback": \{
        "formInvitationProfileID": 1,
        "formTemplateID": 1,
        "sendToEmail": true,
        "sendToSMS": true
    },	
    "checklists": [
         \{
             "checklistID": 1,
             "assetID": 1,
             "name": "Техническое обслуживание здания",
             "description": "Дома десятиэтажные",
             "isRequired": true,
             "checkListExternalID": "6093f666-97db-4722-9bd0-4c9d9ab480e7",
             "type": 0,
             "status": 2,
             "creationDate": "2020-10-19T21:10:39.94+03:00",
             "taskID": 1,
             "lastModificationDate": "2020-10-20T11:10:39.94+03:00",
             "subscriberID": 1,
             "latitude": 55.735528725106505,
             "longitude": 37.61775044433594,
             "radius": 100,
             "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
             "checkListTemplateIDs": [
                 1
             ],
             "checkListTemplateNames": [
                 "Техническое обслуживание десятиэтажных зданий"
             ],
             "maxScore": 10,
             "totalScore": 8
         }
      ],
     "teamSettings": \{
         "subscriberCount": 2
  }
}

Перебронирование тайм-слота

Общее описание

Функция PATCH /v6/api/taskManagement/timeslots/tasks позволяет перебронировать тайм-слот при изменении задачи.

Параметры вызова

Функция имеет следующие параметры:

Параметр Описание
deadline Крайний срок завершения задачи (дата и время, подробнее о формате времени)
title Название задачи (обязательное поле)
description Описание задачи
address Адрес задачи
longitude Географическая долгота адреса (в градусах). Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude. Если в запросе передан параметр mapObjectID, но не переданы параметры longitude, latitude, то координаты задачи будут обновлены по переданному объекту.
latitude Географическая широта адреса (в градусах). Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude. Если в запросе передан параметр mapObjectID, но не переданы параметры longitude, latitude, то координаты задачи будут обновлены по переданному объекту.
externalID Внешний пользовательский ИД задачи
clientName ФИО клиента
clientPhone Телефон клиента
clientEmail Адрес электронной почты клиента
priority Приоритет задачи. Существуют следующие значения:
  • 0 – низкий;
  • 1 – средний;
  • 2 – высокий.
rank Ранг задачи. Допустимые значения: от 0 до 100.
startDate Дата начала задачи (обязательное поле). Подробнее о формате времени
status Статус задачи. Существуют следующие значения:
  • 0 – новая;
  • 1 – принята;
  • 2 – отклонена;
  • 3 – выполнена;
  • 4 – в работе.
taskTypeID ИД типа задачи
customStatusID ИД пользовательского статуса задачи
customStatusReasonID ИД причины смены пользовательского статуса задачи
mapObjectID ИД объекта. Если в запросе переданы параметры mapObjectID, longitude, latitude, то местоположение задачи определяется по значениям, переданным в параметрах latitude, longitude. Если в запросе передан параметр mapObjectID, но не переданы параметры longitude, latitude, то координаты задачи будут обновлены по переданному объекту.
mapObjectWorkScheduleID ИД расписания
commentPolicy Требования к комментарию при завершении задачи. Существуют следующие значения:
  • 0 – не обязателен;
  • 1 – обязателен;
  • 2 – обязателен при отклонении заявки;
  • 3 – обязателен в обоих случаях.
serviceTime Время выполнения задачи
startInterval Интервал начала выполнения задачи
preferredPositionInRoute Порядок задачи в маршруте. Допустимые значения: от 1 до 10.
isMandatoryInRoute Должна ли задача быть обязательно поставлена в маршрут. Существуют следующие значения:
  • true – задача должна быть обязательно в маршруте.
  • false – задачи может не быть в маршруте.
isFixed Является ли задача закрепленной (нельзя менять время начала выполнения в пределах допустимого времени опоздания, изменять или снимать исполнителя). Существуют следующие значения:
  • true — задача закреплена;
  • false — задача не закреплена.
customFieldFormTemplateID ИД шаблона дополнительных полей задачи
Параметры компетенций задачи (competences)
competenceID ИД компетенции
amount Вес компетенции
level Уровень владения компетенцией
Параметры настройки бригады (teamSettings)
subscriberCount Параметр обозначает количество сотрудников, которое требуется для выполнения задачи (значение от 1 до 10).
Параметры измерений (структура dimensions)
weight Вес (кг)
unit Юниты
width Ширина (м)
height Высота (м)
length Длина (м)
volume Объем (м3)
Параметры дополнительных полей задачи (массив структур customFieldFormItems)
externalID ИД дополнительного поля
value Значение дополнительного поля
Параметры шаблона формы, обязательного для заполнения при отклонении или завершении задачи (массив структур taskFormTemplates)
status Статус задачи, при переводе в который необходимо заполнить форму. Существуют следующие значения:
  • 2 — отклонена;
  • 3 — выполнена.
Если статус задачи не передан или передан равным null, то в приложении сотрудник сможет заполнить и прикрепить в комментарии задачи только шаблоны форм со статусом null. Если у задачи нет шаблонов с таким статусом, то в приложении сотрудник сможет заполнить и прикрепить к комментарию задачи любой шаблон формы.
taskFormTemplateID ИД шаблона формы.
isRequired Является ли обязательным заполнение формы. Существуют следующие значения:
  • true — заполнение формы является обязательным.
  • false — заполнение формы является необязательным.
Параметры предзаполненных полей (массив структур prefillValues)
externalID Внешний ИД поля. 
value Значение поля.
Параметры колонок таблицы (массив массивов rows)
externalID Внешний ИД колонки. 
value Значение колонки.
Параметры общей ссылки на местоположение Сотрудника, выполняющего задачу (структура sharedLink)
isActive Активность ссылки. Существуют следующие значения:
  • true — ссылка активна, можно просматривать местоположение Сотрудника;
  • false — ссылка неактивна; местоположение Сотрудника недоступно.
sharingPeriod Время действия ссылки, после его окончания просмотр местоположения по ссылке станет недоступным. Существуют следующие значения:
  • 1 — до окончания выполнения задачи. Как только статус задачи будет изменен на «Выполнена», просмотр местоположения станет недоступным;
  • 2 — до указанного времени.
sharingEndDate Дата и время окончания действия ссылки (если в параметре sharingPeriod передано значение 2)
sendToEmail Отправить ссылку на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить ссылку по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры обратной связи (структура feedback)
formInvitationProfileID ИД профиля обратной связи
formTemplateID ИД формы обратной связи
sendToEmail Отправить форму обратной связи на электронную почту клиента. Электронная почта должна быть указана в параметре clientEmail. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
sendToSMS Отправить форму обратной связи по SMS клиенту. Телефон клиента должен быть указан в параметре clientPhone. Существуют следующие значения:
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять.
Параметры чек-листа (массив структур checklists)
assetID ИД актива
isRequired Является ли заполнение чек-листа обязательным. Существуют следующие значения:
  • true — заполнение чек-листа является обязательным;
  • false — заполнение чек-листа не обязательно.
type Тип чек-листа. Существуют следующие значения:
  • 0 — типа по умолчанию.
checkListTemplateIDs ИД шаблонов чек-листов
checkListTemplateExternalIDs Внешние ИД шаблонов чек-листов
name Название чек-листа
description Описание чек-листа
Результат выполнения
subscriberID ИД Сотрудника
teamID ИД Бригады
taskID ИД задачи
deadline Крайний срок завершения задачи (дата и время, подробнее о формате времени).
title Название задачи
description Описание задачи
address Адрес задачи
longitude Географическая долгота адреса (в градусах)
latitude Географическая широта адреса (в градусах)
externalID Внешний пользовательский ИД задачи
clientName ФИО клиента
clientPhone Телефон клиента
clientEmail Адрес электронной почты клиента
priority Приоритет задачи. Существуют следующие значения:
  • 0 — низкий;
  • 1 — средний;
  • 2 — высокий.
rank Ранг задачи. Допустимые значения: от 0 до 100.
startDate Дата начала задачи (подробнее о формате времени).
status Статус задачи. Существуют следующие значения:
  • 0 — новая;
  • 1 — принята;
  • 2 — отклонена;
  • 3 — выполнена;
  • 4 — в работе;
taskTypeID ИД типа задачи
customStatusID ИД пользовательского статуса задачи
customStatusReasonID ИД причины смены пользовательского статуса задачи
mapObjectID ИД объекта
mapObjectWorkScheduleID ИД расписания
commentPolicy Требования к комментарию при завершении задачи. Существуют следующие значения:
  • 0 — не обязателен;
  • 1 — обязателен;
  • 2 — обязателен при отклонении заявки;
  • 3 — обязателен в обоих случаях;
serviceTime Время выполнения задачи
startInterval Интервал начала выполнения задачи
preferredPositionInRoute Порядок задачи в маршруте. Допустимые значения: от 1 до 10.
isMandatoryInRoute Должна ли задача быть обязательно поставлена в маршрут. Существуют следующие значения:
  • true — задача должна быть обязательно в маршруте;
  • false — задачи может не быть в маршруте;
isFixed Является ли задача закрепленной. Существуют следующие значения:
  • true — задача закреплена;
  • false — задача не закреплена;
creationDate Дата и время создания задачи (подробнее о формате времени).
Параметры маршрута задачи (массив структур routeItems)
plannedStartDate Плановая дата начала задачи (подробнее о формате времени).
plannedEndDate Плановая дата окончания задачи (подробнее о формате времени).
timeToPoint Время доезда в минутах до адреса задачи
distanceToPoint Расстояние в метрах до адреса задачи
Параметры компетенций задачи (competences)
competenceID ИД компетенции
amount Вес компетенции
level Уровень владения компетенцией
Параметры настройки бригады (teamSettings)
subscriberCount Количество сотрудников, необходимое для выполнения задачи (от 1 до 10)
Параметры измерений (структура dimensions)
weight Вес (кг)
unit Юниты
width Ширина (м)
height Высота (м)
length Длина (м)
volume Объем (м3)
Параметры дополнительных полей задачи (массив структур customFieldFormItems)
externalID ИД дополнительного поля
name Название дополнительного поля
value Значение дополнительного поля
type Тип дополнительного поля. Существуют следующие типы:
  • string — строка;
  • text — текст;
  • date — дата;
  • time — время;
  • integer — целое число;
  • double — вещественное число;
  • boolean — галочка;
  • select — список;
  • picture — изображение;
  • file — файл;
Параметры шаблона формы, обязательного для заполнения при отклонении или завершении задачи (массив структур taskFormTemplates)
status Статус задачи, при переводе в который необходимо заполнить форму. Существуют следующие значения:
  • 2 — отклонена;
  • 3 — выполнена;
taskFormTemplateID ИД шаблона формы
isRequired Является ли обязательным заполнение формы. Существуют следующие значения:
  • true — заполнение формы является обязательным;
  • false — заполнение формы является необязательным;
Параметры предзаполненных полей (массив структур prefillValues)
externalID Внешний ИД поля. 
value Значение поля
Параметры колонок таблицы (массив массивов rows)
externalID Внешний ИД колонки. 
value Значение колонки
Параметры общей ссылки на местоположение Сотрудника (структура sharedLink)
isActive Активность ссылки. Существуют следующие значения:
  • true — ссылка активна, можно просматривать местоположение Сотрудника;
  • false — ссылка неактивна; местоположение Сотрудника недоступно;
sharingPeriod Время действия ссылки. Существуют следующие значения:
  • 1 — до окончания выполнения задачи. После смены статуса на «Выполнена» просмотр местоположения станет недоступным;
  • 2 — до указанного времени;
sharingEndDate Дата и время окончания действия ссылки (если sharingPeriod = 2)
sendToEmail Отправить ссылку на электронную почту клиента. Электронная почта должна быть указана в clientEmail.
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять;
sendToSMS Отправить ссылку по SMS клиенту. Телефон клиента должен быть указан в clientPhone.
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять;
Параметры обратной связи (структура feedback)
formInvitationProfileID ИД профиля обратной связи
formTemplateID ИД формы обратной связи
sendToEmail Отправить форму обратной связи на email клиента. Электронная почта должна быть указана в clientEmail.
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять;
sendToSMS Отправить форму обратной связи по SMS клиенту. Телефон клиента должен быть указан в clientPhone.
  • true — необходимо отправить ссылку;
  • false — ссылку не нужно отправлять;
Параметры чек-листов (массив структур checklists)
checklistID ИД чек-листа
assetID ИД актива
name Название чек-листа
description Описание чек-листа
isRequired Является ли заполнение чек-листа обязательным:
  • true — обязательное;
  • false — необязательное;
checkListExternalID Внешний ИД чек-листа
type Тип чек-листа. Существуют следующие значения:
  • 0 — тип по умолчанию;
Status Статус чек-листа:
  • 0 — новый;
  • 1 — черновик;
  • 2 — пройден;
creationDate Дата и время создания чек-листа
taskID ИД задачи, к которой привязан чек-лист
lastModificationDate Дата и время последнего прохождения чек-листа
subscriberID ИД Сотрудника, который заполняет чек-лист
latitude Географическая широта места прохождения чек-листа (в градусах)
longitude Географическая долгота места прохождения чек-листа (в градусах)
radius Радиус погрешности определения места прохождения чек-листа (в метрах)
address Адрес прохождения чек-листа
checkListTemplateIDs ИД шаблонов чек-листов
checkListTemplateNames Названия шаблонов чек-листов
maxScore Максимальная оценка по итогам прохождения чек-листа
totalScore Общая оценка по итогам прохождения чек-листа

Формат запроса

PATCH /v6/api/taskManagement/timeslots/tasks HTTP/1.1
Host: host
Authorization: Bearer token

\{
    "deadline": "dateTime",
    "title": "string",
    "description": "string",
    "address": "string",
    "longitude": number,
    "latitude": number,
    "externalID": "string",
    "clientName": "string",
    "clientPhone": "string",
    "clientEmail": "string",
    "priority": integer,
    "rank": integer,
    "startDate": "dateTime",
    "status": integer,
    "taskTypeID": integer,
    "customStatusID": integer,
    "customStatusReasonID": integer,
    "mapObjectID": integer,
    "mapObjectWorkScheduleID": integer,
    "commentPolicy": integer,
    "competences": [
        \{
            "competenceID": integer,
            "amount": number,
            "level": integer
        }
    ],
    "dimensions": \{
        "weight": number,
        "unit": number,
        "width": number,
        "height": number,
        "length": number,
        "volume": number
    },
    "serviceTime": integer,
    "startInterval": integer,
    "isMandatoryInRoute": boolean,
    "preferredPositionInRoute": integer,
    "isFixed": boolean,
    "customFieldsFormTemplateID": integer,
    "customFieldFormItems": [
        \{
            "externalID": "string",
            "value": "string"
        }	
    ],
    "taskFormTemplates": [
        \{
            "status": integer,
            "taskFormTemplateID": integer,
            "isRequired": boolean,
            "prefillValues": [
                \{
                    "externalID": "string",
                    "value": "string",
                    "rows": [
                         [
                             \{
                                 "externalID": "string",
                                 "value": "string"
                             }
                         ]
                    ]
                }
            ]
        }
    ],
    "sharedLink": \{
        "isActive": boolean,
        "sharingPeriod": integer,
        "sharingEndDate": "dateTime",
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "feedback": \{
        "formInvitationProfileID": integer,
        "formTemplateID": integer,
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "checklists": [
        \{
          "assetID": integer,
          "isRequired": boolean,
          "type": integer,
          "checkListTemplateIDs": [
            integer
          ],
          "checkListTemplateExternalIDs": [
            integer
          ],
          "name": "string",
          "description": "string"
        }
    ],
    "teamSettings": \{
        "subscriberCount": integer
    }
}

Пример запроса

PATCH /v6/api/taskManagement/timeslots/tasks HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

\{
    "deadline": "2020-10-06T20:00:00",
    "title": "task",
    "description": "Описание",
    "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
    "longitude": 37.61775044433594,
    "latitude": 55.735528725106505,
    "externalID": 2,
    "clientName": "Иванов Иван",
    "clientPhone": "79161234567",
    "clientEmail": "ivan@ivanov.ru",
    "priority": 1,
    "rank": 10,
    "startDate": "2020-10-06T14:50:00",
    "status": 1,
    "taskTypeID": 1,
    "customStatusID": 1,
    "customStatusReasonID": 1,
    "mapObjectID": 1,
    "mapObjectWorkScheduleID": 0,
    "commentPolicy": 3,
    "competences": [
        \{
            "competenceID": 1,
            "amount": 13,
              "level": 3
        }			
    ],
    "dimensions": \{
        "weight": 5,
        "unit": 5,
        "width": 5,
        "height": 5,
        "length": 5,
        "volume": 5
    },
    "serviceTime": 12,
    "startInterval": 12,
    "isMandatoryInRoute": true,
    "preferredPositionInRoute": 1,
    "isFixed": false,
    "customFieldsFormTemplateID": 1,
    "customFieldFormItems": [
        \{
            "externalID": "1",
            "value": "True"
        }
    ],
    "taskFormTemplates": [
        \{
            "status": 2,
            "taskFormTemplateID": 1,
            "isRequired": true
        },
        \{
            "status": 3,
            "taskFormTemplateID": 2,
            "isRequired": true
        }
    ],
    "sharedLink": \{
        "isActive": true,
        "sharingPeriod": 2,
        "sharingEndDate": "2022-10-06T12:50:00+03:00",
        "sendToEmail": true,
        "sendToSMS": true
    },
    "feedback": \{
        "formInvitationProfileID": 1,
        "formTemplateID": 1,
        "sendToEmail": true,
        "sendToSMS": true
    },
    "checklists": [
        \{
          "assetID": 1,
          "isRequired": true,
          "type": 0,
          "checkListTemplateIDs": [
            1
          ],
          "checkListTemplateExternalIDs": [
            1
          ],
          "name": "Техническое обслуживание здания",
          "description": "Полное тех. Обслуживание"
        }
    ],
    "teamSettings": \{
        "subscriberCount": 2
    }
}

Формат ответа

\{
    "subscriberID": integer,
    "teamID": integer,
    "routeItems": [
        \{
            "plannedStartDate": "string",
            "plannedEndDate": "string",
            "timeToPoint": integer,
            "distanceToPoint": integer,
            "creationDate": "string",
            "lastUpdateDate": "string"
        }
    ],
    "workOrders": [
        \{
            "workOrderID": integer,
            "teamID": integer,
            "startTime": "string",
            "endTime": "string",
            "serviceTime": integer,
            "creationDate": "string",
            "teamName": "string"
        }
  ],
    "deadline": "dateTime",
    "title": "string",
    "description": "string",
    "address": "string",
    "longitude": number,
    "latitude": number,
    "externalID": "string",
    "clientName": "string",
    "clientPhone": "string",
    "clientEmail": "string",
    "priority": integer,
    "rank": integer,
    "startDate": "dateTime",
    "status": integer,
    "taskTypeID": integer,
    "customStatusID": integer,
    "customStatusReasonID": integer,
    "mapObjectID": integer,
    "mapObjectWorkScheduleID": integer,
    "commentPolicy": integer,
    "competences": [
        \{
            "competenceID": integer,
            "amount": number,
            "level": integer
        }
    ],
    "dimensions": \{
        "weight": number,
        "unit": number,
        "width": number,
        "height": number,
        "length": number,
        "volume": number
    },
    "serviceTime": integer,
    "startInterval": integer,
    "isMandatoryInRoute": boolean,
    "preferredPositionInRoute": integer,
    "isFixed": integer,
    "customFieldsFormTemplateID": integer,
    "customFieldFormItems": [
        \{
            "externalID": "string",
            "value": "string"
        }	
    ],
    "taskFormTemplates": [
        \{
            "status": integer,
            "taskFormTemplateID": integer,
            "isRequired": boolean,
            "prefillValues": [
                \{
                    "externalID": "string",
                    "value": "string",
                    "rows": [
                         [
                             \{
                                 "externalID": "string",
                                 "value": "string"
                             }
                         ]
                    ]
                }
            ]
        }
    ],
    "sharedLink": \{
        "isActive": boolean,
        "sharingPeriod": integer,
        "sharingEndDate": "dateTime",
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "feedback": \{
        "formInvitationProfileID": integer,
        "formTemplateID": integer,
        "sendToEmail": boolean,
        "sendToSMS": boolean
    },
    "checklists": [
        \{
             "checklistID": integer,
             "assetID": integer,
             "name": "string",
             "description": "string",
             "isRequired": boolean,
             "checkListExternalID": "string",
             "type": integer,
             "status": integer,
             "creationDate": "string",
             "taskID": integer,
             "lastModificationDate": "string",
             "subscriberID": integer,
             "latitude": number,
             "longitude": number,
             "radius": integer,
             "address": "string",
             "checkListTemplateIDs": [
                 integer
             ],
             "checkListTemplateNames": [
                 "string"
             ],
             "maxScore": number,
             "totalScore": number
        }
    ],
    "teamSettings": \{
        "subscriberCount": integer
  }
}

Пример ответа

\{
    "subscriberID": 1,
    "teamID": 2,
    "routeItems": [
        \{
            "plannedStartDate": "2024-07-18T08:12:12.142Z",
            "plannedEndDate": "2024-07-18T08:12:12.142Z",
            "timeToPoint": 0,
            "distanceToPoint": 0,
            "creationDate": "2024-12-19T16:21:11.851Z",
            "lastUpdateDate": "2024-12-19T16:21:11.851Z"
        }
    ],
    "workOrders": [
        \{
            "workOrderID": 379997,
            "teamID": 3067378,
            "startTime": "2024-12-21T14:00:00+03:00",
            "endTime": "2024-12-21T15:20:00+03:00",
            "serviceTime": 80,
            "creationDate": "2024-12-19T17:27:12.32+03:00",
            "teamName": "Бригада Павлов+Петров"
        }
  ],
    "taskID": 1,
    "deadline": "2020-10-06T20:00:00+03:00",
    "title": "task",
    "description": "Описание",
    "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
    "longitude": 37.61775044433594,
    "latitude": 55.735528725106505,
    "externalID": null,
    "clientName": "Иванов Иван",
    "clientPhone": "79161234567",
    "clientEmail": "ivan@ivanov.ru",
    "priority": 1,
    "rank": 10,
    "startDate": "2020-10-06T14:50:00+03:00",
    "status": 1,
    "taskTypeID": 1,
    "customStatusID": 1,
    "customStatusReasonID": 1,
    "mapObjectID": 1,
    "mapObjectWorkScheduleID": integer,
    "commentPolicy": 3,
    "competences": [
        \{	
            "competenceID": 1,
            "amount": 13,
            "level": 3
        }
    ],
    "dimensions": \{
        "weight": 5,
        "unit": 5,
        "width": 5,
        "height": 5,
        "length": 5,
        "volume": 5
    },
    "serviceTime": 12,
    "startInterval": 12,
    "isMandatoryInRoute": true,
    "preferredPositionInRoute": 1,
    "isFixed": false,
    "customFieldsFormTemplateID": 1,
    "customFieldFormItems": [
        \{			
            "externalID": "1",
            "name": "Лично в руки",
            "value": "True",
            "type": "Boolean"
        }
    ],
    "taskFormTemplates": [
        \{
            "status": 2,
            "taskFormTemplateID": 1,
            "isRequired": true,
            "prefillValues": [
                \{
                    "externalID": "85978",
                    "value": "Значение поля",
                    "rows": [
                         [
                             \{
                                 "externalID": "872",
                                 "value": "Значение колонки"
                             }
                         ]
                    ]
                }
            ]
        }
    ]
    "creationDate": "2020-10-06T12:50:00+03:00",
    "sharedLink": \{
        "isActive": true,
        "sharingPeriod": 2,
        "sharingEndDate": "2022-10-06T12:50:00+03:00",
        "sendToEmail": true,
        "sendToSMS": true
    },
    "feedback": \{
        "formInvitationProfileID": 1,
        "formTemplateID": 1,
        "sendToEmail": true,
        "sendToSMS": true
    },	
    "checklists": [
         \{
             "checklistID": 1,
             "assetID": 1,
             "name": "Техническое обслуживание здания",
             "description": "Дома десятиэтажные",
             "isRequired": true,
             "checkListExternalID": "6093f666-97db-4722-9bd0-4c9d9ab480e7",
             "type": 0,
             "status": 2,
             "creationDate": "2020-10-19T21:10:39.94+03:00",
             "taskID": 1,
             "lastModificationDate": "2020-10-20T11:10:39.94+03:00",
             "subscriberID": 1,
             "latitude": 55.735528725106505,
             "longitude": 37.61775044433594,
             "radius": 100,
             "address": "Россия, Москва, улица Большая Ордынка, 27/6с4",
             "checkListTemplateIDs": [
                 1
             ],
             "checkListTemplateNames": [
                 "Техническое обслуживание десятиэтажных зданий"
             ],
             "maxScore": 10,
             "totalScore": 8
         }
      ],
      "teamSettings": \{
          "subscriberCount": 2
  }
}

Получение типов задач

Общее описание

Функция GET /v6/api/taskManagement/tasks/types?customerUnitID={integer} позволяет получить типы задач.

Параметры вызова

Функция не имеет дополнительных параметров.

Результат выполнения

Функция возвращает массив структур со следующими параметрами типов задач:

Параметр Описание
taskTypeID ИД типа задач
customerUnitID ИД подразделения
icon Название иконки для типа задачи
name Название типа задачи
description Описание типа задачи
creationDate Дата и время создания типа задачи (подробнее о формате времени)
competenceIDs ИД компетенций, привязанных к типу задачи.

Формат запроса

GET /v6/api/taskManagement/tasks/types?customerUnitID=\{integer} HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/tasks/types?customerUnitID=41 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

[
    \{
        "taskTypeID": integer,
        "customerUnitID": integer,
        "icon": "string",
        "name": "string",
        "description": "string",
        "creationDate": "string",
        "competenceIDs": [
            integer
        ]
    },
    \{
        "taskTypeID": integer,
        "customerUnitID": integer,
        "icon": "string",
        "name": "string",
        "description": "string",
        "creationDate": "string",
        "competenceIDs": [
            integer
        ]
    }
]

Пример ответа

[
    \{
        "taskTypeID": 17,
        "customerUnitID": 41,
        "icon": "burst",
        "name": "Сервис",
        "description": "Услуги по вывозу/замене оборудования",
        "creationDate": "2024-07-03T19:37:55.853+03:00",
        "competenceIDs": [
            1,
            2
        ]
    },
    \{
        "taskTypeID": 20,
        "customerUnitID": 41,
        "icon": "brake-warning",
        "name": "Ремонтно-восстановительная",
        "description": "Работа, выполняемая при устранении последствий инцидента",
        "creationDate": "2024-07-03T19:37:55.853+03:00",
        "competenceIDs": [
            3,
            4
        ]
    }
]

Получение статусов задачи для типа задач

Общее описание

Функция GET /v6/api/taskManagement/tasks/customStatuses?taskTypeID={integer} позволяет получить пользовательские статусы задач для типа задач.

Параметры вызова

В запросе используется обязательный параметр taskTypeID — идентификатор типа задачи. 

Результат выполнения

Функция возвращает массив структур со следующими параметрами типов задач:

Параметр Описание
taskCustomStatusID ИД пользовательского статуса задачи
color Цвет пользовательского статуса задачи
order Очередность пользовательского статуса задачи
name Название пользовательского статуса задачи
description Описание пользовательского статуса задачи
taskTypeID ИД типа задач
defaultReasonID ИД причины смены статуса по умолчанию

Формат запроса

GET /v6/api/taskManagement/tasks/customStatuses?taskTypeID=\{integer}  HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/tasks/customStatuses?taskTypeID=15 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

[
    \{
        "taskCustomStatusID": integer,
        "color": "string",
        "order": integer,
        "name": "string",
        "description": "string",
        "taskTypeID": integer,
        "defaultReasonID": integer
    },
    \{
        "taskCustomStatusID": integer,
        "color": "string",
        "order": integer,
        "name": "string",
        "description": "string",
        "taskTypeID": integer,
        "defaultReasonID": integer
    }
]

Пример ответа

[
    \{
        "taskCustomStatusID": 103,
        "color": "#3F51B5",
        "order": 1,
        "name": "Создан",
        "description": null,
        "taskTypeID": 15,
        "defaultReasonID": null
    },
    \{
        "taskCustomStatusID": 104,
        "color": "#3F51B5",
        "order": 2,
        "name": "Назначен",
        "description": null,
        "taskTypeID": 15,
        "defaultReasonID": null
    }
]

Получение списка причин смены пользовательского статуса задачи

Общее описание

Функция GET /v6/api/taskManagement/tasks/customStatuses/{taskCustomStatusID}/reasons?isActive={boolean} позволяет получить список причин смены пользовательского статуса задач для типа задач.

Параметры вызова

Функция имеет следующие параметры:

Параметр Описание
taskCustomStatusID ИД пользовательского статуса задачи
isActive Является ли причина смены пользовательского статуса задачи действующей. Существуют следующие значения:
  • true — причина является действующей;
  • false — причина является архивной.

Результат выполнения

Функция возвращает массив структур со следующими параметрами типов задач:

Параметр Описание
taskCustomStatusReasonID ИД причины смены пользовательского статуса задачи
taskCustomStatusID ИД пользовательского статуса задачи
name Название причины смены пользовательского статуса задачи
description Описание причины смены пользовательского статуса задачи
isActive Является ли причина смены пользовательского статуса задачи действующей. Существуют следующие значения:
  • true — причина является действующей;
  • false — причина является архивной.
isTriggerAutoplanning Должна ли причина смены пользовательского статуса задачи требовать перепланирования. Существуют следующие значения:
  • true — причина требует перепланирования;
  • false — причина не требует перепланирования.

Формат запроса

GET /v6/api/taskManagement/tasks/customStatuses/\{taskCustomStatusID}/reasons?isActive=\{boolean}  HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/tasks/customStatuses/1/reasons?isActive=true HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

[
    \{
        "taskCustomStatusReasonID": integer,
        "taskCustomStatusID": integer,
        "name": "string",
        "description": "string",
        "isActive": boolean,
        "isTriggerAutoplanning": boolean
    },
    \{
        "taskCustomStatusReasonID": integer,
        "taskCustomStatusID": integer,
        "name": "string",
        "description": "string",
        "isActive": boolean,
        "isTriggerAutoplanning": boolean
    }
]

Пример ответа

[
    \{
        "taskCustomStatusReasonID": 69,
        "taskCustomStatusID": 109,
        "name": "Дубль заявки",
        "description": null,
        "isActive": true,
        "isTriggerAutoplanning": false
    },
    \{
        "taskCustomStatusReasonID": 71,
        "taskCustomStatusID": 109,
        "name": "Не готов принять в назначенное время",
        "description": null,
        "isActive": true,
        "isTriggerAutoplanning": false
    }
]

Получение списка переходов между пользовательскими статусами задач

Общее описание

Функция GET /v6/api/taskManagement/tasks/customStatuses/transitions?taskTypeID={integer} позволяет получить список переходов между пользовательскими статусами задач.

Параметры вызова

В запросе используется обязательный параметр taskTypeID — идентификатор типа задачи.

Результат выполнения

Функция возвращает массив структур со следующими параметрами типов задач:

Параметр Описание
taskCustomStatusTransitionID ИД перехода пользовательских статусов задачи
taskCustomStatusFrom Из какого статуса выполняется переход
taskCustomStatusTo В какой статус выполняется переход
description Описание причины смены пользовательского статуса задачи
userRoleID ИД роли пользователя
taskTypeID ИД типа задачи
actionText Текст действия для перехода между статусами
statusText Текст статуса

Формат запроса

GET /v6/api/taskManagement/tasks/transitions?taskTypeID=\{integer}  HTTP/1.1
Host: host
Authorization: Bearer token

Пример запроса

GET /v6/api/taskManagement/tasks/transitions?taskTypeID=15 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

Формат ответа

[
    \{
        "taskCustomStatusTransitionID": integer,
        "taskCustomStatusFrom": integer,
        "taskCustomStatusTo": integer,
        "description": "string",
        "userRoleID": integer,
        "taskTypeID": integer,
        "actionText": "string",
        "statusText": "string"
    },
    \{
        "taskCustomStatusTransitionID": integer,
        "taskCustomStatusFrom": integer,
        "taskCustomStatusTo": integer,
        "description": "string",
        "userRoleID": integer,
        "taskTypeID": integer,
        "actionText": "string",
        "statusText": "string    
    }
]

Пример ответа

[
    \{
        "taskCustomStatusTransitionID": 1069,
        "taskCustomStatusFrom": 103,
        "taskCustomStatusTo": 104,
        "description": null,
        "userRoleID": 3,
        "taskTypeID": 15,
        "actionText": "Перевести в Назначен",
        "statusText": "Назначен"
    },
    \{
        "taskCustomStatusTransitionID": 1070,
        "taskCustomStatusFrom": 104,
        "taskCustomStatusTo": 105,
        "description": null,
        "userRoleID": 3,
        "taskTypeID": 15,
        "actionText": "Перевести в Отправлен",
        "statusText": "Отправлен"
    },
    \{
        "taskCustomStatusTransitionID": 1071,
        "taskCustomStatusFrom": 105,
        "taskCustomStatusTo": 109,
        "description": null,
        "userRoleID": 3,
        "taskTypeID": 15,
        "actionText": "Перевести в Не выполнен",
        "statusText": "Не выполнен"
    }
]

Содержание

Получение списка задачПолучение задачиПолучение задачи по внешнему идентификаторуСоздание задачиОбновление задачиИзменение задачиУдаление задачиУдаление задачи по внешнему идентификаторуПолучение комментариев к задачамПолучение комментариев к задачеДобавление комментария к задачеПолучение профилей приглашений на заполнение форм обратной связиПолучение файлов, прикрепленных к задачеПолучение прикрепленного к задаче файлаПрикрепление файла к задачеУдаление файла, прикрепленного к задачеПолучение настроек общей ссылки по идентификатору задачиОбновление настроек общей ссылки для задачиПолучение профилей тайм-слотовПолучение свободных тайм-слотовБронирование тайм-слотаПеребронирование тайм-слотаПолучение типов задачПолучение статусов задачи для типа задачПолучение списка причин смены пользовательского статуса задачиПолучение списка переходов между пользовательскими статусами задач