Я могу читать / изменять gmail из своей учетной записи Gmail через Gmail API, используя его учетные данные.
using Google.Apis.Auth.OAuth2;
using Google.Apis.Gmail.v1;
Но теперь ИТ-служба предоставляет мне общую учетную запись Gmail или делегированную учетную запись Gmail. Поэтому я хочу получить доступ, прочитать / изменить письмо этого делегата .
Как я могу получить доступ и прочитать делегированный gmail с помощью Gmail API?
Есть ли пример?
Большая часть кода на сайтах API Gmail написана на Python и Java, чего я не понимаю.
Пожалуйста, пролите немного света.
Что я пробовал:
Я могу получить доступ, читать свою почту, используя Gmail API -
private static string[] Scopes = { GmailService.Scope.GmailModify };
private UserCredential _credential;
приватная строка credPath = "token.json";
public UserCredential GetCredential()
{
using (var stream =
new FileStream("credentials.json", FileMode.Open, FileAccess.Read))
{
_credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
Scopes,
"user",
CancellationToken.None,
new FileDataStore(credPath, true)).Result;
}
return _credential;
}
GmailCredentials Info = new GmailCredentials();
private static string ApplicationName = "xxxxx";
var service = new GmailService(new BaseClientService.Initializer()
{
HttpClientInitializer = GetCredential(),
ApplicationName = ApplicationName,
});
UsersResource.MessagesResource.ListRequest request = service.Users.Messages.List("me");
request.Q = ConfigurationManager.AppSettings["filter"];
request.MaxResults = Convert.ToInt64(ConfigurationManager.AppSettings["maxCount"]); //5;
messages = request.Execute().Messages;
List<string> lstRemove = new List<string>() { "UNREAD" };
/// Read the individual message and output as List<Email>
for (int index = 0; index < messages.Count; index++)
{
//... Do the code...
}