Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
'use strict';
function getInstance(consumer_key, consumer_secret) {
return new TwitterWebService_(consumer_key, consumer_secret);
var TwitterWebService_ = function (consumer_key, consumer_secret) {
this.consumer_key = consumer_key;
this.consumer_secret = consumer_secret;
TwitterWebService_.prototype.getService = function() {
return OAuth1.createService('Twitter')
TwitterWebService_.prototype.authorize = function() {
var service = this.getService();
if (service.hasAccess()) {
Logger.log('Already authorized');
} else {
var authorizationUrl = service.authorize();
Logger.log('Open the following URL and re-run the script: %s', authorizationUrl);
TwitterWebService_.prototype.reset = function() {
var service = this.getService();
TwitterWebService_.prototype.authCallback = function(request) {
var service = this.getService();
var isAuthorized = service.handleCallback(request);
var mimeType = ContentService.MimeType.TEXT;
if (isAuthorized) {
return ContentService.createTextOutput('Success').setMimeType(mimeType);
} else {
return ContentService.createTextOutput('Denied').setMimeType(mimeType);

This comment has been minimized.

Copy link
Owner Author

@M-Igashi M-Igashi commented Dec 22, 2016

Forked to update OAuth1 library v14 due to Project key EoS. You can use following Script ID to include the library.
The sample code written by YoshiyukiHirano is here.


This comment has been minimized.

Copy link

@kazooou kazooou commented Jun 18, 2018

2018年6月からTwitter社がAPIの仕様を変更して、Callback URLの設定を必須にしたのですが、このスクリプトのどこを改造したら良いでしょうか。


This comment has been minimized.

Copy link

@zensai3805 zensai3805 commented Jul 3, 2018

Callback URLは、"[GASのスクリプトID]/usercallback” にて設定した所正しく動いています。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment