Reputation: 51
I'm trying to generate an invoice using data from my spreadsheet, and I'm not very familiar with HTTPS requests, let alone Google's UrlFetchApp. I'm trying to convert this example code provided by the API into something that AppsScript can use. So far it just saves the website as a .html to the folder.
function debug(){
run();
}
const folderName = 'Invoices Test'
function generateInvoice(invoice) {
var postData = JSON.stringify(invoice);
var options = {
'method' : "post",
'contentType': "application/json",
'payload': postData
};
// Make a POST request with a JSON payload.
var response = UrlFetchApp.fetch('invoice-generator.com', options);
var fileBlob = response.getBlob();
var folderID = getInvoiceFolderID();
var folder = DriveApp.getFolderById(folderID);
var result = folder.createFile(fileBlob);
}
/**
* @return String
*/
function getInvoiceFolderID(){
var id;
var folders = DriveApp.getFoldersByName(folderName);
if(!folders.hasNext()){
DriveApp.createFolder(folderName).getId();
}
else{
id = folders.next().getId()
}
return id;
}
var invoice = {
logo: "http://invoiced.com/img/logo-invoice.png",
from: "Invoiced\n701 Brazos St\nAustin, TX 78748",
to: "Johnny Appleseed",
currency: "usd",
number: "INV-0001",
payment_terms: "Auto-Billed - Do Not Pay",
items: [
{
name: "Subscription to Starter",
quantity: 1,
unit_cost: 50
}
],
fields: {
tax: "%"
},
tax: 5,
notes: "Thanks for being an awesome customer!",
terms: "No need to submit payment. You will be auto-billed for this invoice."
}
Upvotes: 1
Views: 72