/** * Logs all of the queries available in the account. */functionlistQueries(){// Retrieve the list of available queriestry{constqueries=DoubleClickBidManager.Queries.list();if(queries.queries){// Print out the ID and name of eachfor(leti=0;i < queries.queries.length;i++){constquery=queries.queries[i];console.log('Found query with ID %s and name "%s".',query.queryId,query.metadata.title,);}}}catch(e){// TODO (Developer) - Handle exceptionconsole.log("Failed with error: %s",e.error);}}
/** * Create and run a new DBM Query */functioncreateAndRunQuery(){letresult;letexecution;//We leave the default date range blank for the report run to//use the value defined during query creationconstdefaultDateRange={};constpartnerId="1234567";//Replace with your Partner IDconstquery={metadata:{title:"Apps Script Example Report",dataRange:{range:"YEAR_TO_DATE",},format:"CSV",},params:{type:"STANDARD",groupBys:["FILTER_PARTNER","FILTER_PARTNER_NAME","FILTER_ADVERTISER","FILTER_ADVERTISER_NAME",],filters:[{type:"FILTER_PARTNER",value:partnerId}],metrics:["METRIC_IMPRESSIONS"],},schedule:{frequency:"ONE_TIME",},};try{result=DoubleClickBidManager.Queries.create(query);if(result.queryId){console.log('Created query with ID %s and name "%s".',result.queryId,result.metadata.title,);execution=DoubleClickBidManager.Queries.run(defaultDateRange,result.queryId,);if(execution.key){console.log('Created query report with query ID %s and report ID "%s".',execution.key.queryId,execution.key.reportId,);}}}catch(e){// TODO (Developer) - Handle exceptionconsole.log(e);console.log("Failed with error: %s",e.error);}}
/** * Fetches a report file */functionfetchReport(){constqueryId="1234567";// Replace with your query ID.constorderBy="key.reportId desc";try{constreport=DoubleClickBidManager.Queries.Reports.list(queryId,{orderBy:orderBy,});if(report.reports){constfirstReport=report.reports[0];if(firstReport.metadata.status.state==="DONE"){constreportFile=UrlFetchApp.fetch(firstReport.metadata.googleCloudStoragePath,);console.log("Printing report content to log...");console.log(reportFile.getContentText());}else{console.log("Report status is %s, and is not available for download",firstReport.metadata.status.state,);}}}catch(e){// TODO (Developer) - Handle exceptionconsole.log(e);console.log("Failed with error: %s",e.error);}}