BokaMera.API.Host

<back to all web services

CreateRebateCodeTransaction

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
POST/rebatecodes/transactionsCreate transaction for the rebate codeCreate transaction for the rebate code
import java.math.*;
import java.util.*;
import net.servicestack.client.*;

public class dtos
{

    @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
    @ValidateRequest(Validator="IsAuthenticated")
    public static class CreateRebateCodeTransaction
    {
        /**
        * 
        */
        @ApiMember(Description="", IsRequired=true)
        public UUID CompanyId = null;

        /**
        * Rebate code id to which you wish to add transaction
        */
        @ApiMember(Description="Rebate code id to which you wish to add transaction", IsRequired=true)
        public Integer RebateCodeId = null;

        @ApiMember(IsRequired=true)
        public Double Amount = null;

        @ApiMember(IsRequired=true)
        public Integer Usage = null;

        @ApiMember()
        public Integer BookingId = null;

        /**
        * If you want to Increase = 0 or Decrease = 1 the value
        */
        @ApiMember(Description="If you want to Increase = 0 or Decrease = 1 the value", IsRequired=true)
        public AmountChangeType ChangeType = null;
        
        public UUID getCompanyId() { return CompanyId; }
        public CreateRebateCodeTransaction setCompanyId(UUID value) { this.CompanyId = value; return this; }
        public Integer getRebateCodeId() { return RebateCodeId; }
        public CreateRebateCodeTransaction setRebateCodeId(Integer value) { this.RebateCodeId = value; return this; }
        public Double getAmount() { return Amount; }
        public CreateRebateCodeTransaction setAmount(Double value) { this.Amount = value; return this; }
        public Integer getUsage() { return Usage; }
        public CreateRebateCodeTransaction setUsage(Integer value) { this.Usage = value; return this; }
        public Integer getBookingId() { return BookingId; }
        public CreateRebateCodeTransaction setBookingId(Integer value) { this.BookingId = value; return this; }
        public AmountChangeType getChangeType() { return ChangeType; }
        public CreateRebateCodeTransaction setChangeType(AmountChangeType value) { this.ChangeType = value; return this; }
    }

    public static enum AmountChangeType
    {
        Increase,
        Decrease;
    }

    public static class RebateCodeTransactionResponse
    {
        public ResponseStatus ResponseStatus = null;
        public RebateCodeTransactionQueryResponse RebateCodeTransactionItem = null;
        
        public ResponseStatus getResponseStatus() { return ResponseStatus; }
        public RebateCodeTransactionResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
        public RebateCodeTransactionQueryResponse getRebateCodeTransactionItem() { return RebateCodeTransactionItem; }
        public RebateCodeTransactionResponse setRebateCodeTransactionItem(RebateCodeTransactionQueryResponse value) { this.RebateCodeTransactionItem = value; return this; }
    }

    public static class RebateCodeTransactionQueryResponse
    {
        public Integer Id = null;
        public UUID CompanyId = null;
        public String Note = null;
        public Integer RebateCodeId = null;
        public String RebateCodeSign = null;
        public Integer RebateCodeTypeId = null;
        public String RebateCodeTypeName = null;
        public Double Amount = null;
        public Integer BookingId = null;
        public Date UpdatedDate = null;
        public Date CreatedDate = null;
        public RebateCodeServiceResponse Service = null;
        public RebateCodeCustomerResponse Customer = null;
        public String PriceSign = null;
        
        public Integer getId() { return Id; }
        public RebateCodeTransactionQueryResponse setId(Integer value) { this.Id = value; return this; }
        public UUID getCompanyId() { return CompanyId; }
        public RebateCodeTransactionQueryResponse setCompanyId(UUID value) { this.CompanyId = value; return this; }
        public String getNote() { return Note; }
        public RebateCodeTransactionQueryResponse setNote(String value) { this.Note = value; return this; }
        public Integer getRebateCodeId() { return RebateCodeId; }
        public RebateCodeTransactionQueryResponse setRebateCodeId(Integer value) { this.RebateCodeId = value; return this; }
        public String getRebateCodeSign() { return RebateCodeSign; }
        public RebateCodeTransactionQueryResponse setRebateCodeSign(String value) { this.RebateCodeSign = value; return this; }
        public Integer getRebateCodeTypeId() { return RebateCodeTypeId; }
        public RebateCodeTransactionQueryResponse setRebateCodeTypeId(Integer value) { this.RebateCodeTypeId = value; return this; }
        public String getRebateCodeTypeName() { return RebateCodeTypeName; }
        public RebateCodeTransactionQueryResponse setRebateCodeTypeName(String value) { this.RebateCodeTypeName = value; return this; }
        public Double getAmount() { return Amount; }
        public RebateCodeTransactionQueryResponse setAmount(Double value) { this.Amount = value; return this; }
        public Integer getBookingId() { return BookingId; }
        public RebateCodeTransactionQueryResponse setBookingId(Integer value) { this.BookingId = value; return this; }
        public Date getUpdatedDate() { return UpdatedDate; }
        public RebateCodeTransactionQueryResponse setUpdatedDate(Date value) { this.UpdatedDate = value; return this; }
        public Date getCreatedDate() { return CreatedDate; }
        public RebateCodeTransactionQueryResponse setCreatedDate(Date value) { this.CreatedDate = value; return this; }
        public RebateCodeServiceResponse getService() { return Service; }
        public RebateCodeTransactionQueryResponse setService(RebateCodeServiceResponse value) { this.Service = value; return this; }
        public RebateCodeCustomerResponse getCustomer() { return Customer; }
        public RebateCodeTransactionQueryResponse setCustomer(RebateCodeCustomerResponse value) { this.Customer = value; return this; }
        public String getPriceSign() { return PriceSign; }
        public RebateCodeTransactionQueryResponse setPriceSign(String value) { this.PriceSign = value; return this; }
    }

    public static class RebateCodeServiceResponse
    {
        public Integer Id = null;
        public String Name = null;
        public String Description = null;
        public Boolean Active = null;
        
        public Integer getId() { return Id; }
        public RebateCodeServiceResponse setId(Integer value) { this.Id = value; return this; }
        public String getName() { return Name; }
        public RebateCodeServiceResponse setName(String value) { this.Name = value; return this; }
        public String getDescription() { return Description; }
        public RebateCodeServiceResponse setDescription(String value) { this.Description = value; return this; }
        public Boolean isActive() { return Active; }
        public RebateCodeServiceResponse setActive(Boolean value) { this.Active = value; return this; }
    }

    public static class RebateCodeCustomerResponse
    {
        public UUID Id = null;
        public String Firstname = null;
        public String Lastname = null;
        public String Email = null;
        public String Phone = null;
        public String ImageUrl = null;
        
        public UUID getId() { return Id; }
        public RebateCodeCustomerResponse setId(UUID value) { this.Id = value; return this; }
        public String getFirstname() { return Firstname; }
        public RebateCodeCustomerResponse setFirstname(String value) { this.Firstname = value; return this; }
        public String getLastname() { return Lastname; }
        public RebateCodeCustomerResponse setLastname(String value) { this.Lastname = value; return this; }
        public String getEmail() { return Email; }
        public RebateCodeCustomerResponse setEmail(String value) { this.Email = value; return this; }
        public String getPhone() { return Phone; }
        public RebateCodeCustomerResponse setPhone(String value) { this.Phone = value; return this; }
        public String getImageUrl() { return ImageUrl; }
        public RebateCodeCustomerResponse setImageUrl(String value) { this.ImageUrl = value; return this; }
    }

}

Java CreateRebateCodeTransaction DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /rebatecodes/transactions HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	CompanyId: 00000000-0000-0000-0000-000000000000,
	RebateCodeId: 0,
	Amount: 0,
	Usage: 0,
	BookingId: 0,
	ChangeType: Increase
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	},
	RebateCodeTransactionItem: 
	{
		Id: 0,
		Note: String,
		RebateCodeId: 0,
		RebateCodeSign: String,
		RebateCodeTypeId: 0,
		RebateCodeTypeName: String,
		Amount: 0,
		BookingId: 0,
		Service: 
		{
			Id: 0,
			Name: String,
			Description: String,
			Active: False
		},
		Customer: 
		{
			Firstname: String,
			Lastname: String,
			Email: String,
			Phone: String,
			ImageUrl: String
		},
		PriceSign: String
	}
}