I'm trying to create a script to capture data via HTTP POST from Ejunkie. When someone makes a purchase on ejunkie, they can transmit all the order data via HTTP POST to a common notification url (documentation). I want to capture that data so I can get it into a Google Sheet.
So I've setup a sheet with a doPost(e) function like so:
// attempt 1
function doPost(e) {
if(typeof e !== 'undefined')
Logger.log(e.parameters);
}
// attempt 2
function doPost(e) {
var data = JSON.stringify(e);
Logger.log(data);
}
which I've published as a Web App with access to anyone, and then entered this script URL as the common notification URL in ejunkie.
I've tried a couple of test transactions, but I'm getting nothing in the Logs.
Any ideas? Thanks in advance for any help.
Here's the ejunkie documentation on this subject.
This is the code I used to post the data to my sheet:
function doPost(e) {
Logger.log("I was called")
if(typeof e !== 'undefined')
Logger.log(e.parameter);
var ss= SpreadsheetApp.openById("ID here")
var sheet = ss.getSheetByName("Sheet2")
sheet.getRange(1, 1).setValue(JSON.stringify(e))
return ContentService.createTextOutput(JSON.stringify(e))
}
Used curl to make a post request and got echo of the data sent!
Instead of using Logger.log() as a way to notify yourself if your calls made it through, try sending an email to yourself instead. This is the snippet:
function doPost(e) {
if(typeof e !== 'undefined')
MailApp.sendEmail({
to: "[email protected]",
subject: "Call Sucessful",
htmlBody: "I am your <br>" +
"DATA"
});
}
Just allow the necessary permission if asked. If I'm not mistaken Logger.log is for script editor only and not for your production web apps.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With