def login(self, **params):
        """
        **login**

        Use the current credentials to get a valid Gett access token.

        Input:
            * A dict of parameters to use for the login attempt (optional)

        Output:
            * ``True``

        Example::

            if client.user.login():
                print "You have %s bytes of storage remaining." % ( client.user.storage_limit - client_user.storage_used )
        """

        if not params:
            params = {
                "apikey": self.apikey,
                "email": self.email,
                "password": self.password
            }

        response = GettRequest().post("/users/login", params)

        if response.http_status == 200:
            self._access_token = response.response['accesstoken']
            self.refresh_token = response.response['refreshtoken']
            self.access_token_expires = int(time()) + response.response['expires']
            self.userid = response.response['user']['userid']
            self.fullname = response.response['user']['fullname']
            self.storage_used = response.response['user']['storage']['used']
            self.storage_limit = response.response['user']['storage']['limit']

            return True
**login**

        Use the current credentials to get a valid Gett access token.

        Input:
            * A dict of parameters to use for the login attempt (optional)

        Output:
            * ``True``

        Example::

            if client.user.login():
                print "You have %s bytes of storage remaining." % ( client.user.storage_limit - client_user.storage_used )