> **These methods are rolling out — introduced in `crm 26.1700.0`.** Cloud availability also depends on Bitrix24 enabling this capability. Until it is enabled for your Bitrix24 account, the API returns `422 METHOD_NOT_YET_AVAILABLE` with `error.release`.

# Named CRM card layouts

Keep several sets of card sections and fields, and select the current layout for an employee.

Bitrix24 API: `crm.<entity>.detailpagelayout.*`
Scope: `crm`

## Operations

- [Create a CRM card layout](/docs/entities/crm-card-layouts/add) — `POST /v1/crm/card-layouts/:entityType`
- [List CRM card layouts](/docs/entities/crm-card-layouts/list) — `GET /v1/crm/card-layouts/:entityType`
- [Get a CRM card layout](/docs/entities/crm-card-layouts/get) — `GET /v1/crm/card-layouts/:entityType/:layoutId`
- [Update a CRM card layout](/docs/entities/crm-card-layouts/update) — `PATCH /v1/crm/card-layouts/:entityType/:layoutId`
- [Delete a CRM card layout](/docs/entities/crm-card-layouts/delete) — `DELETE /v1/crm/card-layouts/:entityType/:layoutId`
- [Select the current CRM layout](/docs/entities/crm-card-layouts/setcurrent) — `PUT /v1/crm/card-layouts/:entityType/current`
- [Get the common CRM layout ID](/docs/entities/crm-card-layouts/getcommonlayoutid) — `GET /v1/crm/card-layouts/:entityType/common-id`
- [Get the personal CRM layout ID](/docs/entities/crm-card-layouts/getpersonallayoutid) — `GET /v1/crm/card-layouts/:entityType/personal-id`

## Key fields

| Field | Description |
|---|---|
| `id` | Opaque string from the layout list, including system IDs. |
| `name` | Name. May be `null` for system layouts. |
| `configuration` | Sections with names and arrays of elements. |
| `audience` | Employees and access groups. May be `null`. |

## Before you start

1. `entityType`: `company`, `contact`, `deal`, `lead`, `quote`, `smartinvoice`, `smartprocess<N>`. Get the SPA number from the [SPA list](/docs/entities/smart-processes).
2. Every request requires a category. Source: [`GET /v1/categories`](/docs/entities/categories), `0` is accepted.
3. Creation returns a numeric ID. Convert it to a string for subsequent requests.
4. Bitrix24 checks access to the audience, target employee and system layout. Writes require `READWRITE`.
5. The current card configuration has a separate section: [CRM card layout](/docs/entities/crm-card-config).

## Typical workflow

1. [List CRM card layouts](/docs/entities/crm-card-layouts/list).
2. [Create a CRM card layout](/docs/entities/crm-card-layouts/add).
3. [Update a CRM card layout](/docs/entities/crm-card-layouts/update).
4. [Select the current CRM layout](/docs/entities/crm-card-layouts/setcurrent).
5. [Delete a CRM card layout](/docs/entities/crm-card-layouts/delete).

## Limits

The list reads one page using `limit` and `offset`. There is no total or `hasMore`. Bitrix24 checks accepted values and field limits. Empty arrays may be refused as missing fields. Updating an array replaces it in full.

## See also

- [CRM card layout](/docs/entities/crm-card-config)
- [Errors](/docs/errors)
