docs: async def fetch_token(self):
          """Fetch new session token from api."""
          url = '{}/login'.format(API_URL)
          payload = 'email={}&password={}'.format(self._email, self._password)
  
          reg = await self.api_post(url, None, payload)
          if reg is None:
              _LOGGER.error('Unable to authenticate and fetch eight token.')
          else:
              self._userid = reg['session']['userId']
              self._token = reg['session']['token']
              self._expdate = reg['session']['expirationDate']
              _LOGGER.debug('UserID: %s, Token: %s', self._userid, self.token)