Заметки
Как привязать к задаче несколько сделок через REST
Строка D_101,102,103 не означает три сделки. В UF_CRM_TASK каждая связь передаётся отдельной строкой, и префикс нужен у каждой.
Тело запроса к tasks.task.update через обычный REST-путь /rest/:
{
"taskId": 25,
"fields": {
"UF_CRM_TASK": ["D_101", "D_102", "D_103"]
}
} Здесь 25 — ID задачи, а 101, 102 и 103 — ID сделок. В URL-кодировке массив записывается как fields[UF_CRM_TASK][0]=D_101, затем следующий индекс и следующая строка. Дополнительная вложенность с ENTITY_ID и ITEM_ID этому полю не нужна.
Если задача уже связана с CRM, сначала получите её через tasks.task.get, явно включив UF_CRM_TASK в select. В ответе обычного API поле называется ufCrmTask. Сформируйте полный желаемый набор связей, включая те, которые должны остаться.
У контакта префикс C_, у компании — CO_, у лида — L_. Тип связи задаётся самой строкой, а не отдельным полем запроса.
Привязка помогает находить задачи сделки, но сама по себе не создаёт новую задачу. Обратный сценарий разобран в заметке о сделках без задач.
Документация: tasks.task.update; Поля задачи.