web-dev-qa-db-ja.com

Gmail APIを使用して自分が所有するGmailアカウントにアクセスするにはどうすればよいですか?

ノードスクリプトをcronジョブとして実行し、GmailのAPIを使用して自分が所有するGmailアカウントをポーリングします。

私は これらのクイックスタート手順 に従っています:

quickstart

私は最初のステップで立ち往生しています。 cronスクリプトの認証情報をリクエストすると、「サインインにはユーザーの操作が必要なため、UIがないプラットフォームからユーザーデータにアクセスできない」と通知されます。

enter image description here

ドキュメントは一般的に混乱しており、「サービスアカウント」、「OAuth」などについて言及しています。どちらが私のユースケースに当てはまり、どれが当てはまらないかはわかりません。私は多くのSaaS APIを使用しましたが、一般的なワークフローは、アカウントにログインし、APIキーとシークレットを取得し、スクリプトでそれらを使用してAPIにアクセスすることです。これはではありませんGmail APIで使用されているパラダイムなので、ガイダンスや、より明確な指示へのリンクをいただければ幸いです。

18
Jonah

また、ドキュメントが時々混乱する可能性があることもわかりましたが、実際に取得したいのは、非常に簡単です。

  1. Googleでアプリを登録 、そしてアプリにアクセスを許可するAPIを指定します(この場合はGmail APIのみ)。これにより、client_idclient_secret(上記のclient_secrets.jsonファイルの内容)の2つの文字列が得られます。
  2. 自分のアカウント専用のスクリプトを作成するだけなので、httpサーバーは必要ありません。 Oauth Playground で十分です。右上の設定Cogを押して、独自のOAuth資格情報を使用します。
  3. APIのリストからGmail APIを選択し、説明されている手順に従います。

これで、access_tokenrefresh_tokenを使用できるようになり、スクリプトを無期限に実行し続けることができます。

8
Tholle

Gmail APIの使用を完全に理解するには、 Gmail APIの概要 を実行することが実際に違いをもたらします。

また、これらのドキュメントを使用して、Gmailアプリの作成を開始することもできます。

これらがお役に立てば幸いです。

0
Teyam