BokaMera.API.Host

<back to all web services

UpdateAllQuantities

Requires Authentication
The following routes are available for this service:
PUT/bookings/{BookingId}/quantity/Update all quantities on a booking. Note: all quantity needs to be added, all existing quantities on the booking will be deletedUpdate all quantities on a booking. You will need to provide all quantities in this call to be added/updated. Note: all quantity needs to be added, all existing quantities on the booking will be deleted.
import java.math.*;
import java.util.*;
import net.servicestack.client.*;

public class dtos
{

    @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
    // @ApiResponse(Description="You have too low privileges to call this service", StatusCode=403)
    @ValidateRequest(Validator="IsAuthenticated")
    public static class UpdateAllQuantities implements ICompany
    {
        /**
        * 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.")
        public UUID CompanyId = null;

        /**
        * Id of the booking
        */
        @ApiMember(Description="Id of the booking", IsRequired=true, ParameterType="path")
        public Integer BookingId = null;

        /**
        * Set the number of spots you want to book. You add number of spots per price category. Multiple spots require that the service has GroupBooking enabled. Default is one spot.
        */
        @ApiMember(Description="Set the number of spots you want to book. You add number of spots per price category. Multiple spots require that the service has GroupBooking enabled. Default is one spot.")
        public ArrayList<QuantityToUpdate> Quantities = null;

        /**
        * Any comments to be stored in the event log.
        */
        @ApiMember(Description="Any comments to be stored in the event log.")
        public String Comments = null;
        
        public UUID getCompanyId() { return CompanyId; }
        public UpdateAllQuantities setCompanyId(UUID value) { this.CompanyId = value; return this; }
        public Integer getBookingId() { return BookingId; }
        public UpdateAllQuantities setBookingId(Integer value) { this.BookingId = value; return this; }
        public ArrayList<QuantityToUpdate> getQuantities() { return Quantities; }
        public UpdateAllQuantities setQuantities(ArrayList<QuantityToUpdate> value) { this.Quantities = value; return this; }
        public String getComments() { return Comments; }
        public UpdateAllQuantities setComments(String value) { this.Comments = value; return this; }
    }

    public static class QuantityToUpdate
    {
        /**
        * Id of the quantity
        */
        @ApiMember(Description="Id of the quantity", IsRequired=true)
        public Integer Id = null;

        /**
        * The quantity for booked on this price category
        */
        @ApiMember(Description="The quantity for booked on this price category", IsRequired=true)
        public Integer Quantity = null;

        /**
        * The price
        */
        @ApiMember(Description="The price")
        public Double Price = null;

        /**
        * The price currency
        */
        @ApiMember(Description="The price currency")
        public String CurrencyId = null;

        /**
        * The price category
        */
        @ApiMember(Description="The price category")
        public String Category = null;

        /**
        * The price VAT in percent
        */
        @ApiMember(Description="The price VAT in percent")
        public BigDecimal VAT = null;

        /**
        * If the quantity you add should occupy a spot. Default is true. If no it will only be a row that includes price information.
        */
        @ApiMember(Description="If the quantity you add should occupy a spot. Default is true. If no it will only be a row that includes price information.")
        public Boolean OccupiesSpot = null;
        
        public Integer getId() { return Id; }
        public QuantityToUpdate setId(Integer value) { this.Id = value; return this; }
        public Integer getQuantity() { return Quantity; }
        public QuantityToUpdate setQuantity(Integer value) { this.Quantity = value; return this; }
        public Double getPrice() { return Price; }
        public QuantityToUpdate setPrice(Double value) { this.Price = value; return this; }
        public String getCurrencyId() { return CurrencyId; }
        public QuantityToUpdate setCurrencyId(String value) { this.CurrencyId = value; return this; }
        public String getCategory() { return Category; }
        public QuantityToUpdate setCategory(String value) { this.Category = value; return this; }
        public BigDecimal getVat() { return VAT; }
        public QuantityToUpdate setVat(BigDecimal value) { this.VAT = value; return this; }
        public Boolean isOccupiesSpot() { return OccupiesSpot; }
        public QuantityToUpdate setOccupiesSpot(Boolean value) { this.OccupiesSpot = value; return this; }
    }

    public static class BookedQuantity
    {
        /**
        * The quantity Id
        */
        @ApiMember(Description="The quantity Id")
        public Integer Id = null;

        /**
        * The quantity for booked on this price category
        */
        @ApiMember(Description="The quantity for booked on this price category")
        public Integer Quantity = null;

        /**
        * The price
        */
        @ApiMember(Description="The price")
        public Double Price = null;

        /**
        * The price bofore rebate codes
        */
        @ApiMember(Description="The price bofore rebate codes")
        public Double PriceBeforeRebate = null;

        /**
        * The price currency
        */
        @ApiMember(Description="The price currency")
        public String CurrencyId = null;

        /**
        * The price sign
        */
        @ApiMember(Description="The price sign")
        public String PriceSign = null;

        /**
        * The price category
        */
        @ApiMember(Description="The price category")
        public String Category = null;

        /**
        * The price VAT in percent
        */
        @ApiMember(Description="The price VAT in percent")
        public BigDecimal VAT = null;

        /**
        * The price text to display
        */
        @ApiMember(Description="The price text to display")
        public String PriceText = null;

        /**
        * If the quantity you add should occupy a spot. Default is true. If no it will only be a row that includes price information.
        */
        @ApiMember(Description="If the quantity you add should occupy a spot. Default is true. If no it will only be a row that includes price information.")
        public Boolean OccupiesSpot = null;
        
        public Integer getId() { return Id; }
        public BookedQuantity setId(Integer value) { this.Id = value; return this; }
        public Integer getQuantity() { return Quantity; }
        public BookedQuantity setQuantity(Integer value) { this.Quantity = value; return this; }
        public Double getPrice() { return Price; }
        public BookedQuantity setPrice(Double value) { this.Price = value; return this; }
        public Double getPriceBeforeRebate() { return PriceBeforeRebate; }
        public BookedQuantity setPriceBeforeRebate(Double value) { this.PriceBeforeRebate = value; return this; }
        public String getCurrencyId() { return CurrencyId; }
        public BookedQuantity setCurrencyId(String value) { this.CurrencyId = value; return this; }
        public String getPriceSign() { return PriceSign; }
        public BookedQuantity setPriceSign(String value) { this.PriceSign = value; return this; }
        public String getCategory() { return Category; }
        public BookedQuantity setCategory(String value) { this.Category = value; return this; }
        public BigDecimal getVat() { return VAT; }
        public BookedQuantity setVat(BigDecimal value) { this.VAT = value; return this; }
        public String getPriceText() { return PriceText; }
        public BookedQuantity setPriceText(String value) { this.PriceText = value; return this; }
        public Boolean isOccupiesSpot() { return OccupiesSpot; }
        public BookedQuantity setOccupiesSpot(Boolean value) { this.OccupiesSpot = value; return this; }
    }

}

Java UpdateAllQuantities 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.

PUT /bookings/{BookingId}/quantity/ HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	CompanyId: 00000000-0000-0000-0000-000000000000,
	BookingId: 0,
	Quantities: 
	[
		{
			Id: 0,
			Quantity: 0,
			Price: 0,
			CurrencyId: String,
			Category: String,
			VAT: 0,
			OccupiesSpot: False
		}
	],
	Comments: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Id: 0,
	Quantity: 0,
	Price: 0,
	PriceBeforeRebate: 0,
	CurrencyId: String,
	PriceSign: String,
	Category: String,
	VAT: 0,
	PriceText: String,
	OccupiesSpot: False
}