/****************************************************/
var SPREADSHEET_URL = 'INSERT_SPREADSHEET_URL_HERE';
var SHEET_NAME = 'Source';
var spreadsheet = SpreadsheetApp.openByUrl(SPREADSHEET_URL);
var sheet = spreadsheet.getSheetByName(SHEET_NAME);
function main() {
sheet.getRange("A:H").clearContent();
var last5WeeksMonday = new Date();
var lastweekSunday = new Date();
// set to Monday of this week
last5WeeksMonday.setDate(last5WeeksMonday.getDate() - (last5WeeksMonday.getDay() + 6) % 7);
lastweekSunday.setDate(lastweekSunday.getDate() - (lastweekSunday.getDay() + 6) % 7);
// set to previous Monday
last5WeeksMonday.setDate(last5WeeksMonday.getDate() - 35);
lastweekSunday.setDate(lastweekSunday.getDate() - 1);
var Last5WeeksMonday = Utilities.formatDate(last5WeeksMonday, 'PST', 'yyyyMMdd');
var LastweekSunday = Utilities.formatDate(lastweekSunday, 'PST', 'yyyyMMdd');
var d = new Date(); d.getDate(); var today = Utilities.formatDate(d, 'PST', 'yyyyMMdd');
sheet.getRange("A1").setValue("Start Date");
sheet.getRange("A2").setValue("End Date");
sheet.getRange("B1").setValue(Last5WeeksMonday);
sheet.getRange("B2").setValue(LastweekSunday);
sheet.getRange("A3").setValue("Frequency");
sheet.getRange("B3").setValue("Last Five Weeks");
sheet.getRange("A4").setValue("Last Execution");
sheet.getRange("A5").setValue("Copyright");
sheet.getRange("B5").setValue("https://optimizationup.com/");
sheet.getRange("B4").setValue(today);
sheet.getRange("A8").setValue("Week");
sheet.getRange("B8").setValue("Impressions");
sheet.getRange("C8").setValue("Clicks");
sheet.getRange("D8").setValue("Cost");
sheet.getRange("E8").setValue("Conversions");
sheet.getRange("F8").setValue("Revenue");
sheet.getRange("G8").setValue("Network");
sheet.getRange("H8").setValue("Device");
sheet.getRange("A8").setValue("Week");
var report = AdWordsApp.report("SELECT Week, Clicks, Impressions, Ctr, AverageCpc, Cost, Conversions, AdNetworkType1, ConversionValue " +
"FROM ACCOUNT_PERFORMANCE_REPORT " +
"WHERE Impressions > 0 " +
"DURING " + Last5WeeksMonday + ", " + LastweekSunday);
var rows = report.rows();
while (rows.hasNext()) {
var row = rows.next();
sheet.appendRow([ row['Week'], row['Impressions'], row['Clicks'] , row['Cost'] , row['Conversions'],row['ConversionValue'], row['AdNetworkType1'], "All" ]);
}
var report = AdWordsApp.report("SELECT Week, Clicks, Impressions, Ctr, AverageCpc, Cost, Conversions, ConversionValue " +
"FROM ACCOUNT_PERFORMANCE_REPORT " +
"WHERE Impressions > 0 " +
"DURING " + Last5WeeksMonday + ", " + LastweekSunday);
var rows = report.rows();
while (rows.hasNext()) {
var row = rows.next();
sheet.appendRow([ row['Week'], row['Impressions'], row['Clicks'] , row['Cost'] , row['Conversions'],row['ConversionValue'], "All" , "All" ]);
}
var report = AdWordsApp.report("SELECT Week, Clicks, Impressions, Ctr, AverageCpc, Cost, Conversions, AdNetworkType1, Device, ConversionValue " +
"FROM ACCOUNT_PERFORMANCE_REPORT " +
"WHERE Impressions > 0 " +
"DURING " + Last5WeeksMonday + ", " + LastweekSunday);
var rows = report.rows();
while (rows.hasNext()) {
var row = rows.next();
sheet.appendRow([ row['Week'], row['Impressions'], row['Clicks'] , row['Cost'] , row['Conversions'],row['ConversionValue'], row['AdNetworkType1'] , row['Device'] ]);
}
var report = AdWordsApp.report("SELECT Week, Clicks, Impressions, Ctr, AverageCpc, Cost, Conversions, Device, ConversionValue " +
"FROM ACCOUNT_PERFORMANCE_REPORT " +
"WHERE Impressions > 0 " +
"DURING " + Last5WeeksMonday + ", " + LastweekSunday);
var rows = report.rows();
while (rows.hasNext()) {
var row = rows.next();
sheet.appendRow([ row['Week'], row['Impressions'], row['Clicks'] , row['Cost'] , row['Conversions'],row['ConversionValue'], "All" , row['Device'] ]);
}
var report = AdWordsApp.report("SELECT Week, Clicks " +
"FROM ACCOUNT_PERFORMANCE_REPORT " +
"WHERE Impressions > 0 " +
"DURING " + Last5WeeksMonday + ", " + LastweekSunday);
var rows = report.rows()
for (var row = 1; rows.hasNext(); row ++) {
var rowx = rows.next();
sheet.getRange("D1").setValue("The 5 Weeks Sorted ASC");
sheet.getRange("E" + row).setValue(rowx['Week']);
}
var range = sheet.getRange("E1:F6");
range.sort(5);
}
Could you kindly provide guidance or support in developing a Google Ads Script tailored to fetch phone call-related metrics, including but not limited to clicks, phone call duration, conversion rates, and other relevant data points? Our aim is to generate a comprehensive report that consolidates these metrics for thorough analysis.
Additionally, I would greatly appreciate any assistance in understanding and utilizing the call_view to customize reports related to phone call data. If there are specific methods or best practices for accessing and interpreting data through call_view using Google Ads Script, your insights would be immensely beneficial to our efforts.
Thank you in advance for considering my request. Your expertise in this matter would significantly aid our team in optimizing our campaigns and deriving meaningful insights from phone call data.