# Связи реквизитов

Указывает, какой реквизит компании и какой банковский счёт использовать в счёте, предложении или сделке. Нужно компаниям, у которых несколько реквизитов. У связи нет отдельного числового `id`: она задаётся парой значений — тип владельца `entityTypeId` и его ID `entityId`.

Битрикс24 API: `crm.requisite.link.*`
Скоуп: `crm`

## Операции

- [Зарегистрировать связь](./requisite-links/register.md) — `POST /v1/requisite-links`
- [Список связей](./requisite-links/list.md) — `GET /v1/requisite-links`
- [Получить связь](./requisite-links/get.md) — `GET /v1/requisite-links/:entityTypeId/:entityId`
- [Обновить связь](./requisite-links/update.md) — `PATCH /v1/requisite-links/:entityTypeId/:entityId`
- [Удалить связь](./requisite-links/unregister.md) — `DELETE /v1/requisite-links/:entityTypeId/:entityId`
- [Поиск связей](./requisite-links/search.md) — `POST /v1/requisite-links/search`
- [Поля связи](./requisite-links/fields.md) — `GET /v1/requisite-links/fields`

## Ключевые поля

| Поле | Тип | Описание |
|------|-----|---------|
| `entityTypeId` | number | Тип владельца связи — сделка, счёт, предложение, элемент смарт-процесса. Справочник значений — [Поля связи](./requisite-links/fields.md) |
| `entityId` | number | ID владельца |
| `requisiteId` | number | ID привязываемого реквизита клиента, `0` — не привязывать |
| `bankDetailId` | number | ID привязываемого банковского реквизита клиента, `0` — не привязывать |
| `mcRequisiteId` | number | ID реквизита вашей компании, `0` — не привязывать |
| `mcBankDetailId` | number | ID банковского реквизита вашей компании, `0` — не привязывать |

Полный список полей — [`GET /v1/requisite-links/fields`](./requisite-links/fields.md).

## Что нужно знать перед работой

1. **У связи нет отдельного числового `id`.** Связь определяется парой значений владельца — `entityTypeId` и `entityId`. Получение, обновление и удаление используют их в пути, регистрация передаёт их в теле.
2. **Регистрация требует все шесть полей.** `entityTypeId`, `entityId`, `requisiteId`, `bankDetailId`, `mcRequisiteId`, `mcBankDetailId` — передавайте `0` для тех, что не нужно привязывать.
3. **`0` означает пустую привязку, а не объект с нулевым ID.** Связь, у которой все четыре идентификатора равны `0`, — это заведённая связь без единой привязки. Она отличается от отсутствующей связи: на отсутствующую пару получение отвечает `404`.
4. **Владельцем может быть не только сделка или счёт.** Тот же набор полей работает для предложений и элементов смарт-процессов. Справочник значений `entityTypeId` — [Поля связи](./requisite-links/fields.md).
5. **Реквизит клиента должен принадлежать клиенту сделки.** Привязать `requisiteId` к сделке можно, только если у сделки выбран контакт или компания, которому этот реквизит принадлежит. Реквизиты вашей компании от клиента сделки не зависят.
6. **Связи вызываются собственными маршрутами.** Пара значений владельца вместо числового `id` не укладывается в общую форму Entity API, поэтому операции идут по путям `/v1/requisite-links/...` — по одному вызову на связь. В сводном [`POST /v1/batch`](/docs/batch) сущность `requisite-links` не участвует: такой вызов отклоняется до Битрикс24 с кодом `UNKNOWN_ENTITY` в `data.errors` по идентификатору вызова. Если в пакете есть другие рабочие вызовы, ответ остаётся `200`, а `400` приходит только когда отклонены все.

## Связанные сущности

| Сущность | Эндпоинт | Назначение |
|----------|----------|-----------|
| Реквизиты | `GET /v1/requisites` | Источник `requisiteId` для связи. |
| Банковские реквизиты | `GET /v1/bank-details` | Источник `bankDetailId` для связи. |
| Шаблоны реквизитов | `GET /v1/requisite-presets` | Шаблон набора полей реквизита. |

## Типичный сценарий

1. Получить реквизит компании-клиента: [`GET /v1/requisites?filter[entityTypeId]=4&filter[entityId]=15`](./requisites/list.md).
2. Получить его банковский реквизит: [`GET /v1/bank-details`](./bank-details/list.md).
3. Зарегистрировать связь на счёт или сделку: [`POST /v1/requisite-links`](./requisite-links/register.md) с `requisiteId` и `bankDetailId`.

## Лимиты

| Лимит | Значение |
|-------|----------|
| Максимум записей на запрос | 5000 (`limit ≤ 5000`) |
| Авто-пагинация | включается при `limit > 50` |
| Rate limit | общий для API Вайбкод — см. [Лимиты и оптимизация](/docs/optimization) |

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

- [Реквизиты компании для генерации документа](/docs/recipes/document-requisites)
- [Entity API](/docs/entity-api)
- [Синтаксис фильтрации](/docs/filtering)
- [Batch](/docs/batch)
- [Справочник сущностей](/docs/entities-index)
