/// <summary>
 /// Updates a PreApproval.
 /// Just send in <paramref name="request"/> the properties you want to update.
 /// </summary>
 /// <param name="id">The PreApproval ID.</param>
 /// <param name="request">The data to update the PreApproval.</param>
 /// <param name="requestOptions"><see cref="RequestOptions"/></param>
 /// <returns>The updated PreApproval.</returns>
 /// <exception cref="MercadoPagoException">If a unexpected exception occurs.</exception>
 /// <exception cref="MercadoPagoApiException">If the API returns a error.</exception>
 public Resource.PreApproval.PreApproval Update(
     string id,
     PreApprovalUpdateRequest request,
     RequestOptions requestOptions = null)
 {
     return(Send($"/preapproval/{id}", HttpMethod.Put, request, requestOptions));
 }
 /// <summary>
 /// Updates a PreApproval as an asynchronous operation.
 /// Just send in <paramref name="request"/> the properties you want to update.
 /// </summary>
 /// <param name="id">The PreApproval ID.</param>
 /// <param name="request">The data to update the PreApproval.</param>
 /// <param name="requestOptions"><see cref="RequestOptions"/></param>
 /// <param name="cancellationToken">Cancellation token</param>
 /// <returns>A task whose the result is the updated PreApproval.</returns>
 /// <exception cref="MercadoPagoException">If a unexpected exception occurs.</exception>
 /// <exception cref="MercadoPagoApiException">If the API returns a error.</exception>
 public Task <Resource.PreApproval.PreApproval> UpdateAsync(
     string id,
     PreApprovalUpdateRequest request,
     RequestOptions requestOptions       = null,
     CancellationToken cancellationToken = default)
 {
     return(SendAsync($"/preapproval/{id}", HttpMethod.Put, request, requestOptions, cancellationToken));
 }