GET | /scheduling/booking-status-events | List of booking status changes in a time frame. |
---|
import java.math.*
import java.util.*
import net.servicestack.client.*
open class BookingStatusEventsRequest : BookingStatusEventsRequestDto(), IRestrictedApiRequest
{
/**
* Api Key - grants access to resources
*/
@ApiMember(DataType="string", Description="Api Key - grants access to resources", IsRequired=true, Name="ApiKey", ParameterType="query")
var ApiKey:String? = null
/**
* Chain ID
*/
@ApiMember(DataType="integer", Description="Chain ID", Name="ChainId", ParameterType="query")
var ChainId:Int? = null
/**
* Store ID
*/
@ApiMember(DataType="integer", Description="Store ID", Name="StoreId", ParameterType="query")
var StoreId:Int? = null
/**
* UTC Format
*/
@ApiMember(DataType="date", Description="UTC Format", IsRequired=true, Name="FromDate", ParameterType="query")
var FromDate:Date? = null
/**
* Max 24 Hours (UTC Format)
*/
@ApiMember(DataType="date", Description="Max 24 Hours (UTC Format)", IsRequired=true, Name="ToDate", ParameterType="query")
var ToDate:Date? = null
/**
* 0 = All, 1 = Classes, 2 = Services
*/
@ApiMember(DataType="integer", Description="0 = All, 1 = Classes, 2 = Services", IsRequired=true, Name="BookingTypeFilter", ParameterType="query")
var BookingTypeFilter:Int? = null
/**
* 0 = Any, 1 = Only Consults, 2 = Exclude Consults
*/
@ApiMember(DataType="integer", Description="0 = Any, 1 = Only Consults, 2 = Exclude Consults", IsRequired=true, Name="ConsultFilter", ParameterType="query")
var ConsultFilter:Int? = null
/**
* Leave blank for any, otherwise use ClubReady BookingStatus enum
*/
@ApiMember(DataType="integer", Description="Leave blank for any, otherwise use ClubReady BookingStatus enum", Name="StatusFilter", ParameterType="query")
var StatusFilter:Int? = null
var RestrictedId:Int? = null
var RestrictedResourceType:RestrictedResourceType? = null
}
open class BookingStatusEventsRequestDto : ApiDtoBase()
{
var FromDate:Date? = null
var ToDate:Date? = null
var BookingTypeFilter:Int? = null
var ConsultFilter:Int? = null
var StatusFilter:Int? = null
}
open class ApiDtoBase
{
var ApiKey:String? = null
var StoreId:Int? = null
var ChainId:Int? = null
}
enum class RestrictedResourceType
{
Store,
Chain,
User,
Undefined,
}
open class BookingStatusEventsResponse : BookingStatusEventsResponseDto()
{
var Success:Boolean? = null
var Message:String? = null
var BookingStatusEvents:ArrayList<BookingStatusEventItem> = ArrayList<BookingStatusEventItem>()
}
open class BookingStatusEventsResponseDto : ApiResponseBase()
{
var BookingStatusEvents:ArrayList<BookingStatusEventItem> = ArrayList<BookingStatusEventItem>()
}
open class ApiResponseBase
{
var Success:Boolean? = null
var Message:String? = null
}
open class BookingStatusEventItem
{
var ChainId:Int? = null
var StoreId:Int? = null
var UserId:Int? = null
var BookingId:Int? = null
var ClassScheduleId:Int? = null
var ServiceId:Int? = null
var SessionSizeId:Int? = null
var BookingDateTime:Date? = null
var Status:BookingStatus? = null
var StatusId:Int? = null
var StatusChanged:Date? = null
var Consult:Boolean? = null
var BookedFromWaitList:Boolean? = null
}
enum class BookingStatus(val value:Int)
{
Undefined(0),
Unavailable(1),
Open(2),
CancelledWithinPolicy(3),
CancelledOutsidePolicy(4),
Completed(5),
NoShow(6),
RescheduledWithinPolicy(8),
RescheduledByAdmin(9),
CancelledByAdminNotCustomerFault(10),
Pending(11),
WaitListed(12),
Error(-1),
}
Kotlin BookingStatusEventsRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /scheduling/booking-status-events HTTP/1.1 Host: clubready.com Accept: application/json
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"Success":false,"Message":"String","BookingStatusEvents":[{"ChainId":0,"StoreId":0,"UserId":0,"BookingId":0,"ClassScheduleId":0,"ServiceId":0,"SessionSizeId":0,"BookingDateTime":"0001-01-01T00:00:00.0000000","Status":"Undefined","StatusId":0,"StatusChanged":"0001-01-01T00:00:00.0000000","Consult":false,"BookedFromWaitList":false}]}