Для AI-агентов: markdown этой страницы — /docs-content/entities/requisite-links/update.md индекс документации — /llms.txt

Обновить связь реквизита

PATCH /v1/requisite-links/:entityTypeId/:entityId

Частично обновляет существующую привязку: меняет только переданные поля, остальные сохраняются. Пара владельца entityTypeId и entityId берётся из пути и не меняется. Полная перезапись всех четырёх привязок доступна через POST /v1/requisite-links.

Параметры

Параметр Тип Обяз. Описание
entityTypeId (path) number да Тип владельца связи. Значения — Поля связи
entityId (path) number да ID сущности-владельца

Поля запроса (body)

Передавайте только те поля, которые нужно изменить. Опущенные поля сохраняют текущее значение. Передайте 0, чтобы снять привязку.

Поле Тип Обяз. Описание
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 — личный ключ

Terminal
curl -X PATCH "https://vibecode.bitrix24.tech/v1/requisite-links/2/3773" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "requisiteId": 46
  }'

curl — OAuth-приложение

Terminal
curl -X PATCH "https://vibecode.bitrix24.tech/v1/requisite-links/2/3773" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "requisiteId": 46
  }'

JavaScript — личный ключ

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/requisite-links/2/3773', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    requisiteId: 46,
  }),
})

const { success, data } = await res.json()
console.log('Обновлена связь для entityId:', data.entityId)

JavaScript — OAuth-приложение

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/requisite-links/2/3773', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    requisiteId: 46,
  }),
})

const { success, data } = await res.json()

Поля ответа

Поле Тип Описание
success boolean Всегда true при успехе
data object Состояние связи после обновления
data.entityTypeId number Тип владельца из пути
data.entityId number ID владельца из пути
data.requisiteId number Итоговый ID реквизита клиента, 0 — не привязан
data.bankDetailId number Итоговый ID банковского реквизита клиента, 0 — не привязан
data.mcRequisiteId number Итоговый ID реквизита вашей компании, 0 — не привязан
data.mcBankDetailId number Итоговый ID банковского реквизита вашей компании, 0 — не привязан
data.updated boolean Всегда true при успехе

Пример ответа

HTTP-статус: 200 OK

JSON
{
  "success": true,
  "data": {
    "entityTypeId": 2,
    "entityId": 3773,
    "requisiteId": 46,
    "bankDetailId": 12,
    "mcRequisiteId": 3,
    "mcBankDetailId": 7,
    "updated": true
  }
}

Пример ответа при ошибке

404 — связи для указанной пары не существует:

JSON
{
  "success": false,
  "error": {
    "code": "ENTITY_NOT_FOUND",
    "message": "Not found"
  }
}

Ошибки

HTTP Код Описание
404 ENTITY_NOT_FOUND Связи для пары entityTypeId и entityId нет — создайте её через POST /v1/requisite-links
400 INVALID_ANCHOR entityTypeId или entityId в пути не положительное целое число
400 INVALID_REQUEST Тело запроса не является объектом
422 BITRIX_ERROR Привязка отклонена — например, реквизит нельзя привязать к сделке, у которой не выбран клиент
403 SCOPE_DENIED API-ключ не имеет скоупа crm
401 TOKEN_MISSING API-ключ не имеет настроенных токенов

Полный список общих ошибок API — Ошибки.

Известные особенности

Обновление не создаёт связь. На отсутствующую пару PATCH отвечает 404. Чтобы создать связь или полностью перезаписать все четыре привязки, используйте POST /v1/requisite-links.

Ключ связи не меняется. entityTypeId и entityId берутся из пути и не обновляются. Чтобы перепривязать реквизит к другому владельцу, удалите старую связь и зарегистрируйте новую.

Опущенное поле и 0 — разные вещи. Опущенное поле сохраняет текущее значение, явный 0 снимает привязку.

Смотрите также