docs: def _validate_token(self):
          
          ''' a method to validate active access token '''
          
          title = '%s._validate_token' % self.__class__.__name__
      
      # construct access token url
          import requests
          url = 'https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=%s' % self.access_token
      
      # retrieve access token details
          try:
              token_details = requests.get(url).json()
          except:
              raise DriveConnectionError(title)
          if 'error' in token_details.keys():
              raise ValueError('access_token for google drive account is %s' % token_details['error_description'])
      
      # determine collection space
      # https://developers.google.com/drive/v3/web/about-organization
          if 'scope' in token_details.keys():
              service_scope = token_details['scope']
              if service_scope.find('drive.appfolder') > -1:
                  self.drive_space = 'appDataFolder'
                  if not self.collection_name:
                      self.collection_name = 'App Data Folder'
              elif service_scope.find('drive.photos.readonly') > -1:
                  self.drive_space = 'photos'
                  if not self.collection_name:
                      self.collection_name = 'Photos'
      
      # determine permissions
      # https://developers.google.com/drive/v3/web/about-auth
              if service_scope.find('readonly') > -1:
                  self.permissions_write = False
              if service_scope.find('readonly.metadata') > -1:
                  self.permissions_content = False
            
      # TODO refresh token
          if 'expires_in' in token_details.keys():
              from time import time
              expiration_date = time() + token_details['expires_in']
          if 'issued_to' in token_details.keys():
              client_id = token_details['issued_to']
      
          return token_details