← К заметкам

Заметки

Как через REST запускать метод с несколькими параметрами в batch

В batch каждая команда — строка с методом и query string. Амперсанд внутри значения не должен стать разделителем следующего параметра, поэтому параметры лучше кодировать программно.

const params = new URLSearchParams();
params.append('filter[STAGE_ID]', 'NEW');
params.append('select[]', 'ID');
params.append('select[]', 'TITLE');

BX24.callMethod('batch', {
    cmd: { deals: 'crm.deal.list?' + params.toString() }
}, function (result) {
    if (result.error()) {
        console.error(result.error());
        return;
    }
    console.log(result.data());
});

Имена filter[STAGE_ID] и select[] описывают вложенные параметры. Если отправляете сам batch JSON-запросом, не нужно дополнительно вручную экранировать каждый & в уже собранной команде.

Успешный ответ batch не гарантирует успех каждой команды: проверьте result_error внутри его результата. Зависимости между командами задаются отдельно — через подстановку результата.