Вы можете проверить с помощью события действия get, есть ли у пользователя уже учетная запись:
Если это так, вы выполняете путь, в котором добавляете этого пользователя в группу, используя действие put:
Вы можете проверить с помощью события действия get, есть ли у пользователя уже учетная запись:
Если это так, вы выполняете путь, в котором добавляете этого пользователя в группу, используя действие put:
Отлично, Krischan! Спасибо за быстрый ответ! Я прямо сейчас это пробую.
Часть с GET, кажется, работает.
Но у меня проблема с действием PUT:
1 / Скажите, какой Content-type нужно указать в заголовке?
(Я полагаю, что я всё ещё добавляю своё имя пользователя API и ключ API)
2 / В URL действия PUT нужно ли использовать ID группы (в виде числа, как 110 в вашем примере), или можно использовать имя, которое можно получить из URL группы? (например, “course-A”)
Я попытался использовать имя группы (не знаю, где найти ID группы), и это, кажется, не работает.
Спасибо! ![]()
Тип контента: multipart/form-data
Нет, я думаю, вам нужно использовать идентификатор группы. Вы можете получить его, например, из JSON-файла: https://meta.discourse.org/g.json
Отлично, с этим типом контента и ID группы всё работает!
Спасибо за быструю помощь, Крисхан!
Привет, Крисчан! ![]()
Ты знаешь, есть ли способ уведомить пользователя по электронной почте о том, что его добавили в группу (используя API Discourse в Zapier)?
Я знаю, что при ручном добавлении участника в группу на Discourse можно поставить галочку.
Было бы здорово, если бы я мог запускать отправку письма, когда мой Zap добавляет пользователя в новую группу.
Спасибо!
Спасибо за ваш ответ, @Krischan!
Видите ли вы более быстрый способ уведомить пользователя? (Не проблема, если это будет простое сообщение от Discourse, такое же, которое пользователь получает, если я отмечу галочкой опцию «уведомлять пользователей».
Ваше решение отличное, но так как у меня много групп и автоматизаций, было бы здорово, если бы я мог просто добавить «один» тип данных, например, чтобы просто «активировать» уведомление, вместо создания 30 новых zap ![]()
Извините, я ещё не делал этого. Но, возможно, эта тема вам поможет:
Спасибо за ваш ответ, Крисчан! Я проверю это ![]()
Привет, ребята ![]()
Вы знаете, можно ли удалить участника из группы, используя ту же логику, что описана выше?
Я заметил, что в API есть способ удалить участника группы: Discourse API Docs
Но я не уверен, как использовать это в Zapier ![]()
Здравствуйте,
Мне нужна помощь. Я выполнил все инструкции, и ссылка была создана. Однако ссылка не привязана к электронной почте. Поле электронной почты пустое, и пользователь не получает никакого письма.
Смотрите:
Результаты:
У кого-нибудь недавно появлялись сообщения об ошибках при отправке приглашений через Zap? В моём случае я получаю ошибки 403 и 404, и некоторые приглашения не отправляются успешно.
Похоже, это проблема с правами доступа, связанная либо с Api-Key, либо с Api-Username. Проверьте оба этих параметра на вашем сайте Discourse. Убедитесь, что пользователь, указанный в Api-Username, всё ещё активен на сайте, а Api-Key имеет либо глобальную область действия, либо точечную область действия с отмеченным флажком «Invites».
Дайте нам знать, если это не решит проблему.
Я поднимаю сообщение Джулиано, потому что только что попробовал это и столкнулся с тем же. Как убедиться, что создаваемое мной приглашение является приглашением по электронной почте? Похоже, я могу создавать только приглашения по ссылке, хотя они работают отлично.
Небольшое обновление по этому вопросу, так как я снова пытаюсь решить проблему.
Приложение интеграции Zapier с Discourse, похоже, содержит дефект: оно сопоставляет оба значения тела POST-запроса — «email» и «skip_email» — с одним и тем же ключом: «skip_email». В результате Discourse получает HTTP POST-запрос без элемента «email» в теле запроса, поэтому приглашение создаётся как «ссылка», а не как «email»-приглашение.
Я отправляю письмо в службу поддержки Zapier. Посмотрим, что получится. ![]()
Если использовать универсальную функцию Webhook в Zapier, можно создать приглашение, но Discourse не отправляет письмо, поэтому мне нужно выяснить, почему это происходит. Я вернусь с обновлением, как только узнаю больше.
Есть ли способ сделать это через make.com вместо Zapier? Он работает аналогично и имеет интеграцию с Discourse, но я не могу найти команду для приглашения.
Уверен, что есть.
Интеграция Discourse с Zapier тоже не имеет команды Invite. Эта тема как раз объясняет, как обойти эту проблему, используя действие Zapier, которое позволяет выполнить API-запрос к Discourse. Я вполне уверен, что то же самое можно реализовать в make.com, используя действие «Выполнить API-запрос»: https://www.make.com/en/integrations/discourse.
Полезные детали по настройке этого процесса вы можете найти в первом посте этой темы. Если у вас возникнут вопросы по его работе, лучше задавать их здесь: How to connect Discourse with hundreds of apps using Make. (Integromat был переименован в Make.com).
@JammyDodger, вероятно, тему, на которую я дал ссылку, стоит переименовать и отредактировать, чтобы было ясно, что речь идёт о Make.com, а не об Integromat.
Большое спасибо за ответ и ссылки. Я не знал, что у Make.com раньше было другое название, так что это помогает. Я попробую разобраться.