1С и ClickUp

11.06.24

Интеграция - WEB-интеграция

Обмен между 1С и системой таск-менеджмента ClickUp.

Примеры обмена между системой ClickUp и 1С.

Мне необходимо было загружать из системы ClickUp заявки на закупку в 1С, также их статусы, комментарии. Также нужен был и обратный обмен из 1С в ClickUp. Написать комментарий или поменять статус могли как в 1С, так и в ClickUp.

ClickUp - один из многих таск-менеджеров, имеющий собственное API, позволяющий для задач создавать дополнительные пользовательские поля. Здесь приведу некоторые примеры двухстороннего обмена с пояснениями.

Токен для API получается в ЛК ClickUp. ВАЖНО! Получить токен пользователя с полными правами в ClickUp.

Для начала получение списка задач, которые были изменены за последние сутки

 

Соединение  =  Новый HTTPСоединение("api.clickup.com",,"","",,,Новый ЗащищенноеСоединениеOpenSSL()
	);                                          

HTTPЗапрос = Новый HTTPЗапрос("/api/v2/list/"+ИдПроекта+"/task?date_updated_gt"+ЮниксДата(НачалоДня(ТекущаяДата() - 24*3600))+"");
HTTPЗапрос.Заголовки.Вставить("Content-type", "application/json");
HTTPЗапрос.Заголовки.Вставить("authorization", ""+Токен+"");
	
HTTPОтвет = Соединение.Получить(HTTPЗапрос); 
СтрокаЗапроса = HTTPОтвет.ПолучитьТелоКакСтроку(); 

 

Где ИдПроекта - Это ид того проекта, из которого получаем таски, можно посмотреть в самом ClickUp

Далее после загрузки заявки на оплату, необходимо было записать номер заявки 1С в заявку ClickUp в дополнительное поле, созданное пользователем. Ниже пример записи дополнительного поля

 

СтруктураДанных = Новый Структура("value", ЗаявкаОбъект.Номер);
ЗаписьJSON = Новый ЗаписьJSON;
ПараметрыJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет, " ", Истина);  
ЗаписьJSON.УстановитьСтроку(ПараметрыJSON);
ЗаписатьJSON(ЗаписьJSON, СтруктураДанных);           
ДанныеJSON = ЗаписьJSON.Закрыть(); 
///api/v2/task/{task_id}/field/{field_id}
HTTPЗапрос = Новый HTTPЗапрос("/api/v2/task/"+ClickUpId+"/field/f466c5e8-7710-403d-a001-516e8406b222");
HTTPЗапрос.Заголовки.Вставить("Content-type", "application/json");
HTTPЗапрос.Заголовки.Вставить("authorization", ""+Токен+"");
HTTPЗапрос.УстановитьТелоИзСтроки(ДанныеJSON);
HTTPОтвет = Соединение.ВызватьHTTPМетод("POST",HTTPЗапрос);   

 

Где ClickUpId - Id задачи ClickUp

f466c5e8-7710-403d-a001-516e8406b222 - Ид доп поля созданного пользователей, можно посмотреть в самом ClickUp, либо в запросе задач, в каждой задаче есть массив дополнительных полей, с их названиями, значениями и идами, см ниже

 

МассивДопПолей = ТС.Получить("custom_fields"); 
Для Каждого ДопПоле Из МассивДопПолей Цикл 
	Если ДопПоле.Получить("name") = "Purchase Order No." Тогда 
		field_id = ДопПоле.Получить("id");
		ЗначениеДопПоля = ДопПоле.Получить("value");
	КонецЕсли;
КонецЦикла;

 

где ТС - задачи из ClickUp, прочитанная в соответствие.

 

Запись стандартных  полей к задаче, например, хотим поменять описание задачи из 1С

 

ДанныеПолей = Новый Структура;
ДанныеПолей.Вставить("description", ОписаниеЗаявки);
ЗаписьJSON = Новый ЗаписьJSON;
ПараметрыJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет, " ", Истина);  
ЗаписьJSON.УстановитьСтроку(ПараметрыJSON);
ЗаписатьJSON(ЗаписьJSON, ДанныеПолей);           
ДанныеJSON = ЗаписьJSON.Закрыть();
HTTPЗапрос = Новый HTTPЗапрос("/api/v2/task/"+ClickUpId);
HTTPЗапрос.Заголовки.Вставить("Content-type", "application/json");
HTTPЗапрос.Заголовки.Вставить("authorization", ""+Токен+"");
HTTPЗапрос.УстановитьТелоИзСтроки(ДанныеJSON);
HTTPОтвет = Соединение.ВызватьHTTPМетод("PUT",HTTPЗапрос);   

 

Чтение комментариев к задаче

 

HTTPЗапрос = Новый HTTPЗапрос("/api/v2/task/"+ClickUpId+"/comment");
HTTPЗапрос.Заголовки.Вставить("Content-type", "application/json");
HTTPЗапрос.Заголовки.Вставить("Accept", "application/json"); 
HTTPЗапрос.Заголовки.Вставить("authorization", ""+Токен+"");  
HTTPОтвет = Соединение.Получить(HTTPЗапрос); 
СтрокаЗапроса = HTTPОтвет.ПолучитьТелоКакСтроку(); 
ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(СтрокаЗапроса); 
МассивДат = Новый Массив;
МассивДат.Добавить("created");
МассивДат.Добавить("updated");
ОбъектJSON = ПрочитатьJSON(ЧтениеJSON,Истина, МассивДат);
МассивКомментов = ОбъектJSON["comments"];

 

И добавление собственного комментария

 

HTTPЗапрос = Новый HTTPЗапрос("/api/v2/task/"+ClickUpId+"/comment");
HTTPЗапрос.Заголовки.Вставить("Content-type", "application/json");
HTTPЗапрос.Заголовки.Вставить("authorization", ""+Токен+"");	
СтруктураДанных = Новый Структура("comment_text", Комментарий); 
СтруктураДанных.Вставить("assignee",44157433);
СтруктураДанных.Вставить("notify_all", Истина);
ЗаписьJSON = Новый ЗаписьJSON;
ПараметрыJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет, " ", Истина);  
ЗаписьJSON.УстановитьСтроку(ПараметрыJSON);
ЗаписатьJSON(ЗаписьJSON, СтруктураДанных);           
ДанныеJSON = ЗаписьJSON.Закрыть();
HTTPЗапрос.УстановитьТелоИзСтроки(ДанныеJSON);
HTTPОтвет = Соединение.ВызватьHTTPМетод("POST",HTTPЗапрос);   

 

где в строке СтруктураДанных.Вставить("assignee",44157433) это Id автора комментария в ClickUp.

интеграция ClickUp HTTP-Запрос

См. также

WEB-интеграция Администрирование веб-серверов Платные (руб)

Веб-портал обеспечивает удобный доступ к конфигурации 1С:ITIL, 1С:ITILIUM, Управление IT-отделом 8 через интернет с любого устройства посредством браузера, увеличивая эффективность работы пользователей и снижая нагрузку на сервер. Быстрая инсталляция портала за пару часов, удобный и интуитивно понятный интерфейс и безопасность данных помогут упростить работу с порталом и ускорить выполнение бизнес-процессов компании.

128000 руб.

19.12.2023    2133    2    0    

9

Оптовая торговля Розничная торговля WEB-интеграция 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Платные (руб)

Онлайн-заказ - это решение для автоматизации процесса оформления заказов на сайте в торговых организациях. Продукт обеспечивает легкое взаимодействие между компанией и клиентами через веб-интерфейс, интегрированный с 1С:Предприятие. Система позволяет снизить операционные расходы, повысить лояльность клиентов и оптимизировать работу отдела продаж.

57600 руб.

26.11.2024    1865    1    1    

4

WEB-интеграция Анализ продаж Системный администратор Программист Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Модуль "Подсистема интеграции AmoCRM с 1С" позволяет обеспечить единое информационное пространство, в котором пользователи могут эффективно управлять клиентской базой, следить за статусами сделок и поддерживать актуальность данных как в AmoCRM, так и в 1С. Бесплатный период Техподдержки - 1 месяц.

60000 руб.

07.05.2019    34171    63    45    

24

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 1C:Бухгалтерия 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки.

24000 руб.

27.09.2024    3370    3    2    

4

WEB-интеграция Программист Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бытовые услуги, сервис Платные (руб)

Внешняя обработка разрабатывалась для загрузки документов из Ветменеджер в 1С: Бухгалтерия 3.0

12000 руб.

02.02.2021    18527    53    50    

29

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    18773    20    22    

18
Оставьте свое сообщение