Перейти к содержанию

Массовое создание значений дополнительных полей

Запрос

Тип Метод
POST /custom_field_values/mass_create

Описание: при выполнении запроса будут созданы значения дополнительных полей из переданного списка.

Каждый объект обрабатывается отдельно. Перед созданием выполняется валидация данных. Если при обработке отдельного значения дополнительного поля возникает ошибка, информация о ней возвращается в поле error соответствующего элемента массива results.

Если при создании значения дополнительного поля возникает ошибка уникального ограничения, выполняется обновление существующего объекта по полям уникального ограничения, которые вызвали ошибку.

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

POST

http://127.0.0.1/cruddy/v2/custom_field_values/mass_create

Тело запроса:

Параметр Тип данных Обязательность Описание
items Array<object> Required Список значений дополнительных полей для создания

Каждый элемент массива items соответствует структуре тела запроса метода создания значения дополнительного поля.

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

{
  "items": [
    {
      "<параметр>": "<значение>"
    },
    {
      "<параметр>": "<значение>"
    }
  ]
}

Примечание: Полный перечень параметров объекта items см. в разделе Создание значения дополнительного поля.

Успешный ответ

Статус код: 200 – запрос успешно обработан.

Формат: JSON.

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

Параметр Тип данных Описание
results Array<object> Список результатов обработки значений дополнительных полей
results[].result CustomFieldValue или null Созданное или обновленное значение дополнительного поля. Возвращается при успешной обработке объекта
results[].error string или null Текст ошибки обработки объекта. Может содержать ошибку валидации, создания, обновления или другую ошибку обработки

Для каждого элемента массива items в массиве results возвращается результат его обработки:

  • при успешном создании или обновлении поле result содержит объект значения дополнительного поля, а error имеет значение null;
  • при ошибке поле error содержит описание ошибки, а result имеет значение null.
Пример ответа

{
  "results": [
    {
      "result": {
        "id": "7bc42fd2-057c-4117-b367-8528bec75c80"
      },
      "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" — другие ошибки сервера.

Примечание: Текст ошибки не фиксированный и может изменяться в зависимости от фактического ответа на запрос.

Пример ответа с кодом 400

{
  "error": "empty items"
}

Пример ответа с кодом 401

{
  "error": "can't get user info:"
}

Пример ответа с кодом 500

{
  "error": "Internal Server Error"
}