crm.type.update
Обновить пользовательский тип
Описание
Метод обновляет существующий смарт-процесс по его идентификатору id.
Параметры
id
integer
обязательный
Идентификатор смарт-процесса. Можно получить с помощью методов: crm.type.list, crm.type.add
fields
object
необязательный
Значения полей (подробное описание приведено ниже) для обновления смарт-процесса
Параметр fields
title
string
необязательный
Название смарт-процесса
relations
object
необязательный
Объект, содержащий в себе связи к другим сущностям CRM. Структура описана объектом type.relations
isUseInUserfieldEnabled
boolean
необязательный
Включено ли использование смарт-процесса в пользовательском поле
linkedUserFields
object
необязательный
Набор пользовательских полей в которых должен отображаться данный смарт-процесс. Структура описана объектом type.linkedUserFields
isAutomationEnabled
boolean
необязательный
Включены ли роботы и триггеры
isBeginCloseDatesEnabled
boolean
необязательный
Включены ли поля Дата начала и Дата завершения
isBizProcEnabled
boolean
необязательный
Включено ли использование дизайнера бизнес процессов
isCategoriesEnabled
boolean
необязательный
Включены ли свои воронки и туннели продаж
isClientEnabled
boolean
необязательный
Включено ли поле Клиент. При включенной опции у смарт-процесса появляется предустановленная привязка к Контактам и Компаниям
isDocumentsEnabled
boolean
необязательный
Включена ли печать документов
isLinkWithProductsEnabled
boolean
необязательный
Включена ли привязка товаров каталога
isMycompanyEnabled
boolean
необязательный
Включено ли поле Реквизиты вашей компании
isObserversEnabled
boolean
необязательный
Включено ли поле Наблюдатели
isRecyclebinEnabled
boolean
необязательный
Включено ли использование корзины
isSetOpenPermissions
boolean
необязательный
Делать ли новые воронки доступными для всех
isSourceEnabled
boolean
необязательный
Включены ли поля Источник и Дополнительно об источнике
isStagesEnabled
boolean
необязательный
Включено ли использование своих стадий и канбана
isExternal
boolean
необязательный
Является ли смарт-процесс вынесенным из CRM (привязанным к цифровому рабочему месту)
Параметр устарел. Для работы с цифровыми рабочими местами используйте методы crm.automatedsolution.*
customSectionId
integer
необязательный
Идентификатор цифрового рабочего места
Параметр устарел. Для работы с цифровыми рабочими местами используйте методы crm.automatedsolution.*
customSections
array
необязательный
Массив цифровых рабочих мест
Параметр устарел. Для работы с цифровыми рабочими местами используйте методы crm.automatedsolution.*
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"id":20,"fields":{"isAutomationEnabled":"N","isBeginCloseDatesEnabled":"N","isClientEnabled":"N","isObserversEnabled":"N","isSourceEnabled":"Y","isStagesEnabled":"Y","isUseInUserfieldEnabled":"Y","linkedUserFields":{"TASKS_TASK|UF_CRM_TASK":"true"}}}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/crm.type.update
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"id":20,"fields":{"isAutomationEnabled":"N","isBeginCloseDatesEnabled":"N","isClientEnabled":"N","isObserversEnabled":"N","isSourceEnabled":"Y","isStagesEnabled":"Y","isUseInUserfieldEnabled":"Y","linkedUserFields":{"TASKS_TASK|UF_CRM_TASK":"true"}},"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/crm.type.update
// This snippet is an ES module: top-level await requires type="module" or a bundler.
// $b24 is an already-initialized SDK instance (see the SDK "Get started" guide).
import { Text } from '@bitrix24/b24jssdk'
import type { B24Frame } from '@bitrix24/b24jssdk'
declare const $b24: B24Frame
type SmartProcessType = {
id: number
title: string
entityTypeId: number
}
// Shape of the payload returned in result (match the "response handling" section of the page)
type TypeUpdateResult = {
type: SmartProcessType
}
try {
const response = await $b24.actions.v2.call.make<TypeUpdateResult>({
method: 'crm.type.update',
params: {
id: 20,
fields: {
isAutomationEnabled: 'N',
isBeginCloseDatesEnabled: 'N',
isClientEnabled: 'N',
isObserversEnabled: 'N',
isSourceEnabled: 'Y',
isStagesEnabled: 'Y',
isUseInUserfieldEnabled: 'Y',
linkedUserFields: {
'TASKS_TASK|UF_CRM_TASK': 'true',
},
},
},
requestId: Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
} else {
const result = response.getData()!.result
console.info(`Updated smart process #${result.type.id} (${result.type.title})`)
}
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
<!-- Load the SDK (UMD build); it is exposed as the global B24Js -->
<script src="https://unpkg.com/@bitrix24/b24jssdk@1/dist/umd/index.min.js"></script>
<script>
async function updateSmartProcessSettings() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'crm.type.update',
params: {
id: 20,
fields: {
isAutomationEnabled: 'N',
isBeginCloseDatesEnabled: 'N',
isClientEnabled: 'N',
isObserversEnabled: 'N',
isSourceEnabled: 'Y',
isStagesEnabled: 'Y',
isUseInUserfieldEnabled: 'Y',
linkedUserFields: {
'TASKS_TASK|UF_CRM_TASK': 'true',
},
},
},
requestId: B24Js.Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
return
}
const result = response.getData().result
console.info(`Updated smart process #${result.type.id} (${result.type.title})`)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', updateSmartProcessSettings)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.crm.type.update(
bitrix_id=20,
fields={
"relations": {
"parent": [],
"child": [
{
"entityTypeId": 1,
"isChildrenListEnabled": "true",
},
{
"entityTypeId": 2,
"isChildrenListEnabled": "false",
},
],
},
},
).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}")
require_once('crest.php');
$result = CRest::call(
'crm.type.update',
[
'id' => 20,
'fields' => [
'isAutomationEnabled' => "N",
'isBeginCloseDatesEnabled' => "N",
'isClientEnabled' => "N",
'isObserversEnabled' => "N",
'isSourceEnabled' => "Y",
'isStagesEnabled' => "Y",
'isUseInUserfieldEnabled' => "Y",
'linkedUserFields' => [
"TASKS_TASK|UF_CRM_TASK" => "true",
],
]
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "crm.type.update", b24.Params{
"id": 20,
"fields": b24.Params{
"isAutomationEnabled": "N",
"isBeginCloseDatesEnabled": "N",
"isClientEnabled": "N",
"isObserversEnabled": "N",
"isSourceEnabled": "Y",
"isStagesEnabled": "Y",
"isUseInUserfieldEnabled": "Y",
"linkedUserFields": b24.Params{
"TASKS_TASK|UF_CRM_TASK": "true",
},
},
})
if err != nil {
return fmt.Errorf("crm.type.update: %w", err)
}
// Ответ приходит как json.RawMessage — разберите его
// в структуру под форму ответа, показанную ниже на этой странице.
fmt.Printf("%s\n", res.Result)
Ответ
HTTP-статус: 200
{
"result": {
"type": {
"id": 20,
"title": "Смарт-процесс #3",
"code": "",
"createdBy": 1,
"entityTypeId": 1222,
"customSectionId": null,
"isCategoriesEnabled": "Y",
"isStagesEnabled": "Y",
"isBeginCloseDatesEnabled": "N",
"isClientEnabled": "N",
"isUseInUserfieldEnabled": "Y",
"isLinkWithProductsEnabled": "N",
"isMycompanyEnabled": "Y",
"isDocumentsEnabled": "N",
"isSourceEnabled": "Y",
"isObserversEnabled": "N",
"isRecyclebinEnabled": "N",
"isAutomationEnabled": "N",
"isBizProcEnabled": "N",
"isSetOpenPermissions": "Y",
"isPaymentsEnabled": "N",
"isCountersEnabled": "N",
"createdTime": "2024-07-08T17:24:47+02:00",
"updatedTime": "2024-07-09T20:55:37+02:00",
"updatedBy": 1,
"relations": {
"parent": [],
"child": [
{
"entityTypeId": 1,
"isChildrenListEnabled": "Y",
"isPredefined": "N"
},
{
"entityTypeId": 2,
"isChildrenListEnabled": "Y",
"isPredefined": "N"
}
]
},
"linkedUserFields": {
"CALENDAR_EVENT|UF_CRM_CAL_EVENT": "N",
"TASKS_TASK|UF_CRM_TASK": "Y",
"TASKS_TASK_TEMPLATE|UF_CRM_TASK": "N"
},
"customSections": []
}
},
"time": {
"start": 1720551426.116454,
"finish": 1720551426.816224,
"duration": 0.6997702121734619,
"processing": 0.20451998710632324,
"date_start": "2024-07-09T20:57:06+02:00",
"date_finish": "2024-07-09T20:57:06+02:00",
"operating": 0.2044668197631836
}
}
Возвращаемые данные
result
object
Корневой элемент ответа. Содержит единственный ключ type
type
type
Информация об обновленном смарт-процессе
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": 0,
"error_description": "Смарт-процесс не найден"
}
| Код | Описание | Значение |
|---|---|---|
400 |
ACCESS_DENIED |
Доступ запрещен |
403 |
allowed_only_intranet_user |
Действие разрешено только интранет-пользователям |
400 |
UPDATE_DYNAMIC_TYPE_RESTRICTED |
Вы не можете изменить настройки смарт-процесса из-за ограничений вашего тарифа |
400 |
0 |
Выберите рабочее место, в котором будет находиться смарт-процесс |

