Работа с заявками

Создание объектов

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

Функция POST /v6/api/jobManagement/jobs/mapObjects позволяет создать объект.

Максимальное количество объектов, которое можно передать в запросе, — 1000.

Для создания одного объекта необходимо использовать функцию POST /v6/api/mapObjectManagement/mapObjects.

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

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

Параметр Описание
radius Радиус объекта (в метрах)
longitude Географическая долгота (в градусах)
latitude Географическая широта (в градусах)
mapObjectGroupID ИД группы объекта (обязательный параметр)
imageIndex Индекс иконки объекта
name Название объекта (обязательный параметр)
address Адрес объекта
enabled Признак активности объекта. Существуют следующие значения:
  • true — объект включен (учитывается при определении местоположения Сотрудников, в отчетах, отображается на карте, а также в приложении «МТС Координатор»);
  • false — объект выключен.
customFieldFormTemplateID ИД шаблона дополнительных полей задачи
Параметры дополнительных полей задачи (массив структур customFieldFormItem)
externalID ИД дополнительного поля
value Значение дополнительного поля

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

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

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

Параметр Описание
jobID ИД заявки
rowsTotalNum Общее количество элементов в заявке
rowsValidNum Количество корректных элементов в заявке

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

POST /v6/api/jobManagement/jobs/mapObjects HTTP/1.1
Host: host
Authorization: Bearer token

[
    {
        "radius": integer,
        "longitude": number,
        "latitude": number,
        "mapObjectGroupID": integer,
        "imageIndex": integer,
        "name": "string",
        "address": "string",
        "enabled": boolean,
        "customFieldsFormTemplateID": integer,
        "customFieldFormItems": [
            {
                "externalID": "string",
                "value": "string"
            }
        ]
    }
    },
    {
        "radius": integer,
        "longitude": number,
        "latitude": number,
        "mapObjectGroupID": integer,
        "imageIndex": integer,
        "name": "string",
        "address": "string",
        "enabled": boolean,
        "customFieldsFormTemplateID": integer,
        "customFieldFormItems": [
            {
                "externalID": "string",
                "value": "string"
            }
        ]
    }
]

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

POST /v6/api/jobManagement/jobs/mapObjects HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

[
    {
        "radius": 150,
        "longitude": 37.5765572127199,
        "latitude": 55.7387521301683,
        "mapObjectGroupID": 1,
        "imageIndex": 0,
        "name": "Типография",
        "address": "Россия, Москва, улица Плющиха, 53/25с1",
        "enabled": true,
        "customFieldsFormTemplateID": 1,
        "customFieldFormItems": [
            {
                "externalID": "1",
                "value": "12:00-14:00"
            }
        ]
    }
    },
    {
        "radius": 150,
        "longitude": 27.541002648247712,
        "latitude": 53.90313848510366,
        "mapObjectGroupID": 1,
        "imageIndex": 0,
        "name": "Пункт выдачи",
        "address": "Россия, Московская область, Химки, Молодёжная улица, 50",
        "enabled": true,
        "customFieldsFormTemplateID": 1,
        "customFieldFormItems": [
            {
                "externalID": "1",
                "value": "12:00-14:00"
            }
        ]
    }
]

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

{
    "jobID": integer,
    "rowsTotalNum": integer,
    "rowsValidNum": integer
}

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

{
    "jobID": 1,
    "rowsTotalNum": 2,
    "rowsValidNum": 2
}

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

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

Функция GET /v6/api/jobManagement/jobs/{jobID} позволяет получить статус выполнения заявки.

Параметры запроса

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

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

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

Параметр Описание
jobID ИД заявки
operation Тип заявки 
state Статус заявок 
Параметры заявки (массив структур jobDetails, данные в массиве есть только для заявок на добавление сотрудников)
jobItemID ИД элемента заявки
state Статус элемента заявки 
result Информация об элементе заявки
subscriberID ИД Сотрудника
subscriberName Имя Сотрудника

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

GET /v6/api/jobManagement/jobs/{jobID} HTTP/1.1
Host: host		
Authorization: Bearer token

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

GET /v6/api/jobManagement/jobs/1 HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

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

{
    "jobID": integer,
    "operation": integer,
    "state": integer,
    "jobDetails": [
        {
            "jobItemID": integer,
            "state": integer,
            "result": "string",
            "subscriberID": integer,
            "subscriberName": "string"
        }
    ]
}

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

{
    "jobID": 1,
    "operation": 9,
    "state": 2,
    "jobDetails": [
        {
            "jobItemID": 1,
            "state": 2,
            "result": "Успешно добавлен",
            "subscriberID": 1,
            "subscriberName": "Иванов Иван"
        }
    ]
}

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

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

Функция GET /v6/api/jobManagement/jobs/{jobID}/jobItems позволяет получить статус по отдельным элементам заявки.

Параметры запроса

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

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

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

Параметр Описание
jobItemID ИД элемента заявки
state Статус заявок
result Информация об элементе заявки
subscriberID ИД Сотрудника
subscriberName Имя Сотрудника

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

GET /v6/api/jobManagement/jobs/{jobID}/jobItems HTTP/1.1
Host: host
Authorization: Bearer token

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

GET /v6/api/jobManagement/jobs/1/jobItems HTTP/1.1
Host: api.mpoisk.ru
Authorization: Bearer token

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

[
    {
        "jobItemID": integer,
        "state": integer,
        "result": "string",
        "subscriberID": integer,
        "subscriberName": "string"
    }
]

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

[
    {
        "jobItemID": 1,
        "state": 2,
        "result": "string",
        "subscriberID": 0,
        "subscriberName": "Иванов Иван"
    }
]