J'ai 2 zaps. D'abord se termine par Code by Zapier
bloc, où je parse des informations d'entrée des étapes précédentes obtenir tableau avec des données par exemple:comment déclencher le webhook à partir du code zapier
var elements = [{id: 12, calculatedValue: 13},{id: 13, calculatedValue: 'red'}]
alors dans une boucle que je traverse, créez corps demandes
var options = {
"url": "https://hooks.zapier.com/hooks/catch/xxxxxx/xxxxxx/",
"method": "POST"
},
requests = elements.map(mapDataToSettings);
function mapDataToSettings(elem) {
var settings = Object.assign({}, options);
settings.data = JSON.stringify(elem);
return settings;
};
Je fais appelle HTTP avec Fetch API
pour toutes les demandes:
Promise.all(requests.map(grabContent))
.then(function(data){ callback(null, {requestsMade: data});});
function grabContent(options) {
return fetch(options.url, options)
.then(function(res) {return res.json();});
};
NBcallback
est la fonction de Zapier pour gérer les résultats asynchrones.
Ce code est exécuté avec succès et je peux voir les résultats:
Mais ces demandes ne sont pas enregistrés dans webhook (adresse est correcte revérifié..)
Quelle peut être la raison pour ça? Comment réparer mon code pour faire des requêtes activer webhook?
Oui, c'était le problème. J'ai vu quelque part que l'objet d'information d'extraction possédait la propriété 'data', ainsi a fait cette faute de frappe. – zmii