Обновить элемент
PATCH /v1/lists/:iblockId/elements/:elementId
Обновляет строку списка. Это полная перезапись строки: любое поле, не переданное в fields, очищается на стороне Битрикс24, поэтому отправляйте полный набор полей строки, а не только изменяемые.
Параметры
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
iblockId (path) |
string | да | ID или символьный код списка. Список: GET /v1/lists |
elementId (path) |
number | да | ID строки. Список: GET /v1/lists/:iblockId/elements |
Поля запроса (body)
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
fields |
object | да | Полный набор полей строки. Не переданные поля очищаются. Системные поля именуются в верхнем регистре, например NAME. Пользовательское свойство задаётся ключом PROPERTY_<id> из GET /v1/lists/:iblockId/fields. Множественное свойство передаётся массивом: "PROPERTY_951": ["1", "2"] |
iblockTypeId |
string | нет | Тип инфоблока. Значения:lists — обычные списки, по умолчаниюlists_socnet — списки рабочих группbitrix_processes — служебные бизнес-процессы |
Примеры
curl — личный ключ
curl -X PATCH https://vibecode.bitrix24.tech/v1/lists/23/elements/41 \
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"fields": {
"NAME": "Строка 1 (изм.)",
"PROPERTY_951": "новое значение"
}
}'
curl — OAuth-приложение
curl -X PATCH https://vibecode.bitrix24.tech/v1/lists/23/elements/41 \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fields": {
"NAME": "Строка 1 (изм.)",
"PROPERTY_951": "новое значение"
}
}'
JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/lists/23/elements/41', {
method: 'PATCH',
headers: {
'X-Api-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
fields: {
NAME: 'Строка 1 (изм.)',
PROPERTY_951: 'новое значение',
},
}),
})
const { data } = await res.json()
JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/lists/23/elements/41', {
method: 'PATCH',
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
'Content-Type': 'application/json',
},
body: JSON.stringify({
fields: {
NAME: 'Строка 1 (изм.)',
PROPERTY_951: 'новое значение',
},
}),
})
const { data } = await res.json()
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | Всегда true при успехе |
data.updated |
boolean | true при успешном обновлении |
Пример ответа
{
"success": true,
"data": {
"updated": true
}
}
Пример ответа при ошибке
400 — не передан fields:
{
"success": false,
"error": {
"code": "MISSING_REQUIRED_FIELDS",
"message": "`fields` is required. The update overwrites the element, so send the complete field set."
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 400 | INVALID_PARAMS |
elementId не является положительным целым числом |
| 400 | MISSING_REQUIRED_FIELDS |
Не передан fields |
| 400 | INVALID_IBLOCK_TYPE |
iblockTypeId не входит в набор lists, bitrix_processes, lists_socnet |
| 403 | BITRIX_ACCESS_DENIED |
Нет прав на изменение этой строки |
| 403 | WRITE_BLOCKED_READONLY_KEY |
Ключ в режиме только чтения. Переключите его на чтение и запись в разделе /keys |
| 403 | SCOPE_DENIED |
Ключу не хватает скоупа lists |
| 401 | TOKEN_MISSING |
У ключа нет настроенных токенов |
| 409 | LISTS_MODULE_NOT_ENABLED |
Модуль «Списки» не включён на портале Битрикс24 |
Полный список общих ошибок API — Ошибки.
Известные особенности
Полная перезапись строки. Обновление заменяет строку целиком: поля, отсутствующие в fields, очищаются на стороне Битрикс24. Чтобы сохранить текущие значения, сначала прочитайте строку через GET /v1/lists/:iblockId/elements/:elementId и отправьте обратно полный набор полей с внесёнными правками.