Массовое создание сообщений
Запрос
| Тип | Метод |
|---|---|
POST |
/messages/mass_create |
Описание: метод создаёт несколько сообщений из переданного списка.
Каждый объект обрабатывается отдельно. Перед созданием выполняется валидация данных. Если при обработке отдельного объекта возникает ошибка, информация о ней возвращается в поле error соответствующего элемента массива results.
Если при создании объекта возникает ошибка уникального ограничения, выполняется обновление существующего объекта по полям уникального ограничения, которые вызвали ошибку.
Пример запроса
POST
http://127.0.0.1/cruddy/v2/messages/mass_create
Тело запроса:
| Параметр | Тип данных | Обязательность | Описание |
|---|---|---|---|
| items | Array<object> |
Required | Список сообщений для создания |
Каждый элемент массива items соответствует структуре MessageCreate, используемой при создании сообщения.
Пример тела запроса
{
"items": [
{
"<параметр>": "<значение>"
},
{
"<параметр>": "<значение>"
}
]
}
Примечание: Полный перечень параметров объекта
itemsсм. в разделе Создание сообщения.
Успешный ответ
Статус код: 200 – запрос успешно обработан.
Формат: JSON.
Параметры ответа:
| Параметр | Тип данных | Описание |
|---|---|---|
| results | Array<object> |
Список результатов обработки сообщений |
| results[].result | Message или null |
Созданное или обновлённое сообщение |
| results[].error | string или null |
Текст ошибки обработки сообщения |
Для каждого элемента массива items возвращается отдельный результат обработки:
- при успешном создании или обновлении поле
resultсодержит созданное или обновлённое сообщение; - при ошибке поле
errorсодержит описание ошибки обработки объекта.
Пример ответа
{
"results": [
{
"result": {
"<параметр>": "<значение>"
},
"error": null
},
{
"result": null,
"error": "<текст ошибки>"
}
]
}
Другие возможные ответы
| Код | Ответ | Описание |
|---|---|---|
400 |
Bad Request |
Ошибка в теле запроса или при его обработке |
401 |
can't get user info: |
Невозможно аутентифицировать пользователя |
500 |
Internal Server Error |
Ошибка сервера |
Возможные ошибки:
400—"Bad Request"— неверный тип параметра запроса либо отсутствует обязательный параметр;400—"read body: ..."— ошибка чтения тела запроса;400—"empty items"— список объектов не передан или пуст;400—"parse request: ..."— ошибка парсинга запроса;400—"parse request to map: ..."— ошибка парсинга запроса в карту;401—"can't get user info:"— невозможно аутентифицировать пользователя;500—"Internal Server Error"— ошибка сервера.