PatchAsync Method

Make a type-safe PATCH request for partial updates.

Namespace

RestClient.Net

Containing Type

HttpClientExtensions

Signature

Same signature as PostAsync.

public static async Task<Result<TSuccess, HttpError<TError>>> PatchAsync<TRequest, TSuccess, TError>(
    this HttpClient httpClient,
    AbsoluteUrl url,
    TRequest body,
    Func<TRequest, HttpContent> serializeRequest,
    Func<HttpResponseMessage, CancellationToken, Task<TSuccess>> deserializeSuccess,
    Func<HttpResponseMessage, CancellationToken, Task<TError>> deserializeError,
    IReadOnlyDictionary<string, string>? headers = null,
    CancellationToken cancellationToken = default
)

Example

var patch = new PatchUserRequest { Email = "new.email@example.com" };

var result = await httpClient.PatchAsync(
    url: "https://api.example.com/users/123".ToAbsoluteUrl(),
    body: patch,
    serializeRequest: SerializeJson,
    deserializeSuccess: DeserializeUser,
    deserializeError: DeserializeApiError
);

See Also