protected function query($uri, array $params = [], $method = self::METHOD_POST)
    {
        $request = new Request($method, $uri, [
            'Content-Type'  => 'application/json',
            'Authorization' => 'Token ' . $this->token,
            'X-Secret'      => $this->secret,
        ], 0 < count($params) ? json_encode($params) : null);

        $response = $this->httpClient->send($request, $this->httpOptions);

        $result = json_decode($response->getBody(), true);

        if (json_last_error() !== JSON_ERROR_NONE) {
            throw new RuntimeException('Error parsing response: ' . json_last_error_msg());
        }

        if (empty($result)) {
            throw new RuntimeException('Empty result');
        }

        return array_shift($result);
    }
protected function query($uri, array $params = [], $method = self::METHOD_POST)
    {
        $request = new Request($method, $uri, [
            'Content-Type'  => 'application/json',
            'Authorization' => 'Token ' . $this->token,
            'X-Secret'      => $this->secret,
        ], 0 < count($params) ? json_encode($params) : null);

        $response = $this->httpClient->send($request, $this->httpOptions);

        $result = json_decode($response->getBody(), true);

        if (json_last_error() !== JSON_ERROR_NONE) {
            throw new RuntimeException('Error parsing response: ' . json_last_error_msg());
        }

        if (empty($result)) {
            throw new RuntimeException('Empty result');
        }

        return array_shift($result);
    }
protected function query ( $ uri , array $ params = [ ] , $ method = self :: METHOD_POST ) { $ request = new Request ( $ method , $ uri , [ 'Content-Type' => 'application/json' , 'Authorization' => 'Token ' . $ this -> token , 'X-Secret' => $ this -> secret , ] , 0 < count ( $ params ) ? json_encode ( $ params ) : null ) ; $ response = $ this -> httpClient -> send ( $ request , $ this -> httpOptions ) ; $ result = json_decode ( $ response -> getBody ( ) , true ) ; if ( json_last_error ( ) !== JSON_ERROR_NONE ) { throw new RuntimeException ( 'Error parsing response: ' . json_last_error_msg ( ) ) ; } if ( empty ( $ result ) ) { throw new RuntimeException ( 'Empty result' ) ; } return array_shift ( $ result ) ; }
Requests API.

@param string $uri
@param array  $params

@param string $method

@return array
@throws RuntimeException
@throws InvalidArgumentException
Requests API .