GET | /scheduling/booking-status-events | List of booking status changes in a time frame. |
---|
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports ClubReady.Web.Api.Scheduling.Model
Imports ClubReady.Core.Api.Models
Imports ClubReady.Web.Api
Imports ClubReady.Core.Scheduling.Models
Imports ClubReady.Core.Common
Namespace Global
Namespace ClubReady.Core.Api.Models
Public Partial Class ApiDtoBase
Public Overridable Property ApiKey As String
Public Overridable Property StoreId As Nullable(Of Integer)
Public Overridable Property ChainId As Nullable(Of Integer)
End Class
Public Partial Class ApiResponseBase
Public Overridable Property Success As Boolean
Public Overridable Property Message As String
End Class
Public Partial Class BookingStatusEventsRequestDto
Inherits ApiDtoBase
Public Overridable Property FromDate As Date
Public Overridable Property ToDate As Date
Public Overridable Property BookingTypeFilter As Integer
Public Overridable Property ConsultFilter As Integer
Public Overridable Property StatusFilter As Nullable(Of Integer)
End Class
Public Partial Class BookingStatusEventsResponseDto
Inherits ApiResponseBase
Public Sub New()
BookingStatusEvents = New List(Of BookingStatusEventItem)
End Sub
Public Overridable Property BookingStatusEvents As List(Of BookingStatusEventItem)
End Class
End Namespace
Namespace ClubReady.Core.Scheduling.Models
Public Partial Class BookingStatusEventItem
Public Overridable Property ChainId As Nullable(Of Integer)
Public Overridable Property StoreId As Nullable(Of Integer)
Public Overridable Property UserId As Integer
Public Overridable Property BookingId As Integer
Public Overridable Property ClassScheduleId As Nullable(Of Integer)
Public Overridable Property ServiceId As Nullable(Of Integer)
Public Overridable Property SessionSizeId As Nullable(Of Integer)
Public Overridable Property BookingDateTime As Date
Public Overridable Property Status As CrEnums.BookingStatus
Public Overridable Property StatusId As Integer
Public Overridable Property StatusChanged As Date
Public Overridable Property Consult As Boolean
Public Overridable Property BookedFromWaitList As Boolean
End Class
End Namespace
Namespace ClubReady.Web.Api
Public Enum RestrictedResourceType
Store
Chain
User
Undefined
End Enum
End Namespace
Namespace ClubReady.Web.Api.Scheduling.Model
Public Partial Class BookingStatusEventsRequest
Inherits BookingStatusEventsRequestDto
Implements IRestrictedApiRequest
'''<Summary>
'''Api Key - grants access to resources
'''</Summary>
<ApiMember(DataType:="string", Description:="Api Key - grants access to resources", IsRequired:=true, Name:="ApiKey", ParameterType:="query")>
Public Overridable Property ApiKey As String
'''<Summary>
'''Chain ID
'''</Summary>
<ApiMember(DataType:="integer", Description:="Chain ID", Name:="ChainId", ParameterType:="query")>
Public Overridable Property ChainId As Nullable(Of Integer)
'''<Summary>
'''Store ID
'''</Summary>
<ApiMember(DataType:="integer", Description:="Store ID", Name:="StoreId", ParameterType:="query")>
Public Overridable Property StoreId As Nullable(Of Integer)
'''<Summary>
'''UTC Format
'''</Summary>
<ApiMember(DataType:="date", Description:="UTC Format", IsRequired:=true, Name:="FromDate", ParameterType:="query")>
Public Overridable Property FromDate As Date
'''<Summary>
'''Max 24 Hours (UTC Format)
'''</Summary>
<ApiMember(DataType:="date", Description:="Max 24 Hours (UTC Format)", IsRequired:=true, Name:="ToDate", ParameterType:="query")>
Public Overridable Property ToDate As Date
'''<Summary>
'''0 = All, 1 = Classes, 2 = Services
'''</Summary>
<ApiMember(DataType:="integer", Description:="0 = All, 1 = Classes, 2 = Services", IsRequired:=true, Name:="BookingTypeFilter", ParameterType:="query")>
Public Overridable Property BookingTypeFilter As Integer
'''<Summary>
'''0 = Any, 1 = Only Consults, 2 = Exclude Consults
'''</Summary>
<ApiMember(DataType:="integer", Description:="0 = Any, 1 = Only Consults, 2 = Exclude Consults", IsRequired:=true, Name:="ConsultFilter", ParameterType:="query")>
Public Overridable Property ConsultFilter As Integer
'''<Summary>
'''Leave blank for any, otherwise use ClubReady BookingStatus enum
'''</Summary>
<ApiMember(DataType:="integer", Description:="Leave blank for any, otherwise use ClubReady BookingStatus enum", Name:="StatusFilter", ParameterType:="query")>
Public Overridable Property StatusFilter As Nullable(Of Integer)
Public Overridable Property RestrictedId As Nullable(Of Integer)
Public Overridable Property RestrictedResourceType As RestrictedResourceType
End Class
Public Partial Class BookingStatusEventsResponse
Inherits BookingStatusEventsResponseDto
Public Sub New()
BookingStatusEvents = New List(Of BookingStatusEventItem)
End Sub
Public Overridable Property Success As Boolean
Public Overridable Property Message As String
Public Overridable Property BookingStatusEvents As List(Of BookingStatusEventItem)
End Class
End Namespace
End Namespace
VB.NET BookingStatusEventsRequest DTOs
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.
GET /scheduling/booking-status-events HTTP/1.1 Host: clubready.com Accept: text/jsv
HTTP/1.1 200 OK Content-Type: text/jsv 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-01, Status: Undefined, StatusId: 0, StatusChanged: 0001-01-01, Consult: False, BookedFromWaitList: False } ] }