For AI agents: markdown of this page — /docs-content-en/entities/catalog-price-types/update.md documentation index — /llms.txt

Update a price type

PATCH /v1/catalog-price-types/:id

Partially updates a catalog price type, preserving the values of fields omitted from the request. The request body is flat, without a fields wrapper.

Parameters

Parameter Type Required Description
Parameterid (path) Typenumber Requiredyes DescriptionPrice type ID, a non-negative integer. List: List price types.

Request fields (body)

Send at least one editable field.

Field Type Required Description
Fieldname Typestring Requiredno DescriptionPrice type name.
Fieldsort Typenumber Requiredno DescriptionSort order in the Bitrix24 interface.
FieldxmlId Typestring | null Requiredno DescriptionExternal identifier for import and export integrations.
Fieldid Typenumber Requiredno DescriptionRO. Price type ID. List: List price types.
Fieldbase Typestring Requiredno DescriptionRO. Base price type flag, set by the system.
FieldcreatedBy Typenumber | null Requiredno DescriptionRO. ID of the user who created the record. List: List users.
FieldmodifiedBy Typenumber | null Requiredno DescriptionRO. ID of the user who last updated the record. List: List users.
FielddateCreate Typestring | null Requiredno DescriptionRO. Creation date and time in ISO 8601 format.
FieldtimestampX Typestring | null Requiredno DescriptionRO. Last update date and time in ISO 8601 format.

Fields marked RO are read-only. Do not include them in the request body.

Examples

curl — personal key

Terminal
curl -X PATCH "https://vibecode.bitrix24.com/v1/catalog-price-types/19" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name": "Wholesale 2026", "sort": 210}'

curl — OAuth application

Terminal
curl -X PATCH "https://vibecode.bitrix24.com/v1/catalog-price-types/19" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "Wholesale 2026", "sort": 210}'

JavaScript — personal key

javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/catalog-price-types/19', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({"name": "Wholesale 2026", "sort": 210}),
})

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

JavaScript — OAuth application

javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/catalog-price-types/19', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({"name": "Wholesale 2026", "sort": 210}),
})

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

Response fields

A successful response returns 200 and the complete updated price type.

Field Type Description
Fieldsuccess Typeboolean DescriptionAlways true on success.
Fielddata Typeobject DescriptionPrice type object.
Fielddata.id Typenumber DescriptionRO. Price type ID. List: List price types. Pass this value in catalogGroupId when working with catalog prices.
Fielddata.name Typestring DescriptionPrice type name.
Fielddata.base Typestring DescriptionRO. Y — the account's base price type, N — another type.
Fielddata.xmlId Typestring | null DescriptionExternal identifier for integrations.
Fielddata.sort Typenumber DescriptionSort order in the Bitrix24 interface.
Fielddata.createdBy Typenumber | null DescriptionRO. ID of the user who created the record. List: List users.
Fielddata.modifiedBy Typenumber | null DescriptionRO. ID of the user who last updated the record. List: List users.
Fielddata.dateCreate Typestring | null DescriptionRO. Creation date and time in ISO 8601 format.
Fielddata.timestampX Typestring | null DescriptionRO. Last update date and time in ISO 8601 format.

Response example

JSON
{
  "success": true,
  "data": {
    "base": "N",
    "createdBy": 1295,
    "dateCreate": "2026-10-14T17:18:58.000Z",
    "id": 19,
    "modifiedBy": 1295,
    "name": "Wholesale 2026",
    "sort": 210,
    "timestampX": "2026-10-14T17:18:59.000Z",
    "xmlId": "WHOLESALE"
  }
}

Error response example

400 — an attempt to change base, so the price type was not updated:

JSON
{
  "success": false,
  "error": {
    "code": "READONLY_FIELD",
    "message": "Field 'base' is read-only and cannot be set"
  }
}

Errors

HTTP Code Description
HTTP404 CodeENTITY_NOT_FOUND DescriptionNo price type exists with the specified id.
HTTP400 CodeINVALID_PARAMS Descriptionid is not a non-negative integer, for example abc.
HTTP400 CodeEMPTY_UPDATE_BODY DescriptionThe body is empty or is not a JSON object. Send at least one editable field.
HTTP400 CodeREADONLY_FIELD DescriptionThe body contains a field marked RO. Remove it from the request.
HTTP400 CodeINVALID_PARAMS DescriptionAn object or array was passed in a string or numeric field.
HTTP400 CodeINVALID_PARAMS DescriptionBitrix24 rejected the request parameters.
HTTP422 CodeBITRIX_ERROR DescriptionBitrix24 rejected the request. The reason is in error.message.
HTTP403 CodeBITRIX_ACCESS_DENIED DescriptionThe user does not have the Bitrix24 “Manage price types” permission.
HTTP403 CodeWRITE_BLOCKED_READONLY_KEY DescriptionThe key is in read-only mode.
HTTP403 CodeSCOPE_DENIED DescriptionThe key does not have the catalog scope.
HTTP401 CodeMISSING_API_KEY DescriptionThe X-Api-Key header was omitted.
HTTP401 CodeTOKEN_MISSING DescriptionThe key has no Bitrix24 tokens configured. For an OAuth application key, check the user session.

For the full list of common API errors, see Errors.

See also