def refresh(self, client_id, client_secret, refresh_token):
check_type(client_id, basestring, may_be_none=False)<EOL>check_type(client_secret, basestring, may_be_none=False)<EOL>check_type(refresh_token, basestring, may_be_none=False)<EOL>post_data = dict_from_items_with_values(<EOL>grant_type="<STR_LIT>",<EOL>client_id=client_id,<EOL>client_secret=client_secret,<EOL>refresh_token=refresh_token,<EOL>)<EOL>response = requests.post(self._endpoint_url, data=post_data,<EOL>**self._request_kwargs)<EOL>check_response_code(response, EXPECTED_RESPONSE_CODE['<STR_LIT:POST>'])<EOL>json_data = extract_and_parse_json(response)<EOL>return self._object_factory(OBJECT_TYPE, json_data)<EOL>
Return a refreshed Access Token from the provided refresh_token.

        Args:
            client_id(basestring): Provided when you created your integration.
            client_secret(basestring): Provided when you created your
                integration.
            refresh_token(basestring): Provided when you requested the Access
                Token.

        Returns:
            AccessToken: With the access token provided by the Webex Teams
            cloud.

        Raises:
            TypeError: If the parameter types are incorrect.
            ApiError: If the Webex Teams cloud returns an error.