public function buildRequestParts(
        string $url,
        array $query = [],
        array $body = [],
        array $server = []
    ): RequestParts {
        $url = trim($url, '/');
        $url = trim("{$this->version}/$url", '/');
        $url = $this->buildUrlParams($url, $query);

        return new RequestParts(
            $url,
            [
                'json' => $body,
                'headers' => $server,
            ],
            [
                'decode_content' => 'gzip',
            ]
        );
    }