2

Trelloと統合するGoogle Apps Scriptを構築しようとしています。これを使用して、スプレッドシートやフォームからTrello APIに情報をプッシュし、特定のボードのリストにカードを作成するという考えです。pending

私を正しい方向に向ける別の質問を見つけ、 GAS OAuth Documentationに基づいて OAuth に追加しました。問題は、ボードを投稿できないことです。スクリプトを実行すると、OAuth プロンプトが起動し、スクリプトはエラーなしで完了します。プライベートボードからのデータも取得できGETますので、認証は正常に機能していると思います。

では、スクリプトPOSTが Trello にアクセスできない原因は何ですか?

ここに私が取り組んでいるコードがあります:

var trelloKey = [Trello API key];
var trelloSecret = [Trello API key secret];
var trelloList = [the id of the list we're posting to];

var oauthConfig = UrlFetchApp.addOAuthService('trello');
    oauthConfig.setAccessTokenUrl('https://trello.com/1/OAuthGetAccessToken');
    oauthConfig.setRequestTokenUrl('https://trello.com/1/OAuthGetRequestToken');
    oauthConfig.setAuthorizationUrl('https://trello.com/1/OAuthAuthorizeToken');
    oauthConfig.setConsumerKey(trelloKey);
    oauthConfig.setConsumerSecret(trelloSecret);

function createTrelloCard() {

  //POST [/1/cards], Required permissions: write
  var payload = {'name': 'apiUploadedCard', 
                 'desc': 'description', 
                 'pos': 'top', 
                 'due': '', 
                 'idList': trelloList};

  var url = 'https://api.trello.com/1/cards'
  var options = {'method' : 'post',
                 'payload' : payload,
                 'oAuthServiceName' : 'trello',
                 'oAuthUseToken' : 'always'};

  UrlFetchApp.fetch(url, options);
}
4

2 に答える 2

1

認可 URL にscope=read,writeを追加してみてください。

から:

oauthConfig.setAuthorizationUrl('https://trello.com/1/OAuthAuthorizeToken');

に:

oauthConfig.setAuthorizationUrl("https://trello.com/1/OAuthAuthorizeToken?scope=read,write");
于 2014-03-27T22:40:57.883 に答える