async Task <HttpResponseMessage> SendRequest(IApiRequest request, HttpCompletionOption option,
                                                     CancellationToken cancelToken)
        {
            using var message = request.ToApiRequestMessage();

            var response = await this._innerClient
                           .SendAsync(message, option, cancelToken)
                           .ConfigureAwait(false);

            cancelToken.ThrowIfCancellationRequested();

            if (response.IsSuccessStatusCode)
            {
                return(response);
            }

            throw GotenbergApiException.Create(request, response);
        }