Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using Google Apps Script and the Pastebin.com API to post a paste

I am trying to make a Pastebin.com paste using Google Apps Script from the spreadsheet script editor. Can anyone tell me what I'm doing wrong?

function postPastebinPost() {
  var options, url, apiKey, payload, response;

  apiKey = <api key goes here>;
  payload = 'Hello World';

  options = {
    'method' : 'post',
    'payload' : payload
  };

  url = 'https://pastebin.com/api/api_post.php'
    + '?api_dev_key=' + apiKey
    + '&api_option=paste'
    + '&api_paste_code=' + encodeURIComponent(payload);

  response = UrlFetchApp.fetch(url, options);
  Logger.log(response);
}

I run this and my log reads Bad API request, invalid api_option. I've searched for solutions but I have not found any.

Documentation:

• Pastebin.com API

• Google Apps Script's UrlFetchApp Class

like image 503
Mio Winter Avatar asked Jan 28 '26 09:01

Mio Winter


1 Answers

The parameters should be passed in the payload of the POST request.

function postPastebinPost() {

  var apiKey = 'YOUR KEY GOES HERE';
  var text = 'Hello World';

  var payload = {
    api_dev_key: apiKey,
    api_option: 'paste',
    api_paste_code:  text
  };

  var options = {
    method : 'POST',
    payload: payload
  };

  var url = 'https://pastebin.com/api/api_post.php';

  var response = UrlFetchApp.fetch(url, options);
  Logger.log(response.getContentText());
}
like image 110
Amit Agarwal Avatar answered Jan 31 '26 05:01

Amit Agarwal



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!