Vous souhaitez utiliser IFTTT pour créer de nouveaux sujets, des messages et des messages privés ? C’est parti !
En utilisant les Webhooks Maker du service IFTTT, nous pouvons effectuer des appels à l’API Discourse. Pour cela, nous devons d’abord générer des clés API. Vous pouvez créer des clés API depuis le panneau d’administration à l’adresse /admin/api/keys.
Nous pouvons également générer des clés API spécifiques à un utilisateur via les pages d’administration des utilisateurs.
Créez maintenant une nouvelle applet sur IFTTT, puis choisissez le service déclencheur de votre choix. Ici, j’utilise par exemple le service Google Calendar.
Ensuite, je choisis le déclencheur Tout nouvel événement ajouté.
Pour connecter votre déclencheur à Discourse, choisissez Maker Webhooks comme service d’action et Faire une requête web comme action.
Remplissez maintenant les champs de l’action comme suit :
- URL (requis) :
https://discourse.example.com/posts.json - Méthode (requis) :
POST - Type de contenu :
application/json - En-têtes supplémentaires :
Api-Key: [VOTRE_CLE_API]
Api-Username: [NOM_UTILISATEUR_API]
Important : Les identifiants API doivent être envoyés dans les en-têtes HTTP (
Api-KeyetApi-Username), et non en tant que paramètres de requête URL. Discourse n’accepte pas l’authentification par clé API via des paramètres de requête sur les requêtes POST. Le service Maker Webhooks d’IFTTT prend en charge les en-têtes personnalisés — utilisez le champ En-têtes supplémentaires pour les ajouter.
- Corps :
{
"title": "{{Title}}",
"raw": "{{Description}}\n\nLieu : {{Where}}\nÀ : {{Starts}} - {{Ends}}",
"category": 4,
"created_at": "{{CreatedAt}}"
}
Dans le texte du corps, vous verrez de nombreux champs entre doubles crochets {{ }}. Ces champs (sources de contenu) varieront selon les déclencheurs de chaque service. Sélectionnez-les via le bouton Ingrédient ci-dessous.
Vous pouvez modifier les champs title et raw dans le corps JSON selon vos besoins, en incluant du texte autour. Trouvez l’ID de catégorie depuis l’URL /site.json de votre site et placez-le dans le champ catégorie. Cliquez ensuite sur le bouton Créer l’action pour finaliser l’applet. Après sa création, il peut falloir un certain temps avant qu’elle ne soit active.
C’est fait
. Désormais, un nouveau sujet sera créé chaque fois qu’un nouvel événement est ajouté à votre Google Calendar
.
Pour créer une réponse à un sujet existant au lieu d’un nouveau sujet, modifiez le corps du texte comme suit (utilisez topic_id à la place de category) :
{
"title": "{{Title}}",
"raw": "{{Description}}\n\nLieu : {{Where}}\nÀ : {{Starts}} - {{Ends}}",
"topic_id": 4,
"created_at": "{{CreatedAt}}"
}
Pour créer un nouveau message privé :
{
"title": "{{Title}}",
"raw": "{{Description}}\n\nLieu : {{Where}}\nÀ : {{Starts}} - {{Ends}}",
"target_usernames": "discourse1,discourse2",
"archetype": "private_message",
"created_at": "{{CreatedAt}}"
}
En suivant cette même méthode, vous pouvez effectuer des requêtes à l’API Discourse via n’importe quel autre service d’action IFTTT.




