Je suppose que cela échoue sur is_api?. En regardant le code, il n’est pas évident pour moi pourquoi cela échouerait avec la requête de Zapier, mais je ne vois pas où d’autre cela pourrait échouer.
Cela m’intéresse car quelqu’un m’a posé la même question à propos de la création d’utilisateurs via Zapier il y a quelques semaines.
Oui. Je suis surpris que cela ne fonctionne pas, mais au moins je sais que ce n’est pas juste moi.
J’envisage cette approche consistant à utiliser une base de données externe et un outil d’automatisation comme Zapier ou Make (j’obtenais des erreurs similaires sur Make) comme preuve de concept pour un programme pilote.
Je peux m’en passer dans la phase pilote à court terme, mais à plus long terme, Discourse fera partie d’une plateforme plus large et je devrai absolument gérer les membres dans une base de données externe avec un backend séparé, incluant la gestion des membres et d’autres services.
Cela fonctionne pour moi. Si cela ne fonctionne pas, l’autre chose à vérifier est de vous assurer que le paramètre « invite only » n’est pas activé sur votre site Discourse.
Pour voir si cela fonctionnerait, j’ai également créé une intégration personnalisée avec la CLI Zapier qui crée de nouveaux utilisateurs. Si Discourse le souhaite, cette action pourrait être ajoutée à l’action Zap officielle de Discourse. Je ne suis pas sûr que l’ajout d’une action pour créer des utilisateurs soit une priorité. Je ne pense pas qu’elle ait été demandée aussi souvent que des choses comme la création d’une invitation ou la suspension d’un utilisateur.
Notes d’autres tests :
le type de charge utile peut être défini sur « json » ou « form ». Pour définir des champs personnalisés avec la requête, le type de charge utile doit être défini sur « form ».
Les champs personnalisés à sélection multiple posent un petit problème. Zapier n’autorise pas les noms de clés dupliqués dans la section Données. Il devrait être possible de définir des champs personnalisés à sélection multiple avec l’action Zapier « Requête personnalisée ».
les valeurs des paramètres active et approved n’ont pas besoin d’être entourées de guillemets.
@simon Merci ! J’ai réussi ! Votre capture d’écran m’a aidé à résoudre les problèmes liés à la façon dont Zapier crée les champs de données. Il faisait des choses étranges, mais je ne comprenais pas vraiment comment formater / mapper les données à Airtable. Je dois faire fonctionner l’automatisation de bout en bout, mais la création d’utilisateur a définitivement fonctionné.
Salut @simon - merci encore pour ton aide sur le formatage. J’essaie maintenant d’ajouter des champs personnalisés au profil utilisateur et de voir si je peux obtenir Zapier pour les remplir dans un nouvel utilisateur Discourse. Il semble que cela provoque l’échec de toute la requête et que je reçoive le message « vous n’avez pas complété tous les champs utilisateur ».
J’ai trouvé ce post donc j’ai essayé de passer de json à form mais cela n’a pas fonctionné.
Des conseils sur la façon de formater les champs de profil personnalisés ? Merci !
Sauf que cette approche ne fonctionnera pas avec les champs déroulants à sélection multiple. Pour ce type de champ, je pense que vous devrez utiliser l’action « Requête personnalisée ». Il faudra peut-être un peu de tâtonnement pour que cela fonctionne.
Impressionnant - vous êtes vraiment le grand sorcier de Zapier + Discourse. Changer la flèche rouge et cela a fonctionné du premier coup. Je l’avais comme nom du champ, mais bien sûr, cela n’a aucun sens étant donné que je ne le saurais pas en amont. Donc, pour chaque nouveau champ que je crée, j’utilise simplement le [#] et il les mappera automatiquement dans l’ordre ? Je prévois d’en créer beaucoup, peut-être une dizaine. De plus, cela a semblé fonctionner correctement même si mon champ de test est une liste déroulante - peut-être parce qu’il est simplement extrait d’Airtable ?
Oui, il suffit de mettre l’id du champ entre les []. Vous pouvez obtenir l’id du champ en chargeant la version JSON de votre page Admin / Personnaliser / Champs utilisateur (/admin/customize/user_fields.json)
(C’est plus facile à lire si vous avez une extension de navigateur qui formate le JSON.)
Les champs de type menu déroulant devraient fonctionner sans problème. Ce sont uniquement les champs de type sélection multiple qui poseront des problèmes. Par exemple, le champ « hobbies » dans la capture d’écran que j’ai postée ci-dessus.
Je me demande s’il est possible de rouvrir ce sujet et de poser des questions sur la création de groupes ?
Je peux créer des utilisateurs depuis Zapier sans problème (même lorsque invite only est activé)
L’interface Zapier permet des en-têtes d’API individuels, mais lorsqu’elle demande un objet (ce qui semble être requis pour la création d’un groupe), j’obtiens ceci, même si je modifie le corps manuellement pour qu’il soit formaté comme le demandent les documentation de l’API :
Échec de la création d’actions personnalisées dans Discourse
La requête brute a échoué. Problème lors de l’exécution de votre requête : code d’erreur 400 : paramètre manquant ou valeur vide : group
Y a-t-il un moyen d’envoyer cet objet initial group { et de le fermer à nouveau en utilisant Zapier ?
Toute information serait incroyable et très appréciée !