# Requisite presets

Presets for requisite field sets: "Organization", "Individual entrepreneur", "Individual", "Foreign legal entity". A preset defines which fields are available on a requisite and serves as the source of `presetId` for creating a requisite via `POST /v1/requisites`.

Bitrix24 API: `crm.requisite.preset.*`
Scope: `crm`

## Operations

- [Create preset](./requisite-presets/create.md) — `POST /v1/requisite-presets`
- [List presets](./requisite-presets/list.md) — `GET /v1/requisite-presets`
- [Get preset](./requisite-presets/get.md) — `GET /v1/requisite-presets/:id`
- [Update preset](./requisite-presets/update.md) — `PATCH /v1/requisite-presets/:id`
- [Delete preset](./requisite-presets/delete.md) — `DELETE /v1/requisite-presets/:id`
- [Search presets](./requisite-presets/search.md) — `POST /v1/requisite-presets/search`
- [Preset fields](./requisite-presets/fields.md) — `GET /v1/requisite-presets/fields`
- [List preset fields](./requisite-presets/preset-fields/list.md) — `GET /v1/requisite-presets/:presetId/fields`
- [Get preset field](./requisite-presets/preset-fields/get.md) — `GET /v1/requisite-presets/:presetId/fields/:id`
- [Add field to preset](./requisite-presets/preset-fields/create.md) — `POST /v1/requisite-presets/:presetId/fields`
- [Update preset field](./requisite-presets/preset-fields/update.md) — `PATCH /v1/requisite-presets/:presetId/fields/:id`
- [Delete preset field](./requisite-presets/preset-fields/delete.md) — `DELETE /v1/requisite-presets/:presetId/fields/:id`
- [Fields available to add](./requisite-presets/preset-fields/available.md) — `GET /v1/requisite-presets/:presetId/fields/available`
- [Preset field schema](./requisite-presets/preset-fields/schema.md) — `GET /v1/requisite-presets/:presetId/fields/schema`

## Key fields

| Field | Description |
|------|---------|
| `name` | Preset name ("Organization", "Individual entrepreneur", "Individual") |
| `entityTypeId` | Entity type of the set — always `8`, a requisite |
| `countryId` | Country of the field set; `1` — Russia |
| `active` | Whether the preset is active |
| `sort` | Sort order in the list |

Full field list — [`GET /v1/requisite-presets/fields`](./requisite-presets/fields.md).

## What to know before working

1. **A preset is a field-set template.** The "Organization" preset has one set (INN, KPP, OGRN, director), while the "Individual" preset has another (full name, passport). A preset itself does not store values — it defines the structure.
2. **`presetId` is required to create a requisite.** On `POST /v1/requisites` the `presetId` field is required and immutable after creation. The list of available presets is returned by `GET /v1/requisite-presets`.
3. **A preset's field composition is configured separately.** The "preset fields" operations under the `/v1/requisite-presets/:presetId/fields` path add and remove a preset's fields. The `available` endpoint shows which fields can still be added, and `schema` shows the field-row structure.
4. **The response format is uniform.** Both the preset itself (`name`, `entityTypeId`) and its field rows (`id`, `fieldName`, `fieldTitle`, `inShortList`, `sort`) are returned in camelCase. The `inShortList` flag is returned as `true`/`false`. The values of `fieldName` are either uppercase Bitrix24 system requisite field names (`RQ_INN`, `RQ_COMPANY_NAME`) or custom fields (`UF_CRM_*`).

## Related entities

| Entity | Endpoint | Purpose |
|----------|----------|-----------|
| Requisites | `POST /v1/requisites` | Use the preset's `presetId` on creation — the preset defines the requisite's set of available fields. |
| Bank details | `GET /v1/bank-details?entityTypeId=8&entityId=:requisiteId` | The requisite's bank accounts: settlement account, BIK, correspondent account, SWIFT, IBAN. |
| Addresses | `GET /v1/addresses?entityTypeId=8&entityId=:requisiteId` | The requisite's addresses: legal, actual, postal, delivery. |
| Requisite links | `POST /v1/requisite-links` | Link a requisite (and optionally a bank) to an invoice or quote. |

## Typical scenario

1. Get the list of presets: [`GET /v1/requisite-presets`](./requisite-presets/list.md) — pick a suitable `id`.
2. Create a requisite with that preset: [`POST /v1/requisites`](./requisites/create.md) with `presetId`.
3. If needed, configure the preset's field composition: [`POST /v1/requisite-presets/:presetId/fields`](./requisite-presets/preset-fields/create.md) — add one of the [available fields](./requisite-presets/preset-fields/available.md).

## Limits

| Limit | Value |
|-------|----------|
| Maximum records per request | 5000 (`limit ≤ 5000`) |
| Auto-pagination | enabled when `limit > 50` |
| Preset field list | `limit`/`offset` applied on the Vibecode side |
| Batch requests | up to 50 operations in [`POST /v1/batch`](/docs/batch) |
| Rate limit | shared across the Vibecode API — see [Limits and optimization](/docs/optimization) |

## See also

- [Entity API](/docs/entity-api)
- [Filtering syntax](/docs/filtering)
- [Batch](/docs/batch)
- [Entity reference](/docs/entities-index)
