| Requires any of the roles: | bookingsupplier-administrator-write, superadmin | 
| PUT | /bookings/{Id}/refund/{PaymentLogId} | Refund a payment on a booking. | 
|---|
import 'package:servicestack/servicestack.dart';
// @ValidateRequest(Validator="IsAuthenticated")
class RefundBookingPayment implements ICompany, IConvertible
{
    /**
    * The company id, if empty will use the company id for the user you are logged in with.
    */
    // @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.")
    String? CompanyId;
    /**
    * The booking id
    */
    // @ApiMember(Description="The booking id", IsRequired=true, ParameterType="path")
    int? Id;
    /**
    * The booking payment log id
    */
    // @ApiMember(Description="The booking payment log id", IsRequired=true, ParameterType="path")
    int? PaymentLogId;
    /**
    * The amount to refund on the checkout.
    */
    // @ApiMember(Description="The amount to refund on the checkout.", IsRequired=true)
    double? Amount;
    /**
    * Any comments to be saved in log.
    */
    // @ApiMember(Description="Any comments to be saved in log.")
    String? Comments;
    RefundBookingPayment({this.CompanyId,this.Id,this.PaymentLogId,this.Amount,this.Comments});
    RefundBookingPayment.fromJson(Map<String, dynamic> json) { fromMap(json); }
    fromMap(Map<String, dynamic> json) {
        CompanyId = json['CompanyId'];
        Id = json['Id'];
        PaymentLogId = json['PaymentLogId'];
        Amount = JsonConverters.toDouble(json['Amount']);
        Comments = json['Comments'];
        return this;
    }
    Map<String, dynamic> toJson() => {
        'CompanyId': CompanyId,
        'Id': Id,
        'PaymentLogId': PaymentLogId,
        'Amount': Amount,
        'Comments': Comments
    };
    getTypeName() => "RefundBookingPayment";
    TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'testapi.bokamera.se', types: <String, TypeInfo> {
    'RefundBookingPayment': TypeInfo(TypeOf.Class, create:() => RefundBookingPayment()),
});
Dart RefundBookingPayment DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /bookings/{Id}/refund/{PaymentLogId} HTTP/1.1 
Host: testapi.bokamera.se 
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"CompanyId":"00000000-0000-0000-0000-000000000000","Id":0,"PaymentLogId":0,"Amount":0,"Comments":"String"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{}