I'm new with script and don't have any skills in dev (Not good in english)
And I need your help
A MCC report for all campaigns that will be updated every day (I think that I can set on frequency on script menu)
- Auto sync to google sheet (Publich share : Edit)
- Google sheet include header colum : Date | Campaign name | Cost
- Sheet name : RAW_REPORT
- Period : 1 JAN 2023 - 31 DEC 2023
So I'm try some code that from ChatGPT and it not show the result of report but show like this If everybody have a script any close to this it would be great.
Date
Campaign name
Cost
Date
Campaign name
Cost
Date
Campaign name
Cost
Date
Campaign name
Cost
Date
Campaign name
Cost
Date
Campaign name
Cost
let settings = {
url: '
https://docs.google.com/spreadsheets/d/?????????/edit',
sheetName: 'RAW_REPORT'
}
function main() {
let accIter = AdsManagerApp.accounts().get();
let data = [];
while (accIter.hasNext()) {
let account = accIter.next();
AdsManagerApp.select(account);
let query =
`SELECT
segments.date,
campaign.name,
metrics.cost_micros
FROM
campaign
WHERE
metrics.cost_micros > 0
AND
segments.date >= '20230101'
AND
segments.date <= '20231231'`;
let response = AdsApp.report(query);
let rows = response.rows();
while (rows.hasNext()) {
let row = rows.next();
if (row.length > 0) {
let date = row['segments.date'];
let campaignName = row['
campaign.name'];
let cost = row['metrics.costMicros'];
data.push([date, campaignName, cost]);
}
}
}
data.unshift(['Date', 'Campaign name', 'Cost']);
let ss = SpreadsheetApp.openByUrl(settings.url);
let sheet = ss.getSheetByName(settings.sheetName);
sheet.getRange(1, 1, data.length, data[0].length).setValues(data);
}