@handler.asynchronous(datastore=True)
  @gen.engine
  def post(self, action):
    yield gen.Task(self._StartJSONRequest, action, self.request, json_schema.AUTH_FB_GOOGLE_REQUEST)

    device_dict = self._request_message.dict.get('device', None)

    if self.get_argument('refresh_token', False):
      refresh_token = self.get_argument('refresh_token')
      url = AuthGoogleHandler._OAUTH2_ACCESS_TOKEN_URL
      args = {'client_id': self.settings['google_client_mobile_id'],
              'client_secret': self.settings['google_client_mobile_secret'],
              'refresh_token': refresh_token,
              'grant_type': 'refresh_token'}
      http_client = httpclient.AsyncHTTPClient()
      response = yield gen.Task(http_client.fetch, url, method='POST', body=urllib.urlencode(args))
      self._GetUserInfo(device_dict, refresh_token, response)
    else:
      raise web.HTTPError(400, 'refresh_token was not provided')
Delete API query error responses.
dataset/ETHPy150Open viewfinderco/viewfinder/backend/www/auth_google.py/AuthGoogleHandler.post--crossover with--dataset/ETHPy150Open googleanalytics/google-analytics-super-proxy/src/controllers/owner.py/DeleteQueryErrorsHandler.post