Создание задачи через Web-hook в CRM Битрикс24
Приведу пример url запроса, который создает новую задачу в облачной системе Bitrix24 (в коробочной версии этот функционал также работает, но начиная с версии Битрикс24 16.6.0).
Для начала нужно создать новый входящий вебхук. Как создавать, я описал здесь: Bitrix24 cоздание лида через API. Права для вебхука выбираем: «Задачи (task)» и «Задачи (расширенные права)»
Для общего понимания желательно ознакомится с документацией по REST API Bitrix24: Документация по REST.
После получения токена, приступаем к формированию запросов.
Чтобы получить информацию о конкретной задачи, выполните в браузере:
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/tasks.task.get.json?id=1
Где
tasks.task.get — метод REST API
json — формат возвращаемой информации (поддерживает также xml)
id=1 — Id задачи
Чтобы получить список всех задач, выполните в браузере:
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/tasks.task.list.json
Чтобы поставить новую задачу, выполните в браузере:
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/tasks.task.add.json?fields[TITLE]=test&fields[RESPONSIBLE_ID]=1
Где
fields[TITLE]=test — Название задачи
fields[RESPONSIBLE_ID]=1 — id ответственного
Также Вам может понадобится список поддерживаемых полей. Для вывода из списка, выполните в браузере:
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/tasks.task.getfields.json
С выводом удобно работать, если использовать онлайн сервис форматирования JSON кода, например jsonformatter.org
Пример запроса добавления чек листа к задаче:
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/task.checklistitem.add.json?TASKID=11&FIELDS[TITLE]=test2
Где
TASKID=11 — id задачи
FIELDS[TITLE]=test2 — название элемента чек листа
Пример запроса для создания новой задачи с чек-листом. Для этого, нужно воспользоваться методом batch (выполнение пакета запросов), так как нам нужно последовательно выполнить как минимум 2 запроса: 1 — создать задачу, 2 — добавить один элемент чек-листа.
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/batch.json?halt=0&cmd[task_create]=tasks.task.add%3Ffields%255BTITLE%255D%3Dtestbatch%26fields%255BRESPONSIBLE_ID]=1&cmd[chek_list_create]=task.checklistitem.add?TASKID=%2524result%255Btask_create%255D%255Btask%255D%255Bid%255D%26FIELDS%255BTITLE%255D=test2
Обратите внимание на url-кодировку спец-символов, это не опечатка.
Давайте подробней разберем, как формируется эта строка:
Как я уже говорил, нам нужно сначала создать задачу методом tasks.task.add, после чего добавить новый элемент чек-листа методом task.checklistitem.add. Метод batch, разрешает использовать элементы массива ответа предыдущего метода. Таким образом, формируем два url:
1
tasks.task.add?fields[TITLE]=test&fields[RESPONSIBLE_ID]=1
1
task.checklistitem.add?TASKID=$result[task_create][task][id]&FIELDS[TITLE]=test2
Как вы наверняка заметили, указан неизвестный массив $result[task_create][task][id]. В нем будет хранится ответ от метода tasks.task.add.
Переходим на сайт meyerweb.com (можно другой, главное чтобы он умел кодировать URL), и по очереди кодируем методы:
1
tasks.task.add%3Ffields%5BTITLE%5D%3Dtest%26fields%5BRESPONSIBLE_ID%5D%3D1
1
task.checklistitem.add%3FTASKID%3D%24result%5Btask_create%5D%5Btask%5D%5Bid%5D%26FIELDS%5BTITLE%5D%3Dtest2
Теперь формируем url запрос для метода batch:
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/batch.json?halt=0&cmd[task_create]={вставляем url-кодированную строку метода tasks.task.add}&cmd[chek_list_create]={вставляем url-кодированную строку метода task.checklistitem.add}
Надеюсь, кому — то эта статья помогла 🙂 .
Количество показов: 2368
Рейтинг: 3.1
Для начала нужно создать новый входящий вебхук. Как создавать, я описал здесь: Bitrix24 cоздание лида через API. Права для вебхука выбираем: «Задачи (task)» и «Задачи (расширенные права)»
Для общего понимания желательно ознакомится с документацией по REST API Bitrix24: Документация по REST.
После получения токена, приступаем к формированию запросов.
Чтобы получить информацию о конкретной задачи, выполните в браузере:
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/tasks.task.get.json?id=1
Где
tasks.task.get — метод REST API
json — формат возвращаемой информации (поддерживает также xml)
id=1 — Id задачи
Чтобы получить список всех задач, выполните в браузере:
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/tasks.task.list.json
Чтобы поставить новую задачу, выполните в браузере:
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/tasks.task.add.json?fields[TITLE]=test&fields[RESPONSIBLE_ID]=1
Где
fields[TITLE]=test — Название задачи
fields[RESPONSIBLE_ID]=1 — id ответственного
Также Вам может понадобится список поддерживаемых полей. Для вывода из списка, выполните в браузере:
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/tasks.task.getfields.json
С выводом удобно работать, если использовать онлайн сервис форматирования JSON кода, например jsonformatter.org
Пример запроса добавления чек листа к задаче:
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/task.checklistitem.add.json?TASKID=11&FIELDS[TITLE]=test2
Где
TASKID=11 — id задачи
FIELDS[TITLE]=test2 — название элемента чек листа
Пример запроса для создания новой задачи с чек-листом. Для этого, нужно воспользоваться методом batch (выполнение пакета запросов), так как нам нужно последовательно выполнить как минимум 2 запроса: 1 — создать задачу, 2 — добавить один элемент чек-листа.
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/batch.json?halt=0&cmd[task_create]=tasks.task.add%3Ffields%255BTITLE%255D%3Dtestbatch%26fields%255BRESPONSIBLE_ID]=1&cmd[chek_list_create]=task.checklistitem.add?TASKID=%2524result%255Btask_create%255D%255Btask%255D%255Bid%255D%26FIELDS%255BTITLE%255D=test2
Обратите внимание на url-кодировку спец-символов, это не опечатка.
Давайте подробней разберем, как формируется эта строка:
Как я уже говорил, нам нужно сначала создать задачу методом tasks.task.add, после чего добавить новый элемент чек-листа методом task.checklistitem.add. Метод batch, разрешает использовать элементы массива ответа предыдущего метода. Таким образом, формируем два url:
1
tasks.task.add?fields[TITLE]=test&fields[RESPONSIBLE_ID]=1
1
task.checklistitem.add?TASKID=$result[task_create][task][id]&FIELDS[TITLE]=test2
Как вы наверняка заметили, указан неизвестный массив $result[task_create][task][id]. В нем будет хранится ответ от метода tasks.task.add.
Переходим на сайт meyerweb.com (можно другой, главное чтобы он умел кодировать URL), и по очереди кодируем методы:
1
tasks.task.add%3Ffields%5BTITLE%5D%3Dtest%26fields%5BRESPONSIBLE_ID%5D%3D1
1
task.checklistitem.add%3FTASKID%3D%24result%5Btask_create%5D%5Btask%5D%5Bid%5D%26FIELDS%5BTITLE%5D%3Dtest2
Теперь формируем url запрос для метода batch:
1
https://b24-gitpro.bitrix24.ru/rest/1/yi4qds45455aaq3nyjq1r/batch.json?halt=0&cmd[task_create]={вставляем url-кодированную строку метода tasks.task.add}&cmd[chek_list_create]={вставляем url-кодированную строку метода task.checklistitem.add}
Надеюсь, кому — то эта статья помогла 🙂 .
Количество показов: 2368
Рейтинг: 3.1