Bitrix24 API: "The field COMMUNICATIONS is not defined or invalid." при создании дела через crm.activity.add
Я создаю Telegram-бота, который интегрируется с Bitrix24 через REST API. Бот сначала создаёт карточку лида (crm.lead.add), затем после успешного завершения диалога — обновляет её (crm.lead.update) и пытается создать "дело" (activity) через crm.activity.add.
Лид карточка создаётся при первом сообщений в мессенджере, однако после договоренности о встрече, лид не обновляется и не создается дело. А терминал выдает это:
[BITRIX] Обновление лида #47: 200 {"result":true,"time":{"start":1749013223.341891,"finish":1749013223.567188,"duration":0.2252969741821289,"processing":0.18941307067871094,"date_start":"2025-06-04T08:00:23+03:00","date_finish":"2025-06-04T08:00:23+03:00","operating_reset_at":1749013823,"operating":0.1893939971923828}}
[BITRIX] ➕ Создание дела: 200 {'result': 9, 'time': {'start': 1749013224.38723, 'finish': 1749013224.638811, 'duration': 0.25158119201660156, 'processing': 0.22630691528320312, 'date_start': '2025-06-04T08:00:24+03:00', 'date_finish': '2025-06-04T08:00:24+03:00', 'operating_reset_at': 1749013824, 'operating': 0.2262880802154541}}
Вот мой код запроса на создание дела:
activity_payload = {
"fields": {
"TYPE_ID": 2, # Встреча
"SUBJECT": "Назначена встреча с клиентом",
"START_TIME": f"{parsed.get('meeting_date', '')}T{parsed.get('meeting_time', '')}:00",
"END_TIME": f"{parsed.get('meeting_date', '')}T{parsed.get('meeting_time', '')}:00",
"DESCRIPTION": comments,
"RESPONSIBLE_ID": 1, # ID сотрудника
"OWNER_ID": lead_id,
"OWNER_TYPE_ID": 1, # 1 = Lead
"COMMUNICATIONS": [
{
"VALUE": parsed.get("phone", ""),
"TYPE": "PHONE"
}
]
}
}