private function getResponse($endpoint, $operation, array $json) 
    {
        $result = null;
        $uri = $this->config->getBaseUrl() . '/api/';
        $uri .= ConfigurationVO::API_VERSION . $endpoint;

        $allowedOperations = ['get', 'post'];
        if(!in_array($operation, $allowedOperations)) {
            echo 'ERROR: only ' . implode(',', $allowedOperations) . 'are allowed';
            return $result;
        }

        try {
            $response = $this->client->{$operation}($uri, [
            'headers' => [
              'Authorization' => 'Bearer ' . $this->config->getBearer(),
            ],
            'json' => $json,
            ]);
            // @todo $request->getHeader('content-type')
            if($response instanceof ResponseInterface
              && $response->getStatusCode() == '200') {
                $result = json_decode($response->getBody(), true);
            }else{
                echo 'ERROR: Status code ' . $response->getStatusCode();
            }
            // @todo check thrown exception
        } catch (\Exception $exception) {
            echo 'ERROR: ' . $exception->getMessage();
        }
        return $result;
    }