MyApp

<back to all web services

QueryBookings

bookings

Find Bookings

The following routes are available for this service:
GET/bookings
GET/bookings/{Id}
import java.math.*
import java.util.*
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*


/**
* Find Bookings
*/
open class QueryBookings : QueryDb<Booking>()
{
    var id:Int? = null
    @DataMember(Order=1)
    var skip:Int? = null

    @DataMember(Order=2)
    var take:Int? = null

    @DataMember(Order=3)
    var orderBy:String? = null

    @DataMember(Order=4)
    var orderByDesc:String? = null

    @DataMember(Order=5)
    var include:String? = null

    @DataMember(Order=6)
    var fields:String? = null

    @DataMember(Order=7)
    var meta:HashMap<String,String>? = null
}

open class QueryDb<T> : QueryBase()
{
    @DataMember(Order=1)
    var skip:Int? = null

    @DataMember(Order=2)
    var take:Int? = null

    @DataMember(Order=3)
    var orderBy:String? = null

    @DataMember(Order=4)
    var orderByDesc:String? = null

    @DataMember(Order=5)
    var include:String? = null

    @DataMember(Order=6)
    var fields:String? = null

    @DataMember(Order=7)
    var meta:HashMap<String,String> = HashMap<String,String>()
}

@DataContract
open class QueryBase
{
    @DataMember(Order=1)
    var skip:Int? = null

    @DataMember(Order=2)
    var take:Int? = null

    @DataMember(Order=3)
    var orderBy:String? = null

    @DataMember(Order=4)
    var orderByDesc:String? = null

    @DataMember(Order=5)
    var include:String? = null

    @DataMember(Order=6)
    var fields:String? = null

    @DataMember(Order=7)
    var meta:HashMap<String,String> = HashMap<String,String>()
}

/**
* Booking Details
*/
open class Booking : AuditBase()
{
    var id:Int? = null
    var name:String? = null
    var roomType:RoomType? = null
    var roomNumber:Int? = null
    var bookingStartDate:Date? = null
    var bookingEndDate:Date? = null
    var cost:BigDecimal? = null
    var notes:String? = null
    var cancelled:Boolean? = null
    @DataMember(Order=1)
    var createdDate:Date? = null

    @DataMember(Order=2)
    @Required()
    var createdBy:String? = null

    @DataMember(Order=3)
    var modifiedDate:Date? = null

    @DataMember(Order=4)
    @Required()
    var modifiedBy:String? = null

    @DataMember(Order=5)
    var deletedDate:Date? = null

    @DataMember(Order=6)
    var deletedBy:String? = null
}

@DataContract
open class AuditBase
{
    @DataMember(Order=1)
    var createdDate:Date? = null

    @DataMember(Order=2)
    @Required()
    var createdBy:String? = null

    @DataMember(Order=3)
    var modifiedDate:Date? = null

    @DataMember(Order=4)
    @Required()
    var modifiedBy:String? = null

    @DataMember(Order=5)
    var deletedDate:Date? = null

    @DataMember(Order=6)
    var deletedBy:String? = null
}

enum class RoomType
{
    Single,
    Double,
    Queen,
    Twin,
    Suite,
}

@DataContract
open class QueryResponse<Todo>
{
    @DataMember(Order=1)
    var offset:Int? = null

    @DataMember(Order=2)
    var total:Int? = null

    @DataMember(Order=3)
    var results:ArrayList<Todo> = ArrayList<Todo>()

    @DataMember(Order=4)
    var meta:HashMap<String,String> = HashMap<String,String>()

    @DataMember(Order=5)
    var responseStatus:ResponseStatus? = null
}

open class Todo
{
    var id:Long? = null
    var text:String? = null
    var isFinished:Boolean? = null
}

Kotlin QueryBookings DTOs

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

HTTP + XML

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

GET /bookings HTTP/1.1 
Host: vue-vite-api.jamstacks.net 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<QueryResponseOfBookingtlJ4_P31p xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
  <Offset>0</Offset>
  <Total>0</Total>
  <Results xmlns:d2p1="http://schemas.datacontract.org/2004/07/MyApp.ServiceModel">
    <d2p1:Booking>
      <CreatedDate>0001-01-01T00:00:00</CreatedDate>
      <CreatedBy>String</CreatedBy>
      <ModifiedDate>0001-01-01T00:00:00</ModifiedDate>
      <ModifiedBy>String</ModifiedBy>
      <DeletedDate>0001-01-01T00:00:00</DeletedDate>
      <DeletedBy>String</DeletedBy>
      <d2p1:BookingEndDate>0001-01-01T00:00:00</d2p1:BookingEndDate>
      <d2p1:BookingStartDate>0001-01-01T00:00:00</d2p1:BookingStartDate>
      <d2p1:Cancelled>false</d2p1:Cancelled>
      <d2p1:Cost>0</d2p1:Cost>
      <d2p1:Id>0</d2p1:Id>
      <d2p1:Name>String</d2p1:Name>
      <d2p1:Notes>String</d2p1:Notes>
      <d2p1:RoomNumber>0</d2p1:RoomNumber>
      <d2p1:RoomType>Single</d2p1:RoomType>
    </d2p1:Booking>
  </Results>
  <Meta xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfstringstring>
      <d2p1:Key>String</d2p1:Key>
      <d2p1:Value>String</d2p1:Value>
    </d2p1:KeyValueOfstringstring>
  </Meta>
  <ResponseStatus>
    <ErrorCode>String</ErrorCode>
    <Message>String</Message>
    <StackTrace>String</StackTrace>
    <Errors>
      <ResponseError>
        <ErrorCode>String</ErrorCode>
        <FieldName>String</FieldName>
        <Message>String</Message>
        <Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </Meta>
      </ResponseError>
    </Errors>
    <Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </Meta>
  </ResponseStatus>
</QueryResponseOfBookingtlJ4_P31p>