crm.automatedsolution.update
Изменить цифровое рабочее место
Описание
Метод обновляет существующие настройки цифрового рабочего места с идентификатором id. Если какое-то из полей не было передано, его значение останется прежним.
Параметры
id
integer
обязательный
Идентификатор цифрового рабочего места. Может быть получен из ответа метода crm.automatedsolution.add (result.automatedSolution.id), который был вызван при добавлении цифрового рабочего места, или crm.automatedsolution.list. Так же можно воспользоваться разделом «Цифровые рабочие места» на портале Битрикс24 — колонка ID в списке цифровых рабочих мест
fields
object
обязательный
Значения полей (подробное описание приведено ниже) для создания цифрового рабочего места в виде структуры:
"fields": {
"title": "значение",
"typeIds": []
}Параметр fields
title
string
необязательный
Название цифрового рабочего места.
Будьте внимательны с изменением поля title. Так как ссылка на цифровое рабочее место строится на основании названия, при его изменении изменится и ссылка на цифровое рабочее место
typeIds
crm_dynamic_type.id[]
необязательный
Массив идентификаторов смарт-процессов, которые нужно привязать к этому рабочему месту.
Чтобы изменить список привязанных смарт-процессов, нужно передать поле typeIds с желаемым набором смарт-процессов.
Настройки переписываются полностью. При изменении списка привязанных смарт-процессов, надо передавать набор typeIds целиком, либо опустить ключ typeIds вообще
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"id":238,"fields":{"title":"HR & Customer Success"}}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/crm.automatedsolution.update
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"id":238,"fields":{"title":"HR & Customer Success"},"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/crm.automatedsolution.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
// Shape of the payload returned in result (match the "response handling" section of the page)
type AutomatedSolutionUpdateResult = {
automatedSolution: {
id: number
title: string
typeIds: number[]
}
}
try {
const response = await $b24.actions.v2.call.make<AutomatedSolutionUpdateResult>({
method: 'crm.automatedsolution.update',
params: {
id: 238,
fields: {
title: 'HR & Customer Success',
},
},
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(result.automatedSolution.id, result.automatedSolution.title, result.automatedSolution.typeIds)
}
} 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 updateAutomatedSolution() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'crm.automatedsolution.update',
params: {
id: 238,
fields: {
title: 'HR & Customer Success',
},
},
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(result.automatedSolution.id, result.automatedSolution.title, result.automatedSolution.typeIds)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', updateAutomatedSolution)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.crm.automatedsolution.update(
bitrix_id=238,
fields={
"title": "HR and Customer Success",
},
).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.automatedsolution.update',
[
'id' => 238,
'fields' =>
[
'title' => 'HR & Customer Success'
]
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "crm.automatedsolution.update", b24.Params{
"id": 238,
"fields": b24.Params{
"title": "HR & Customer Success",
},
})
if err != nil {
return fmt.Errorf("crm.automatedsolution.update: %w", err)
}
// Метод заворачивает ответ в объект с ключом "automatedSolution".
raw, ok := b24.Unwrap(res.Result, "automatedSolution")
if !ok {
return fmt.Errorf("в ответе нет ключа automatedSolution")
}
var item struct {
ID b24.ID `json:"id"`
Title string `json:"title"`
}
if err := json.Unmarshal(raw, &item); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println(item.ID, item.Title)
Ответ
HTTP-статус: 200
{
"result": {
"automatedSolution": {
"id": 1,
"title": "HR",
"typeIds": [
1,
2,
3
]
}
},
"time": {
"start": 1715849396.642359,
"finish": 1715849396.954623,
"duration": 0.31226396560668945,
"processing": 0.0068209171295166016,
"date_start": "2024-05-16T11:49:56+03:00",
"date_finish": "2024-05-16T11:49:56+03:00",
"operating_reset_at": 1715849996,
"operating": 0
}
}
Возвращаемые данные
result
object
Корневой элемент ответа
automatedSolution
object
Объект с информацией об обновленном цифровом рабочем месте
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error":"BX_EMPTY_REQUIRED",
"error_description":"Не заполнено обязательное поле"
}
| Код | Описание | Значение |
|---|---|---|
ACCESS_DENIED |
Недостаточно прав | |
BX_EMPTY_REQUIRED |
Не заполнено обязательное поле |

