Slack

  • You can send messages to a user or group in Slack using a webhook URL.

  • The provided example demonstrates sending a Google Ads Report as a message to Slack.

  • The sendSlackMessage function allows sending a formatted message to a specified Slack channel or direct message.

Post a message to a user or group

 /** 
  
 * 
  
 An 
  
 example 
  
 of 
  
 sending 
  
 messages 
  
 into 
  
 Slack 
 . 
  
 See 
 : 
  
 * 
  
 https 
 : 
 // 
 developers 
 . 
 google 
 . 
 com 
 / 
 google 
 - 
 ads 
 / 
 scripts 
 / 
 docs 
 / 
 features 
 / 
 third 
 - 
 party 
 - 
 apis 
  
 * 
  
 * 
  
 Webhook 
  
 set 
  
 up 
  
 at 
 : 
  
 https 
 : 
 // 
 api 
 . 
 slack 
 . 
 com 
 / 
 custom 
 - 
 integrations 
  
>  
 * 
  
 'Set up an incoming webhook' 
 , 
  
 follow 
  
 the 
  
 steps 
  
 then 
  
 click 
  
 'Add Incoming 
  
 * 
  
 WebHooks 
  
 Integration 
 '. This will create the URL needed for below, e.g: 
  
 * 
  
 'https://hooks.slack.com/services/TXXXXXXX/BXXXXXXX/AAAAAAAAABBBBBBBBBBCCCC' 
 ; 
  
 */ 
 const 
  
 SLACK_URL 
  
 = 
  
 'INSERT_WEBHOOK_URL_HERE' 
 ; 
 // 
  
 An 
  
 example 
  
 of 
  
 retrieving 
  
 an 
  
 Google 
  
 Ads 
  
 Report 
  
 and 
  
 sending 
  
 it 
  
 in 
  
 a 
  
 slack 
  
 message 
 . 
 function 
  
 sendReportToSlack 
 () 
  
 { 
  
 const 
  
 report 
  
 = 
  
 AdsApp 
 . 
 report 
 ( 
  
 'SELECT CampaignName, Impressions, Clicks FROM ' 
  
 + 
  
 'CAMPAIGN_PERFORMANCE_REPORT DURING YESTERDAY' 
 ); 
  
 const 
  
 spreadsheet 
  
 = 
  
 SpreadsheetApp 
 . 
 create 
 ( 
 'Report' 
 ); 
  
 report 
 . 
 exportToSheet 
 ( 
 spreadsheet 
 . 
 getActiveSheet 
 ()); 
  
 // 
  
 See 
  
 https 
 : 
 // 
 api 
 . 
 slack 
 . 
 com 
 / 
 docs 
 / 
 message 
 - 
 formatting 
  
 for 
  
 message 
  
 formatting 
 . 
  
 const 
  
 message 
  
 = 
  
 'Your *Google Ads Report* is ready! <' 
  
 + 
  
 spreadsheet 
 . 
 getUrl 
 () 
  
 + 
  
 '|Click here>' 
 ; 
  
 sendSlackMessage 
 ( 
 message 
 ); 
 } 
 /** 
  
 * 
  
 Sends 
  
 a 
  
 message 
  
 to 
  
 Slack 
  
 * 
  
 @ 
 param 
  
 { 
 string 
 } 
  
 text 
  
 The 
  
 message 
  
 to 
  
 send 
  
 in 
  
 slack 
  
 formatting 
 . 
  
 See 
 : 
  
 * 
  
 https 
 : 
 // 
 api 
 . 
 slack 
 . 
 com 
 / 
 docs 
 / 
 message 
 - 
 formatting 
 . 
  
 * 
  
 @ 
 param 
  
 { 
 string 
 = 
 } 
  
 opt_channel 
  
 An 
  
 optional 
  
 channel 
 , 
  
 which 
  
 can 
  
 be 
  
 channel 
  
 e 
 . 
 g 
 . 
  
 * 
  
 '#google-ads' 
  
 or 
  
 a 
  
 direct 
  
 message 
  
 e 
 . 
 g 
 . 
  
 '@sundar' 
 . 
  
 Defaults 
  
 to 
  
 '#general' 
 . 
  
 */ 
 function 
  
 sendSlackMessage 
 ( 
 text 
 , 
  
 opt_channel 
 ) 
  
 { 
  
 const 
  
 slackMessage 
  
 = 
  
 { 
  
 text 
 : 
  
 text 
 , 
  
 icon_url 
 : 
  
 'https://www.gstatic.com/images/icons/material/product/1x/adwords_64dp.png' 
 , 
  
 username 
 : 
  
 'Google Ads Scripts' 
 , 
  
 channel 
 : 
  
 opt_channel 
  
 || 
  
 '#general' 
  
 }; 
  
 const 
  
 options 
  
 = 
  
 { 
  
 method 
 : 
  
 'POST' 
 , 
  
 contentType 
 : 
  
 'application/json' 
 , 
  
 payload 
 : 
  
 JSON 
 . 
 stringify 
 ( 
 slackMessage 
 ) 
  
 }; 
  
 UrlFetchApp 
 . 
 fetch 
 ( 
 SLACK_URL 
 , 
  
 options 
 ); 
 } 
Design a Mobile Site
View Site in Mobile | Classic
Share by: