@sos1mple

Почему не обновляются значения списка в битрикс через REST API?

Добрый день.
Пытаюсь обновить значение UF списка. Надо вначале удалить все существующие значения, а потом добавить новые.
Код на python. Используется библиотека fastbitrix. Код віполняется без ошибок. Но значения списков в интерфейсе не меняются.
res = bx24.call('crm.deal.userfield.get', {'id': '223'})
elems = []
for elem in res['LIST']:
   elems.append({'ID': elem['ID'], 'DEL': 'Y'})
res = bx24.call('crm.deal.userfield.get', {'id': '223', 'LIST': elems})
cur.execute("""SELECT * from docs""")
rows = cur.fetchall()
elems = []
for r in rows:
    doc = r[0]
    elems.append({'VALUE': r[0]})
print(elems)    
res = bx24.call('crm.deal.userfield.update', {'id': '223', 'LIST': elems})

res = bx24.call('crm.deal.userfield.get', {'id': '225'})
elems = []
for elem in res['LIST']:
   elems.append({'ID': elem['ID'], 'DEL': 'Y'})
res = bx24.call('crm.deal.userfield.get', {'id': '225', 'LIST': elems})
cur.execute("""SELECT * from docs""")
rows = cur.fetchall()
elems = []
for r in rows:
    doc = r[0]
    elems.append({'VALUE': r[0]})

res = bx24.call('crm.deal.userfield.update', {'id': '225', 'LIST': elems})
  • Вопрос задан
  • 77 просмотров
Решения вопроса 1
gromdron
@gromdron Куратор тега Битрикс24
Bitrix developer
Вот и ошибка.

В поле `LIST` автор пытается отправить json структуру, в то время как битрикс ожидает HTTP параметры.
Таким образом его исходный запрос:
https://domain.bitrix24.ua/rest/321/apicode/crm.deal.userfield.update.json?ID=223&LIST=[{"id": "49", "DEL": "Y"}]


Должен выглядеть следующим образом:
https://domain.bitrix24.ua/rest/321/apicode/crm.deal.userfield.update.json?id=223&LIST[0][ID]=49&LIST[0][DEL]=Y


Либо, установить заголовок отправляемой информации в javascript и отравить json:
{
	"id": 223,
	"LIST": [{"id": "49", "DEL": "Y"}]
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы