Google calendar push notification : Unauthorized webhook call

浪尽此生 提交于 2019-12-10 16:22:52

问题


Currently we are in the process of developing one iPhone application that deals with google calendar. There was need of syncing calendar events to the server side. Everything works fine.

But for push notification , we are following this process

Whenever we post request to : https://www.googleapis.com/calendar/v3/calendars/email@gmail.com/events/watch

with parameters

"id":Unique string ( channel id) ,  
"type": "web_hook",
"address": "https://abc-api.herokuapp.com/user/notifications"

In the header , we are sending

Authorization : **Bearer 'Access_token'** 

and content type : json

We already added domain as authorized domain in the google api console

Access_token is user's account access token .

We are getting "Unauthorized webhook call" error.

    {
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "push.webhookUrlUnauthorized",
        "message": "Unauthorized WebHook callback channel: https://abc-api.herokuapp.com/user/notifications"
      }
    ],
    "code": 401,
    "message": "Unauthorized WebHook callback channel: https://abc-api.herokuapp.com/user/notifications"
  }
}

Anyone here who can help us to solve the issue ?


回答1:


You might want to check this post, providing solution like verifying if your domain have a valid (not self-signed) SSL license. Also in google-api-php-client GitHub, instead of setting https://example.com/google/push (resulted in Unauthorized WebHook callback channel) or https://www.example.com/google/push (allowed me to successfully open channel, and object has been returned, however webhook has not been fired) as address they tried https://www.example.com/google/push/index.php and worked.




回答2:


One potential issue is if you're testing in Google's "try it" section of the documentation. It's not stated, but this particular request does not work there.

Otherwise, there are a few things that need to happen with the domain you are supplying in the address. First, you need to make sure its verified in the google developers console for the application you are hitting the api with. Additionally, you need to add the website property to your search console (even if its just an api) and verify ownership.

Also, once you get past the unauthorized address issue, you will get another error requiring a resourceId be supplied.



来源:https://stackoverflow.com/questions/42533431/google-calendar-push-notification-unauthorized-webhook-call

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!