Is is possible to automatically send a tailored email or message when a topic is marked as Solved ? If so how?
We are trying to use it for marketing and to determine how happy customers are with the solution.
Is is possible to automatically send a tailored email or message when a topic is marked as Solved ? If so how?
We are trying to use it for marketing and to determine how happy customers are with the solution.
Hello @ianm!
There’s no built-in solution for this. It would require a plugin or a custom script.
If you know a bit of coding, the later would be fairly easy using a solved event webhook.
The steps would be:
Create the webhook in /admin/api/web_hooks/
Create a script that will receive the webhook. A PHP example can be found here: Use Discourse webhooks with PHP
You’ll need to ensure that the X-Discourse-Event header is set to accepted_solution.
The webhook payload contains informations that can be used for the message you want to send:
name and username: the author of the post marked as solution
cooked: the HTML content of the post marked as solution
topic_id: the topic’s ID ![]()
You can then return the data of /t/[topic_id].json[1].
There are a few ways to get the topic’s author:
[post_stream][posts][0] contains the author’s data: [id],[name], [username], etc.
[details][created_by] will also contain this information.
Do a POST request to /posts.json with the proper payload to send a PM to the topic’s author.
More info about the post POST request: Discourse API Docs
Video proof of concept:
/t/[topic_id].json endpoint also contain solution-related data in [accepted_answer] ↩︎