def METHOD_NAME(
    self,
    method="GET",
    path="/",
    data=None,
    json=None,
    params=None,
    headers=None,
):
    url = urljoin(self.api_url, path)
    headers = headers or self.default_headers
    response = self.session.METHOD_NAME(
        method=method,
        url=url,
        headers=headers,
        data=data,
        json=json,
        timeout=self.timeout,
        verify=self.verify_ssl,
        params=params,
    )
    log.debug(
        "HTTP: {} {} -> {} {}".format(
            method, path, response.status_code, response.reason
        )
    )
    log.debug("HTTP: Response text -> {}".format(response.text))
    if self.raw_mode:
        return response
    response.raise_for_status()
    return response