Diversos

Fazer o download e o upload de um arquivo

function sendHttpPost() {   // Download a file now (GET), so we can upload it in the HTTP POST below.   const response = UrlFetchApp.fetch('https://www.google.com/favicon.ico');   const fileBlob = response.getBlob();    const payload = {       'fieldOne' : 'value for field one',       'fieldTwo' : 'value for field two',       'fileAttachment': fileBlob   };    // Because payload is a JavaScript object, it will be interpreted as   // an HTML form. (We do not need to specify contentType; it will   // automatically default to either 'application/x-www-form-urlencoded'   // or 'multipart/form-data')    const options = {       'method' : 'post',       'payload' : payload   };    UrlFetchApp.fetch('http://example.com/upload_form.cgi', options); }

Compactar e descompactar um arquivo

function zipUnzip() {   const googleFavIconUrl = 'https://www.google.com/favicon.ico';   const googleLogoUrl = 'https://www.google.com/images/srpr/logo3w.png';    // Fetch the Google favicon.ico file and get the Blob data.   const faviconBlob = UrlFetchApp.fetch(googleFavIconUrl).getBlob();   const logoBlob = UrlFetchApp.fetch(googleLogoUrl).getBlob();    // zip now references a blob containing an archive of both faviconBlob and   // logoBlob.   const zip = Utilities.zip([faviconBlob, logoBlob], 'google_images.zip');    // This will now unzip the blobs.   const files = Utilities.unzip(zip); }

Analisar um arquivo CSV

function parseCsv() {   // This will create a 2 dimensional array of the format   // [[a, b, c], [d, e, f]]   const csvString = 'a,b,c\nd,e,f';   const data = Utilities.parseCsv(csvString);   console.log(data); }

Formatar uma string

function formatString() {   // You can use sprintf-like string formatting using '%'-style format   // strings.    // will be: '123.456000'   Utilities.formatString('%11.6f', 123.456);    // will be: '   abc'   Utilities.formatString('%6s', 'abc'); }

Codificar e decodificar uma string com base64

function base64Encoding() {   // base64 encoding is used to encode binary data to a text format   // you may need to do this if your transfer method can't handle spaces,   // non-English characters, etc.    // We'll instantiate a blob here for clarity.   const blob = Utilities.newBlob('A string here');    // Let's return the blob data as a byte[].   const encoded = Utilities.base64Encode(blob.getBytes());    // This will log 'QSBzdHJpbmcgaGVyZQ=='   console.log(encoded);    const decoded = Utilities.base64Decode(encoded);    // This will log the original string.   console.log(Utilities.newBlob(decoded).getDataAsString()); }

Gerar uma string com a data no fuso horário da conta

function getDateStringInTimeZone() {   // Default to the current date and time. For a particular date, pass a   // date string to new Date() such as   // "February 17, 2016 13:00:00 -0500". Always include a timezone   // specifier in the date string, or the date string may be interpreted   // using a different timezone than you intend.   const date = new Date();    // Default to the account timezone. To customize, see   // https://developers.google.com/google-ads/api/reference/data/codes-formats#timezone-ids   // e.g. const timezone = "Europe/Berlin"   const timeZone = AdsApp.currentAccount().getTimeZone();    // For other formats, see   // https://developers.google.com/apps-script/reference/utilities/utilities#formatdatedate-timezone-format   // If constructing a new date from the returned date string, be sure the   // format includes the time zone letter 'Z', or the date string may be   // interpreted using a different timezone than you intend.   const format = 'MMM dd, yyyy HH:mm:ss Z';   return Utilities.formatDate(date, timeZone, format); }

Recuperar data passada

function getDateInThePast() {   // Number of milliseconds in a day.   const MILLIS_PER_DAY = 1000 * 60 * 60 * 24;    // Default to the current date and time. For a particular date, pass a   // date string to new Date() such as   // "February 17, 2016 13:00:00 -0500". Always include a timezone   // specifier in the date string, or the date string may be interpreted   // using a different timezone than you intend.   const date = new Date();    // Number of days in the past.   const numDays = 3;    return new Date(date.getTime() - numDays * MILLIS_PER_DAY); }