11

Google Apps スクリプトを使用して下書きメールを作成できるかどうかを知りたいです。はいの場合、どのように可能ですか?

よろしく、 セバスチャン

4

4 に答える 4

15

現時点では、Draftsフォルダに表示される新しいメッセージを作成する方法はありません。この機能は以前にリクエストされていました -問題 985を参照してください。最新情報を受け取りたい場合は、問題にアクセスしてスターを付けてください。

編集: Google Apps Script ではまだネイティブにサポートされていませんが、getOAuthToken()認証に使用する GMail API を使用してドラフトを作成できます (2014 年 2 月に導入)。ドラフトのサポートは 2014 年 6 月に API に追加されました。GAS からの使用例は、上記の問題のコメント 29に示されています。便宜上、コードをここに再現します。

function createDraft() {

  var forScope = GmailApp.getInboxUnreadCount(); // needed for auth scope

  var raw = 
      'Subject: testing Draft\n' + 
      //'To: test@test.com\n' +
      'Content-Type: multipart/alternative; boundary=1234567890123456789012345678\n' +
      'testing Draft msg\n' + 
      '--1234567890123456789012345678--\n';

  var draftBody = Utilities.base64Encode(raw);

  var params = {method:"post",
                contentType: "application/json",
                headers: {"Authorization": "Bearer " + ScriptApp.getOAuthToken()},
                muteHttpExceptions:true,
                payload:JSON.stringify({
                  "message": {
                    "raw": draftBody
                  }
                })
               };

  var resp = UrlFetchApp.fetch("https://www.googleapis.com/gmail/v1/users/me/drafts", params);
  Logger.log(resp.getContentText());
  /*
   * sample resp: {
   *   "id": "r3322255254535847929",
   *   "message": {
   *     "id": "146d6ec68eb36de8",
   *     "threadId": "146d6ec68eb36de8",
   *     "labelIds": [ "DRAFT" ]
   *   }
   * }
   */
}
于 2013-07-15T18:53:18.780 に答える
1

私は今、Zapier 経由でこれを行っています。素晴らしいです。

このザップを参照してくださいhttp://zpr.io/fhmT

この件に関するGoogleのドキュメントは次のとおりです。

https://developers.google.com/gmail/api/guides/drafts

于 2014-08-23T03:05:58.797 に答える