主题是在云pub / sub上创建的,但无法在该主题上创建监视

我想在云发布/子主题上创建监视但无法创建它.为此,我正在使用其余请求

request_Req.post({

url:'https://www.googleapis.com/gmail/v1/users/me/watch',
headers:{
   'content-type': 'application/json',
   'Authorization': 'Bearer '+ access_token,
},
scope : [
    'https://mail.google.com/'
],

'body': JSON.stringify({
    'topicName' : "/projects/ProjectId/topics/TopicId",
    'labelIds' : ["INBOX"] 
});
}),function(error, resp, body){

});

但我收到错误消息错误发送测试消息到云
PubSub / projects / ProjectID / topics / TopicId:资源未找到资源= TopicId

最佳答案
Google Cloud Pubsub主题必须存在于同一Google Console项目中,该项目用于对用户进行身份验证.在Google Console中检查/ projects / ProjectId / topics / TopicId您的项目并确保存在Pubsub主题.此外,您必须授予对Gmail服务的访问权限,才能通过以下请求将消息发布到您的Pubsub主题:

POST "https://pubsub.googleapis.com/v1beta2/{resource=/projects/**ProjectId**/topics/**TopicId**}:setIamPolicy"
Content-type: application/json

{
  "policy": {
    "bindings": [{
      "role": "roles/pubsub.publisher",
      "members": ["serviceAccount:gmail-api-push@system.gserviceaccount.com"],
    }],
  }
}

如果未授予gmail将消息发布到Pubsub主题的权限,则不会创建监视请求.尝试API explorer设置权限.

转载注明原文:主题是在云pub / sub上创建的,但无法在该主题上创建监视 - 代码日志