APIコンソールの[email protected]
の下にプロジェクトを作成しました。Analytics API
とSearch Console API
サービスのサービスアカウントを正常に使用しています。私は今Gmail V1
APIを有効にしてこのコードを実行しました:サービスアカウントを使用したGmail API
gmail_scopes = [
"https://mail.google.com/",
"https://www.googleapis.com/auth/gmail.compose",
"https://www.googleapis.com/auth/gmail.readonly",
"https://www.googleapis.com/auth/gmail.send",
"https://www.googleapis.com/auth/gmail.readonly"
]
gmail = Google::Apis::GmailV1::GmailService.new
gmail.authorization = Google::Auth.get_application_default(gmail_scopes)
これは私が解析し、検索コンソールAPIを認可するために使用します(もちろん、異なるスコープを持つ)同じコードです。
私はこれを実行すると、私はBAD REQUEST
Failed Precondition
エラーが発生しますが:
gmail.get_user_profile("[email protected]")
いくつかのグーグルでは、APIがserviceaccountの電子メールアドレスの存在しない受信トレイにアクセスしようとinitiatlizationでいることをされているため、つまり私に指示APIサービスがその受信トレイを使用するように、[email protected]
を含める必要があります。
どうすればよいですか?
私は、次の試してみた「...」常に
gmail.authorization = Google::Auth.get_application_default(gmail_scopes, username: '...')
gmail.authorization = Google::Auth.get_application_default(gmail_scopes, {username: '...'})
gmail.authorization.username = '...'