bizproc.activity.update
Обновить действие
Описание
Метод bizproc.activity.update обновляет действие бизнес-процессов, добавленное приложением.
Работает только в контексте приложения.
Параметры
CODE
string
обязательный
Внутренний идентификатор действия
FIELDS
object
обязательный
Объект с полями действия бизнес-процесса
Параметр FIELDS
HANDLER
string
необязательный
URL, на который действие будет отправлять данные через сервер очередей bitrix24.
В ссылке должен быть тот же домен, на котором установлено приложение
AUTH_USER_ID
integer
необязательный
Идентификатор пользователя, токен которого будет передан приложению
USE_SUBSCRIPTION
boolean
необязательный
Должно ли действие ожидать ответа от приложения. Возможные значения:
- Y — да
- N — нет
NAME
string
необязательный
Название действия.
Может быть строкой или ассоциативным массивом локализированных строк вида:
'NAME': {
'ru': 'название действия',
'en': 'action name',
...
},DESCRIPTION
string
необязательный
Описание действия.
Может быть строкой или ассоциативным массивом локализированных строк вида:
'DESCRIPTION': {
'ru': 'описание действия',
'en': 'action description',
...
},PROPERTIES
object
необязательный
Объект с параметрами действия. Содержит объекты, каждый из которых описывает параметр действия.
Системное название параметра должно начинаться с буквы и может содержать символы a-z, A-Z, 0-9 и нижнее подчеркивание _
RETURN_PROPERTIES
object
необязательный
Объект с дополнительными результатами действия. Содержит объекты, каждый из которых описывает параметр действия.
Параметр управляет возможностью действия ожидать ответа приложения и работать с данными, которые придут в ответе.
Системное название параметра должно начинаться с буквы и может содержать символы a-z, A-Z, 0-9 и нижнее подчеркивание _
DOCUMENT_TYPE
array
необязательный
Тип документа, который будет определять типы данных для параметров PROPERTIES и RETURN_PROPERTIES. Состоит из трех элементов типа строка:
- идентификатор модуля
- идентификатор объекта
- тип документа
Возможные варианты значений:
- Модуль CRM
['crm', 'CCrmDocumentLead', 'LEAD']— лиды
['crm', 'CCrmDocumentContact', 'CONTACT']— контакты
['crm', 'CCrmDocumentCompany', 'COMPANY']— компании
['crm', 'CCrmDocumentDeal', 'DEAL']— сделки
['crm', 'Bitrix\Crm\Integration\BizProc\Document\Quote', 'QUOTE']— коммерческие предложения
['crm', 'Bitrix\Crm\Integration\BizProc\Document\SmartInvoice', 'SMART_INVOICE']— счета
['crm', 'Bitrix\Crm\Integration\BizProc\Document\Dynamic', 'DYNAMIC_XXX']— смарт-процессы, где XXX — идентификатор смарт-процесса - Модуль Списки
['lists', 'BizprocDocument', 'iblock_XXX']— процессы в ленте новостей, где XXX — идентификатор информационного блока
['lists', 'Bitrix\Lists\BizprocDocumentLists', 'iblock_XXX']— списки в группах, где XXX — идентификатор информационного блока - Модуль Диск
['disk', 'Bitrix\Disk\BizProcDocument', 'STORAGE_XXX'], где XXX — идентификатор хранилища
FILTER
object
необязательный
Объект с правилами ограничения действия по типу документа и редакции.
Может содержать ключи:
- INCLUDE — массив правил, где действие будет отображено
- EXCLUDE — массив правил, где действие будет скрыто
Каждое правило в массиве может быть строкой или массивом типа документа в полном или частичном варианте.
Чтобы ограничить действие по редакции Битрикс24 укажите:
- b24 — для облака
- box — для коробки
Примеры:
1. Исключить действие для коробочного Битрикс24
FILTER: {
EXCLUDE: [ 'box' ]
}
- Отображать действие только для модуля Списки
FILTER: {
INCLUDE: [
['lists']
]
}
- Отображать действие только для модуля Списки и сделок из CRM
FILTER: {
INCLUDE: [
['lists'],
['crm', 'CCrmDocumentDeal']
]
}USE_PLACEMENT
boolean
необязательный
Дает возможность открывать дополнительные настройки действия в слайдере приложения. Возможные значения:
- Y — да
- N — нет
PLACEMENT_HANDLER
string
необязательный
URL обработчика встройки на стороне приложения
Объект PROPERTY
Name
string
необязательный
Наименование параметра
Description
string
необязательный
Описание параметра
Type
string
необязательный
Тип параметра. Базовые значения:
- bool — да или нет
- date — дата
- datetime — дата и время
- double — число
- file — файл
- int — целое число
- select — список
- string — строка
- text — текст
- user — пользователь
Options
array
необязательный
Массив значений параметра типа список 'TYPE': select' вида:
[
'value1': 'title1',
'value2': 'title2',
'value3': 'title3',
'value4': 'title4'
]Required
boolean
необязательный
Обязательность параметра. Возможные значения:
- Y — да
- N — нет
Multiple
boolean
необязательный
Множественность параметра. Возможные значения:
- Y — да
- N — нет
Default
any
необязательный
Значение параметра по умолчанию
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"CODE":"action_test_code","FIELDS":{"AUTH_USER_ID":1,"USE_SUBSCRIPTION":"N","FILTER":{"INCLUDE":[["lists"],["crm","CCrmDocumentDeal"]]}}, "auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/bizproc.activity.update
try
{
const response = await $b24.callMethod(
'bizproc.activity.update',
{
'CODE': 'action_test_code',
'FIELDS': {
'AUTH_USER_ID': 1,
'USE_SUBSCRIPTION': 'N',
'FILTER': {
'INCLUDE': [
['lists'],
['crm', 'CCrmDocumentDeal']
]
}
},
}
);
const result = response.getData().result;
alert("Успешно: " + result);
}
catch( error )
{
alert("Error: " + error);
}
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.bizproc.activity.update(
code="action_test_code",
fields={
"AUTH_USER_ID": 1,
"USE_SUBSCRIPTION": "N",
"FILTER": {
"INCLUDE": [
[
"lists",
],
[
"crm",
"CCrmDocumentDeal",
],
],
},
},
).response
result = bitrix_response.result
print(result)
except BitrixAPIError as error:
print(
"Ошибка Bitrix API",
f"error: {error.error}",
f"error_description: {error.error_description}",
sep="\n",
)
except BitrixSDKException as error:
print(f"Ошибка Bitrix SDK: {error.message}")
except Exception as error:
print(f"Непредвиденная ошибка: {error}")
try {
$result = $serviceBuilder
->getBizProcScope()
->activity()
->update(
'activity_code',
'https://example.com/handler',
1,
['en' => 'Activity Name', 'ru' => 'Название Активности'],
['en' => 'Activity Description', 'ru' => 'Описание Активности'],
true,
['param1' => 'value1'],
false,
['returnParam1' => 'value1'],
null,
null
);
if ($result->isSuccess()) {
print($result->getCoreResponse()->getResponseData()->getResult()[0]);
} else {
print('Update failed.');
}
} catch (Throwable $e) {
print('Error: ' . $e->getMessage());
}
BX24.callMethod(
'bizproc.activity.update',
{
'CODE': 'action_test_code',
'FIELDS': {
'AUTH_USER_ID': 1,
'USE_SUBSCRIPTION': 'N',
'FILTER': {
'INCLUDE': [
['lists'],
['crm', 'CCrmDocumentDeal']
]
}
},
},
function(result)
{
if(result.error())
alert("Error: " + result.error());
else
alert("Успешно: " + result.data());
}
);
require_once('crest.php');
$result = CRest::call(
'bizproc.activity.update',
[
'CODE' => 'action_test_code',
'FIELDS' => [
'AUTH_USER_ID' => 1,
'USE_SUBSCRIPTION' => 'N',
'FILTER' => [
'INCLUDE' => [
['lists'],
['crm', 'CCrmDocumentDeal']
]
]
]
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "bizproc.activity.update", b24.Params{
"CODE": "action_test_code",
"FIELDS": b24.Params{
"AUTH_USER_ID": 1,
"USE_SUBSCRIPTION": "N",
"FILTER": b24.Params{
"INCLUDE": []any{
[]string{"lists"},
[]string{"crm", "CCrmDocumentDeal"},
},
},
},
})
if err != nil {
return fmt.Errorf("bizproc.activity.update: %w", err)
}
var ok bool
if err := json.Unmarshal(res.Result, &ok); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println("выполнено:", ok)
Ответ
HTTP-статус: 200
{
"result": true,
"time": {
"start": 1738149954.2918739,
"finish": 1738149954.4590819,
"duration": 0.16720795631408691,
"processing": 0.017282962799072266,
"date_start": "2025-01-29T14:25:54+03:00",
"date_finish": "2025-01-29T14:25:54+03:00",
"operating_reset_at": 1738150554,
"operating": 0
}
}
Возвращаемые данные
result
boolean
Возвращает true, если действие успешно обновлено
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": "ERROR_ACTIVITY_VALIDATION_FAILURE",
"error_description": "Wrong properties array!"
}
| Код | Описание | Значение |
|---|---|---|
ACCESS_DENIED |
Application context required | Необходим контекст приложения |
ACCESS_DENIED |
Access denied! | Метод выполнил не администратор |
ERROR_ACTIVITY_VALIDATION_FAILURE |
Empty activity code! | Не указан код действия |
ERROR_ACTIVITY_VALIDATION_FAILURE |
Wrong activity code! | Некорректный код действия |
ERROR_ACTIVITY_NOT_FOUND |
Activity or Robot not found! | Действие или робот не найдены |
ERROR_UNSUPPORTED_PROTOCOL |
Unsupported handler protocol | Некорректный протокол хендлера http, https |
ERROR_WRONG_HANDLER_URL |
Wrong handler URL | Невалидный урл хендлера |
ERROR_ACTIVITY_VALIDATION_FAILURE |
Wrong properties array! | Некорректно заполнены параметры PROPERTIES или RETURN_PROPERTIES |
ERROR_ACTIVITY_VALIDATION_FAILURE |
Wrong property key <ключ>! | Некорректный идентификатор свойства |
ERROR_ACTIVITY_VALIDATION_FAILURE |
Empty property NAME <ключ>! | Не указано название свойства |
ERROR_ACTIVITY_VALIDATION_FAILURE |
Wrong activity FILTER! | Некорректный фильтр |
ERROR_ACTIVITY_VALIDATION_FAILURE |
Wrong activity DOCUMENT_TYPE! | Некорректный DOCUMENT_TYPE |
ERROR_ACTIVITY_VALIDATION_FAILURE |
No fields to update | Нет полей для обновления |

