docs: def __prepare_gprest_call(self, requestURL, params=None, headers=None, restType='GET', body=None):
          """Returns Authorization type and GP headers
          """
          if self.__serviceAccount.is_iam_enabled():
              auth = None
              iam_api_key_header = {
                  self.__AUTHORIZATION_HEADER_KEY: str('API-KEY '+self.__serviceAccount.get_api_key())
              }
              if not headers is None:
                  headers.update(iam_api_key_header)
              else:
                  headers = iam_api_key_header
          elif self.__auth == self.BASIC_AUTH:
              auth = (self.__serviceAccount.get_user_id(),
                      self.__serviceAccount.get_password())
          elif self.__auth == self.HMAC_AUTH:
              auth = None
  
              # need to prepare url by appending params to the end
              # before creating the hmac headers
              fakeRequest = requests.PreparedRequest()
              fakeRequest.prepare_url(requestURL, params=params)
              preparedUrl = fakeRequest.url
  
              hmacHeaders = self.__get_gaas_hmac_headers(method=restType,
                                                         url=preparedUrl, body=body)
              if not headers is None:
                  headers.update(hmacHeaders)
              else:
                  headers = hmacHeaders
          return auth, headers