booking.v1.waitlist.externalData.set
Установить связи для записи в лист ожидания
Описание
Метод booking.v1.waitlist.externalData.set устанавливает связи для указанной записи в листе ожидания.
Параметры
waitListId
integer
обязательный
Идентификатор записи в лист ожидания.
Можно получить методами booking.v1.waitlist.add и booking.v1.waitlist.list
externalData
array
обязательный
Массив объектов, содержащий объекты для привязки (подробное описание)
Параметр externalData
moduleId
string
обязательный
Идентификатор модуля, например crm
entityTypeId
string
обязательный
ID типа объекта, например DEAL
value
string
обязательный
ID элемента, например 1
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"waitListId":14,"externalData":[{"moduleId":"crm","entityTypeId":"DEAL","value":"1"}],"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/booking.v1.waitlist.externalData.set
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"waitListId":14,"externalData":[{"moduleId":"crm","entityTypeId":"DEAL","value":"1"}]}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/booking.v1.waitlist.externalData.set
// 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
try {
const response = await $b24.actions.v2.call.make<boolean>({
method: 'booking.v1.waitlist.externalData.set',
params: {
waitListId: 14,
externalData: [
{
moduleId: 'crm',
entityTypeId: 'DEAL',
value: '1',
},
],
},
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('External data set:', result)
}
} 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 setExternalData() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'booking.v1.waitlist.externalData.set',
params: {
waitListId: 14,
externalData: [
{
moduleId: 'crm',
entityTypeId: 'DEAL',
value: '1',
},
],
},
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('External data set:', result)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', setExternalData)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.booking.v1.waitlist.external_data.set(
wait_list_id=14,
external_data=[
{
"moduleId": "crm",
"entityTypeId": "DEAL",
"value": "1",
},
],
).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 {
$response = $b24Service
->core
->call(
'booking.v1.waitlist.externalData.set',
[
'waitListId' => 14,
'externalData' => [
[
'moduleId' => 'crm',
'entityTypeId' => 'DEAL',
'value' => '1',
],
],
]
);
$result = $response
->getResponseData()
->getResult();
if ($result->error()) {
error_log($result->error());
} else {
echo 'Success: ' . print_r($result->data(), true);
}
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error setting external data: ' . $e->getMessage();
}
BX24.callMethod(
"booking.v1.waitlist.externalData.set",
{
waitListId: 14,
externalData: [
{
moduleId: "crm",
entityTypeId: "DEAL",
value: "1"
}
]
},
result => {
if (result.error())
console.error(result.error());
else
console.dir(result.data());
}
);
require_once('crest.php');
$result = CRest::call(
'booking.v1.waitlist.externalData.set',
[
'waitListId' => 14,
'externalData' => [
[
'moduleId' => 'crm',
'entityTypeId' => 'DEAL',
'value' => '1'
]
]
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "booking.v1.waitlist.externalData.set", b24.Params{
"waitListId": 14,
"externalData": []b24.Params{
{
"moduleId": "crm",
"entityTypeId": "DEAL",
"value": "1",
},
},
})
if err != nil {
return fmt.Errorf("booking.v1.waitlist.externalData.set: %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": 1724068028.331234,
"finish": 1724068028.726591,
"duration": 0.3953571319580078,
"processing": 0.13033390045166016,
"date_start": "2025-01-21T13:47:08+02:00",
"date_finish": "2025-01-21T13:47:08+02:00",
"operating": 0
}
}
Возвращаемые данные
result
boolean
Корневой элемент ответа, содержит true в случае успеха
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": 1040,
"error_description": "Wait list not found"
}
| Код | Описание | Значение |
|---|---|---|
0 |
Required fields: |
Не передан обязательный параметр внутри externalData |
1040 |
Wait list not found |
Список ожидания с указанным id не найден |
100 |
Could not find value for parameter |
Не передан обязательный параметр |

