def METHOD_NAME(
    self, method: str, url: str, json: Optional[dict[Any, Any]] = None
) -> Response:
    try:
        return self._client.request(
            method=method,
            url=url,
            json=json,
            # Content-Type is required for GET too :(
            headers={"Content-Type": "application/json"},
        )
    except TokenExpiredError:
        self._client.token = self._fetch_token()
        raise