Page Summary
-
To retrieve tweets for a specified user or send a tweet, you need to use a User-level Twitter API request.
-
Both functions require the OAuth1 library to be pasted into the script.
-
You must replace the placeholder values for CONSUMER_KEY, CONSUMER_SECRET, ACCESS_TOKEN, and ACCESS_SECRET with your own credentials.
-
The
getTweetsForUserfunction retrieves tweets for a given screen name and returns a complex response object. -
The
sendTweetfunction sends a tweet message and returns a complex response object with the status of the send request.
Retrieve tweets for a specified user
// User-level Twitter API request // Requires the OAuth1 library to be pasted into the script. // https://developers.google.com/google-ads/scripts/docs/examples/oauth10-library const CONSUMER_KEY = ' INSERT_CONSUMER_KEY_HERE ' ; const CONSUMER_SECRET = ' INSERT_CONSUMER_SECRET_HERE ' ; const ACCESS_TOKEN = ' INSERT_ACCESS_TOKEN_HERE ' ; const ACCESS_SECRET = ' INSERT_ACCESS_SECRET_HERE ' ; /** * Retrieves the tweets for the specified Twitter user. * @param {string} screenName The Twitter name of the user, e.g. 'sundarpichai' * @return {?Object} The complex response object containing tweets, or null if * failure. See https://dev.twitter.com/rest/reference/get/statuses/user_timeline * for structure of this object. */ function getTweetsForUser ( screenName ) { if ( typeof OAuth1 == = ' undefined ' ) { const libUrl = ' https : //developers.google.com/google-ads/scripts/docs/examples/oauth10-library'; throw Error ( ' OAuth1 library not found . Please take a copy of the OAuth1 ' + ' library from ' + libUrl + ' and append to the bottom of this script . ' ); } const params = { screen_name : screenName }; const authUrlFetch = OAuth1 . withAccessToken ( CONSUMER_KEY , CONSUMER_SECRET , ACCESS_TOKEN , ACCESS_SECRET ); const response = authUrlFetch . fetch ( ' https : //api.twitter.com/1.1/statuses/user_timeline.json', params); const responseText = response . getContentText (); return JSON . parse ( responseText ); } // Paste the OAuth1 library here.
Send a tweet
// User - level Twitter API request // Requires the OAuth1 library to be pasted into the script . // https : // developers . google . com / google - ads / scripts / docs / examples / oauth10 - library const CONSUMER_KEY = 'INSERT_CONSUMER_KEY_HERE' ; const CONSUMER_SECRET = 'INSERT_CONSUMER_SECRET_HERE' ; const ACCESS_TOKEN = 'INSERT_ACCESS_TOKEN_HERE' ; const ACCESS_SECRET = 'INSERT_ACCESS_SECRET_HERE' ; /** * Sends a tweet . * @ param { string } message The message to send . * @ return { ? Object } The complex response object with the status of the send * request . See https : // dev . twitter . com / rest / reference / post / statuses / update * for the structure of this object . */ function sendTweet ( message ) { if ( typeof OAuth1 === 'undefined' ) { const libUrl = 'https://developers.google.com/google-ads/scripts/docs/examples/oauth10-library' ; throw Error ( 'OAuth1 library not found. Please take a copy of the OAuth1 ' + 'library from ' + libUrl + ' and append to the bottom of this script.' ); } const params = '' ; const tweet = message . substring ( 0 , 160 ); const options = { method : 'POST' , payload : { status : tweet }}; const authUrlFetch = OAuth1 . withAccessToken ( CONSUMER_KEY , CONSUMER_SECRET , ACCESS_TOKEN , ACCESS_SECRET ); const response = authUrlFetch . fetch ( 'https://api.twitter.com/1.1/statuses/update.json' , params , options ); const responseText = response . getContentText (); return JSON . parse ( responseText ); }

