Apps 指令碼執行

執行一項函式

/**  * Executes an Apps Script function in a remote Apps Script.  * See: https://developers.google.com/google-ads/scripts/docs/features/third-party-apis#refresh_token_grant  * for details on configuring this script.  *  * NOTE: This script also requires the OAuth2 library to be pasted at the end,  * as obtained from https://developers.google.com/google-ads/scripts/docs/examples/oauth20-library  */ const CLIENT_ID = 'INSERT_CLIENT_ID'; const CLIENT_SECRET = 'INSERT_CLIENT_SECRET'; const REFRESH_TOKEN = 'INSERT_REFRESH_TOKEN'; // Enter scopes which should match scopes in File > Project properties // For this project, e.g.: https://www.googleapis.com/auth/drive const SCOPES = 'ENTER_SPACE_DELIMITED_SCOPES'; // Script ID taken from 'File > Project Properties' const SCRIPT_ID = 'ENTER_SCRIPT_ID';  let authUrlFetch;  // Call this function just once, to initialize the OAuth client. function initializeOAuthClient() {   if (typeof OAuth2 === 'undefined') {     const libUrl = 'https://developers.google.com/google-ads/scripts/docs/examples/oauth20-library';     throw Error(`OAuth2 library not found. Please take a copy of the OAuth2 ` +         `library from ${libUrl} and append to the bottom of this script.`);   }   const tokenUrl = 'https://accounts.google.com/o/oauth2/token';   authUrlFetch = OAuth2.withRefreshToken(tokenUrl, CLIENT_ID, CLIENT_SECRET,     REFRESH_TOKEN, SCOPES); }  /**  * Execute a remote function.  * @param {string} remoteFunctionName The name of the function to execute.  * @param {Object[]} functionParams An array of JSON objects to pass to the  *     remote function.  * @return {?Object} The return value from the function.  */ function executeRemoteFunction(remoteFunctionName, functionParams) {   const apiParams = {     'function': remoteFunctionName,     'parameters': functionParams   };   const httpOptions = {     method: 'POST',     headers: {       'Content-Type': 'application/json'     },     payload: JSON.stringify(apiParams)   };   const url = `https://script.googleapis.com/v1/scripts/${SCRIPT_ID}:run`;   const response = authUrlFetch.fetch(url, httpOptions);   const data = JSON.parse(response.getContentText());   // Retrieve the value that has been returned from the execution.   if (data.error) {     throw Error(`There was an error: ${response.getContentText()}`);   }   return data.response.result; }  // Paste in OAuth2 library here, from: // https://developers.google.com/google-ads/scripts/docs/examples/oauth20-library