CRM роботы 2.0 + AI (300+ роботов)

Заменить одно значение в JSON

Робот «Заменить одно значение в JSON» меняет один существующий узел в документе, сохраняя остальные значения.

Настройки робота «Заменить одно значение в JSON» в Битрикс24

Видимая часть формы настройки в Битрикс24. Скриншот показывает поля действия; он не подтверждает выполнение учебного примера.

Для кого и какую задачу решает

Администратору, который подготавливает JSON для следующего шага: меняет согласованный статус, исправляет одно имя или подставляет рассчитанное количество.

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

Параметры и подготовка

Поле Как заполнить
Исходный JSON (JSON) Обязательное поле
Путь в JSON, например ["items",0,"name"]; []: весь документ (PATH) Обязательное поле
Новое значение в JSON (VALUE) Обязательное поле

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

Как использовать

  1. Передайте исходный документ JSON и укажите путь массивом ключей и индексов. Номера элементов начинаются с 0.
  2. В поле нового значения передайте JSON нужного типа: "готово" для строки, 12 для числа, false для логического значения. Обычный текст без кавычек не подходит.
  3. Проверьте, что узел существует. Путь [] заменяет весь документ и требует особого внимания: соседние данные в этом случае не сохраняются.
  4. После успешного выполнения используйте «Изменённый JSON». Чтобы сохранить его во внешней системе или поле карточки, настройте отдельное действие.

Как заполнить JSON-поля

Исходный JSON (JSON)

{
  "items": [
    {
      "qty": 2,
      "name": "Кабель"
    }
  ]
}

В документе должен существовать заменяемый путь.

Приведён пример JSON-объекта. Для исходного документа допустимость массива [] или скалярного значения определяется выбранной операцией и схемой; этот пример не ограничивает все возможные входы объектами.

Путь в JSON, например ["items",0,"name"]; []: весь документ (PATH)

[
  "items",
  0,
  "qty"
]

Путь содержит ключи и индексы от нуля. [] заменяет весь документ.

Это массив: внешние квадратные скобки обязательны. Пустой массив [] отличается от объекта {}; возможность пустого списка определяется правилами этого поля, описанными ниже.

Новое значение в JSON (VALUE)

5

Передайте новое значение нужного JSON-типа. Для строки используйте кавычки, для пустого значения null. Отсутствующие узлы не создаются.

Учебный пример и ожидаемый результат

Исходный JSON {"items":[{"qty":2,"name":"Кабель"}]}, путь ["items",0,"qty"], новое значение 5. Ожидается {"items":[{"qty":5,"name":"Кабель"}]}. Название остаётся прежним. Путь к отсутствующему второму элементу не создаёт новую позицию и приводит к ошибке.

Пример показывает подготовленные учебные данные. Фактический результат зависит от переданных значений и доступных данных вашего процесса.

Что возвращает и как продолжить процесс

  • «Изменённый JSON» (result).

Результат представляет полный изменённый документ. Он может быть объектом, массивом или другим допустимым JSON-значением. Сохраните исходник отдельно, если следующий шаг должен показывать различия до и после изменения.

Выход «Статус выполнения» проверяйте перед передачей результата дальше. При отрицательном статусе прочитайте «Пояснение ошибки» и направьте процесс на исправление исходных данных. Успешный статус подтверждает выполнение действия; содержательные признаки результата проверяйте отдельно.

Ограничения и разбор ошибок

Путь: массив ключей и индексов от 0, например ["items",0,"name"]. Новое значение задаётся в JSON: "текст", 12, false, null, массив или объект. Путь [] заменяет весь документ. Отсутствующие узлы не создаются. Размер входного JSON: до 1 МБ, массива: до 10000 элементов, вложенность: до 64 уровней.

Не путайте JSON null с текстом "null": это разные значения. Робот не выполняет замену всех одинаковых ключей в документе и не обновляет данные на портале. Обрабатывается один явно указанный путь.