docs: async def make_request(self, service: str, method: str, path: str,
                             body: bytes=None, query: str=None,
                             headers: dict=None, correlation_id: str=None,
                             content_type: str=None,
                             timeout:int = 30,
                             **kwargs) -> webtypes.Response:
          """
          Method for actually making a request
          :param service: service to make request too
          :param method: HTTP method: GET/PUT/POST etc.
          :param path: routing path.
              Should support dots `foo.2.bars` or slashes `foo/2/bars`
          :param body: request body. Bytes-like object
          :param query: query string. Example: `foo=bar&cabbage=green`
          :param headers: Dictionary of headers
          :param correlation_id:
          :param content_type: example: `application/json`
          :param timeout: time to wait for response in seconds before getting
              an asyncio.TimeoutError
          :param kwargs: Should except **kwargs for compatability for
              other possible options on other transports
              (for example, http might need a `port` option)
          :return:
          """