code: def get_authorization_url(self, requested_scopes=None,
                                redirect_uri=OAUTH_REDIRECT_URL, **kwargs):
          
  
          # TODO: remove this warning in future releases
          if redirect_uri == OAUTH_REDIRECT_URL:
              warnings.warn('The default redirect uri was changed in version 1.1.4. to'
                            ' "https://login.microsoftonline.com/common/oauth2/nativeclient".'
                            ' You may have to change the registered app "redirect uri" or pass here the old "redirect_uri"',
                            DeprecationWarning)
  
          client_id, client_secret = self.auth
  
          if requested_scopes:
              scopes = requested_scopes
          elif self.scopes is not None:
              scopes = self.scopes
          else:
              raise ValueError('Must provide at least one scope')
  
          self.session = oauth = OAuth2Session(client_id=client_id,
                                               redirect_uri=redirect_uri,
                                               scope=scopes)
          self.session.proxies = self.proxy
          if self.request_retries:
              retry = Retry(total=self.request_retries, read=self.request_retries,
                            connect=self.request_retries,
                            backoff_factor=RETRIES_BACKOFF_FACTOR,
                            status_forcelist=RETRIES_STATUS_LIST)
              adapter = HTTPAdapter(max_retries=retry)
              self.session.mount('http://', adapter)
              self.session.mount('https://', adapter)
  
          # TODO: access_type='offline' has no effect according to documentation
          #  This is done through scope 'offline_access'.
          auth_url, state = oauth.authorization_url(
              url=self._oauth2_authorize_url, access_type='offline')
  
          return auth_url
docs: Initializes the oauth authorization flow, getting the
          authorization url that the user must approve.
  
          :param list[str] requested_scopes: list of scopes to request access for
          :param str redirect_uri: redirect url configured in registered app
          :param kwargs: allow to pass unused params in conjunction with Connection
          :return: authorization url
          :rtype: str