Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
POST | /bookings/{BookingId}/quantity/ | Add an booking quantity | Updates an booking quantity if you are authorized to do so. Note: Add quantity wont update the number of booked resources. |
---|
import Foundation
import ServiceStack
// @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
// @ApiResponse(Description="You have too low privilegies to call this service", StatusCode=403)
// @ValidateRequest(Validator="IsAuthenticated")
public class AddQuantity : ICompany, Codable
{
/**
* 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 var companyId:String?
/**
* Id of the booking
*/
// @ApiMember(Description="Id of the booking", IsRequired=true, ParameterType="path")
public var bookingId:Int?
/**
* The quantity for booked on this price category
*/
// @ApiMember(Description="The quantity for booked on this price category", IsRequired=true)
public var quantity:Int?
/**
* The price
*/
// @ApiMember(Description="The price")
public var price:Double?
/**
* The price currency
*/
// @ApiMember(Description="The price currency")
public var currencyId:String
/**
* The price category
*/
// @ApiMember(Description="The price category")
public var category:String
/**
* The price VAT in percent
*/
// @ApiMember(Description="The price VAT in percent")
public var vat:Double?
/**
* 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 var occupiesSpot:Bool
/**
* Any comments to be stored in the event log.
*/
// @ApiMember(Description="Any comments to be stored in the event log.")
public var comments:String
required public init(){}
}
public class BookedQuantity : Codable
{
/**
* The quantity Id
*/
// @ApiMember(Description="The quantity Id")
public var id:Int
/**
* The quantity for booked on this price category
*/
// @ApiMember(Description="The quantity for booked on this price category")
public var quantity:Int
/**
* The price
*/
// @ApiMember(Description="The price")
public var price:Double?
/**
* The price bofore rebate codes
*/
// @ApiMember(Description="The price bofore rebate codes")
public var priceBeforeRebate:Double?
/**
* The price currency
*/
// @ApiMember(Description="The price currency")
public var currencyId:String
/**
* The price sign
*/
// @ApiMember(Description="The price sign")
public var priceSign:String
/**
* The price category
*/
// @ApiMember(Description="The price category")
public var category:String
/**
* The price VAT in percent
*/
// @ApiMember(Description="The price VAT in percent")
public var vat:Double?
/**
* The price text to display
*/
// @ApiMember(Description="The price text to display")
public var priceText:String
/**
* 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 var occupiesSpot:Bool
required public init(){}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /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,
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 }