title: Google Calendar "Unauthorized WebHook callback channel" error
body: <p>I'm trying to set-up push notifications with Google Calendar. Currently I'm using the <a href="https://developers.google.com/oauthplayground" rel="nofollow">oAuth playground</a> to get a feel for how it works. So I've selected Calendar API v3, authorised it, used the authorisation code and access token provided and querying the following URI: <a href="https://www.googleapis.com/calendar/v3/calendars/tl7grdo4gqdqj4gtanpioksi6k@group.calendar.google.com/events/watch" rel="nofollow">https://www.googleapis.com/calendar/v3/calendars/tl7grdo4gqdqj4gtanpioksi6k@group.calendar.google.com/events/watch</a>. The request contains the following body:</p>
  
  <blockquote>
    <p><code>
    {
      "id": "154345345-345345345", 
      "type": "web_hook",
      "address": "https://www.somedomain.com/web_hook.php"
    }
    </code></p>
  </blockquote>
  
  <p>I have added the domain to webmaster tools to prove ownership and also added it to the "allowed domains" list within the <a href="https://console.developers.google.com" rel="nofollow">developers console</a>.</p>
  
  <p>Sending the following request:</p>
  
  <blockquote>
    <p><code>
    POST /calendar/v3/calendars/tl7grdo4gqdqj4gtanpioksi6k@group.calendar.google.com/events/watch HTTP/1.1
    Host: www.googleapis.com
    Content-length: 105
    Content-type: application/json
    Authorization: Bearer &lt;some access token&gt;
    {
       "id": "154345345-345345345", 
       "type": "web_hook",
       "address": "https://www.somedomain.com/web_hook.php"
    }</code></p>
  </blockquote>
  
  <p>Produces the following response:</p>
  
  <blockquote>
    <p><code>
    HTTP/1.1 401 Unauthorized
    Content-length: 318
    X-xss-protection: 1; mode=block
    X-content-type-options: nosniff
    Expires: Tue, 09 Sep 2014 13:22:51 GMT
    Server: GSE
    Cache-control: private, max-age=0
    Date: Tue, 09 Sep 2014 13:22:51 GMT
    X-frame-options: SAMEORIGIN
    Content-type: application/json; charset=UTF-8
    Www-authenticate: Bearer realm="https://accounts.google.com/AuthSubRequest", error=invalid_token
    {
      "error": {
        "code": 401, 
        "message": "Unauthorized WebHook callback channel: https://www.somedomain.com/web_hook.php", 
        "errors": [
          {
            "domain": "global", 
            "message": "Unauthorized WebHook callback channel: https://www.somedomain.com/web_hook.php", 
            "reason": "push.webhookUrlUnauthorized"
          }
        ]
      }
    }
    </code></p>
  </blockquote>
  
  <p>I'm hoping to get some very basic but specific steps I need to follow to get this functioning correctly. Thanks for any help.</p>