public function dumpRequest(): array
    {
        if (empty($this->request)) {
            return ['http_status' => $this->httpStatus, 'response' => $this->data];
        }
        $this->request->getBody()->rewind();
        # rewind the request
        $size = $this->request->getBody()->getSize() ?: 1024;
        # get the size, we need it to be able to read through; else we assume 1024
        $bodyParams = json_decode($this->request->getBody()->read($size), true);
        # the body parameters
        $possibleJsonString = (string) $this->request->getBody();
        # cast it to a string
        $jsonData = json_decode($possibleJsonString);
        $uri = $this->request->getUri();
        $url = $uri->getScheme() . '://' . $uri->getAuthority() . '/' . $uri->getPath();
        return [
            'http_status' => $this->httpStatus,
            'endpoint' => $url,
            'params'   => $bodyParams,
            'response' => $jsonData ?: $possibleJsonString
        ];
    }