Автоматизируйте отправку приглашений Discourse через Zapier

Вы можете проверить с помощью события действия get, есть ли у пользователя уже учетная запись:

Если это так, вы выполняете путь, в котором добавляете этого пользователя в группу, используя действие put:

1 лайк

Отлично, Krischan! Спасибо за быстрый ответ! Я прямо сейчас это пробую.

Часть с GET, кажется, работает.

Но у меня проблема с действием PUT:

1 / Скажите, какой Content-type нужно указать в заголовке?
(Я полагаю, что я всё ещё добавляю своё имя пользователя API и ключ API)

2 / В URL действия PUT нужно ли использовать ID группы (в виде числа, как 110 в вашем примере), или можно использовать имя, которое можно получить из URL группы? (например, “course-A”)

Я попытался использовать имя группы (не знаю, где найти ID группы), и это, кажется, не работает.

Спасибо! :smiley:

1 лайк

Тип контента: multipart/form-data

Нет, я думаю, вам нужно использовать идентификатор группы. Вы можете получить его, например, из JSON-файла: https://meta.discourse.org/g.json

4 лайка

Отлично, с этим типом контента и ID группы всё работает!

Спасибо за быструю помощь, Крисхан!

3 лайка

Привет, Крисчан! :slight_smile:

Ты знаешь, есть ли способ уведомить пользователя по электронной почте о том, что его добавили в группу (используя API Discourse в Zapier)?

Я знаю, что при ручном добавлении участника в группу на Discourse можно поставить галочку.

Было бы здорово, если бы я мог запускать отправку письма, когда мой Zap добавляет пользователя в новую группу.

Спасибо!

1 лайк

Почему бы вам не отправить ему личное сообщение с постом о событии?

2 лайка

Спасибо за ваш ответ, @Krischan!

Видите ли вы более быстрый способ уведомить пользователя? (Не проблема, если это будет простое сообщение от Discourse, такое же, которое пользователь получает, если я отмечу галочкой опцию «уведомлять пользователей».

Ваше решение отличное, но так как у меня много групп и автоматизаций, было бы здорово, если бы я мог просто добавить «один» тип данных, например, чтобы просто «активировать» уведомление, вместо создания 30 новых zap :stuck_out_tongue:

1 лайк

Извините, я ещё не делал этого. Но, возможно, эта тема вам поможет:

3 лайка

Спасибо за ваш ответ, Крисчан! Я проверю это :slight_smile:

2 лайка

Привет, ребята :slight_smile:

Вы знаете, можно ли удалить участника из группы, используя ту же логику, что описана выше?

Я заметил, что в API есть способ удалить участника группы: Discourse API Docs

Но я не уверен, как использовать это в Zapier :confused:

1 лайк

Здравствуйте,

Мне нужна помощь. Я выполнил все инструкции, и ссылка была создана. Однако ссылка не привязана к электронной почте. Поле электронной почты пустое, и пользователь не получает никакого письма.

Смотрите:

Результаты:

1 лайк

У кого-нибудь недавно появлялись сообщения об ошибках при отправке приглашений через Zap? В моём случае я получаю ошибки 403 и 404, и некоторые приглашения не отправляются успешно.

Похоже, это проблема с правами доступа, связанная либо с Api-Key, либо с Api-Username. Проверьте оба этих параметра на вашем сайте Discourse. Убедитесь, что пользователь, указанный в Api-Username, всё ещё активен на сайте, а Api-Key имеет либо глобальную область действия, либо точечную область действия с отмеченным флажком «Invites».

Дайте нам знать, если это не решит проблему.

Я поднимаю сообщение Джулиано, потому что только что попробовал это и столкнулся с тем же. Как убедиться, что создаваемое мной приглашение является приглашением по электронной почте? Похоже, я могу создавать только приглашения по ссылке, хотя они работают отлично.

1 лайк

Небольшое обновление по этому вопросу, так как я снова пытаюсь решить проблему.

Приложение интеграции Zapier с Discourse, похоже, содержит дефект: оно сопоставляет оба значения тела POST-запроса — «email» и «skip_email» — с одним и тем же ключом: «skip_email». В результате Discourse получает HTTP POST-запрос без элемента «email» в теле запроса, поэтому приглашение создаётся как «ссылка», а не как «email»-приглашение.

Я отправляю письмо в службу поддержки Zapier. Посмотрим, что получится. :person_shrugging:

Если использовать универсальную функцию Webhook в Zapier, можно создать приглашение, но Discourse не отправляет письмо, поэтому мне нужно выяснить, почему это происходит. Я вернусь с обновлением, как только узнаю больше.

1 лайк

Есть ли способ сделать это через 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.

3 лайка

Большое спасибо за ответ и ссылки. Я не знал, что у Make.com раньше было другое название, так что это помогает. Я попробую разобраться.