# Catalog measures

Bitrix24 reference data for catalog products. Method family: `catalog.measure.*`. Scope: `catalog`.

## Operations

- [Create](./catalog-measures/create.md): `POST /v1/catalog-measures`
- [List](./catalog-measures/list.md): `GET /v1/catalog-measures`
- [Get](./catalog-measures/get.md): `GET /v1/catalog-measures/:id`
- [Update](./catalog-measures/update.md): `PATCH /v1/catalog-measures/:id`
- [Delete](./catalog-measures/delete.md): `DELETE /v1/catalog-measures/:id`
- [Search](./catalog-measures/search.md): `POST /v1/catalog-measures/search`
- [Fields](./catalog-measures/fields.md): `GET /v1/catalog-measures/fields`

## What to know

Creation requires `code` (unique OKEI code) and `measureTitle`.

Some existing measures return `measureTitle: null` although creation requires the field. The `code` value must be unique; a duplicate returns 422. Only one measure can have `isDefault: "Y"`; a conflict also returns 422. PATCH accepts a single changed field.

Pass the record identifier in a product’s `measure` field. See [catalog products](/docs/entities/catalog-products).

Bitrix24 lists pages of 50 records; `limit > 50` enables V1 auto pagination. Batch writes cannot carry JSON `null` faithfully; use a single-record request when a nullable field must be changed.

Both `POST /v1/batch` and `POST /v1/catalog-measures/batch` are available.
