Мне нужно получить все сообщения с ярлыками для ведения статистики.У меня есть подсказка, потому что, когда я выполняю свою электронную почту, у меня не возникает никаких проблем, но цель - получить статистику общего аккаунта Gmail.Например, если я использовал следующий скрипт:
/**
* Lists the labels in the user's account.
*/
function listLabels() {
var response = Gmail.Users.Labels.list('test@company.com');
if (response.labels.length == 0) {
Logger.log('No labels found.');
} else {
Logger.log('Labels:');
for (var i = 0; i < response.labels.length; i++) {
var label = response.labels[i];
Logger.log('- %s', label.name);
}
}
}
Где test@company.com - моя общая учетная запись, и я всегда получаю отказ.Я не уверен, что проблема с общей компанией или метод регистрации неверен.Дело в том, что если я делаю запись с моей общей электронной почтой, я действительно вижу свою личную учетную запись.
Спасибо за вашу помощь.
Обновление с новым кодом (данные JSON являются поддельными):
var JSON = {
"private_key": "xxxx",
"client_email": "mail_shared@test.com",
"client_id": "client_id.apps.googleusercontent.com",
"user_email": "personal@test.com"
};
function getOAuthService(user) {
return OAuth2.createService("Service Account")
.setTokenUrl('https://accounts.google.com/o/oauth2/token')
.setPrivateKey(JSON.private_key)
.setIssuer(JSON.client_email)
.setSubject(JSON.user_email)
.setPropertyStore(PropertiesService.getScriptProperties())
.setParam('access_type', 'offline')
.setScope('https://www.googleapis.com/auth/gmail.labels');
}
function reset() {
var service = getOAuthService();
service.reset();
}
/**
* Lists the labels in the user's account.
*/
function listLabels() {
var service = getOAuthService();
service.reset();
var response = Gmail.Users.Messages.list('mail_shared@test.com');
if (response.labels.length == 0) {
Logger.log('No labels found.');
} else {
Logger.log('Labels:');
for (var i = 0; i < response.labels.length; i++) {
var label = response.labels[i];
Logger.log('- %s', label.name);
}
}
}
Я пробовал следующие разные области:
https://www.googleapis.com/auth/drive https://www.googleapis.com/auth/gmail.settings.basic https://www.googleapis.com/auth/gmail.readonly https://www.googleapis.com/auth/gmail.labels