Связи реквизитов
Указывает, какой реквизит компании (и при необходимости — какой банковский счёт) использовать в счёте, предложении или сделке. Нужно компаниям, у которых несколько реквизитов. У связи нет отдельного числового id: она задаётся парой значений — тип владельца entityTypeId и его ID entityId. Для сделки entityTypeId равен 2, для счёта — 31.
Битрикс24 API: crm.requisite.link.*
Скоуп: crm
Зарегистрировать связь реквизита
POST /v1/requisite-links
Создаёт или обновляет привязку реквизита к сущности-владельцу. Если связь для указанной пары (entityTypeId, entityId) уже существует, она перезаписывается.
Поля запроса (body)
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
entityTypeId |
number | да | Тип владельца связи: 2 — сделка, 31 — счёт. Список: GET /v1/requisite-links/fields |
entityId |
number | да | ID сущности-владельца. Источник: GET /v1/deals или GET /v1/invoices |
requisiteId |
number | да | ID реквизита клиента. Источник: GET /v1/requisites. Передайте 0, чтобы не привязывать |
bankDetailId |
number | да | ID банковского реквизита клиента. Источник: GET /v1/bank-details. Передайте 0, чтобы не привязывать |
mcRequisiteId |
number | да | ID реквизита вашей компании. Источник: GET /v1/requisites. Передайте 0, чтобы не привязывать |
mcBankDetailId |
number | да | ID банковского реквизита вашей компании. Источник: GET /v1/bank-details. Передайте 0, чтобы не привязывать |
Примеры
curl — личный ключ
curl -X POST "https://vibecode.bitrix24.tech/v1/requisite-links" \
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"entityTypeId": 2,
"entityId": 3773,
"requisiteId": 45,
"bankDetailId": 12,
"mcRequisiteId": 3,
"mcBankDetailId": 7
}'
curl — OAuth-приложение
curl -X POST "https://vibecode.bitrix24.tech/v1/requisite-links" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"entityTypeId": 2,
"entityId": 3773,
"requisiteId": 45,
"bankDetailId": 12,
"mcRequisiteId": 3,
"mcBankDetailId": 7
}'
JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/requisite-links', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
entityTypeId: 2,
entityId: 3773,
requisiteId: 45,
bankDetailId: 12,
mcRequisiteId: 3,
mcBankDetailId: 7,
}),
})
const { success, data } = await res.json()
console.log('Зарегистрирована связь для entityId:', data.entityId)
JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/requisite-links', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
'Content-Type': 'application/json',
},
body: JSON.stringify({
entityTypeId: 2,
entityId: 3773,
requisiteId: 45,
bankDetailId: 12,
mcRequisiteId: 3,
mcBankDetailId: 7,
}),
})
const { success, data } = await res.json()
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | Всегда true при успехе |
data |
object | Результат регистрации |
data.entityTypeId |
number | Переданный тип сущности |
data.entityId |
number | Переданный ID сущности |
data.registered |
boolean | Всегда true при успехе |
Пример ответа
HTTP-статус: 201 Created
{
"success": true,
"data": {
"entityTypeId": 2,
"entityId": 3773,
"registered": true
}
}
Пример ответа при ошибке
400 — отсутствуют обязательные поля:
{
"success": false,
"error": {
"code": "MISSING_FIELDS",
"message": "POST /v1/requisite-links requires entityTypeId, entityId, requisiteId, bankDetailId, mcRequisiteId and mcBankDetailId in the body (use 0 for ids you don't want to link). Missing: requisiteId, bankDetailId, mcRequisiteId, mcBankDetailId. Raw UPPER_SNAKE names from /v1/requisite-links/fields (ENTITY_TYPE_ID, …) are accepted too."
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 400 | MISSING_FIELDS |
Не переданы один или несколько из шести обязательных полей |
| 422 | BITRIX_ERROR |
Битрикс24 отклонил операцию — например, реквизит не принадлежит клиенту сделки |
| 403 | SCOPE_DENIED |
API-ключ не имеет скоупа crm. Требуемое сообщение: This endpoint requires 'crm' scope |
| 401 | TOKEN_MISSING |
API-ключ не имеет настроенных токенов |
Полный список общих ошибок API — Ошибки.
Известные особенности
Передавать 0 для неиспользуемых связей. Все шесть полей обязательны в теле запроса. Если реквизит или банковский реквизит привязывать не нужно, передайте 0.
Реквизит должен принадлежать клиенту сделки. Чтобы зарегистрировать связь для сделки, у неё должен быть выбран контакт или компания — владелец реквизита. Без выбранного клиента привязка возвращает 422 BITRIX_ERROR.