| GET | /scheduling/booking-status-check | Determine if a user can book a class. | 
|---|
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.Core.Api
Imports ClubReady.Web.Api
Namespace Global
    Namespace ClubReady.Core.Api
        Public Partial Class ApiDtoBase
            Implements IApiDtoBase
            Public Overridable Property ChainId As Nullable(Of Integer)
            Public Overridable Property ApiKey As String
            Public Overridable Property StoreId As Nullable(Of Integer)
        End Class
    End Namespace
    Namespace ClubReady.Core.Api.Models
        Public Partial Class ApiResponseBase
            Public Overridable Property Success As Boolean
            Public Overridable Property Message As String
        End Class
        Public Partial Class CheckClassBookingStatusRequestDto
            Inherits ApiDtoBase
            Public Overridable Property ClassScheduleId As Integer
            Public Overridable Property UserId As Integer
        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 CheckBookingStatusRequest
            Inherits CheckClassBookingStatusRequestDto
            Implements IRestrictedApiRequest
            '''<Summary>
            '''IP address of the end user
            '''</Summary>
            <ApiMember(Description:="IP address of the end user", Name:="X-Forwarded-For", ParameterType:="header")>
            Public Overridable Property XForwardedFor As String
            '''<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>
            '''ClubReady Class Schedule ID
            '''</Summary>
            <ApiMember(DataType:="integer", Description:="ClubReady Class Schedule ID", IsRequired:=true, Name:="ClassScheduleId", ParameterType:="query")>
            Public Overridable Property ClassScheduleId As Integer
            '''<Summary>
            '''ClubReady User ID
            '''</Summary>
            <ApiMember(DataType:="integer", Description:="ClubReady User ID", IsRequired:=true, Name:="UserId", ParameterType:="query")>
            Public Overridable Property UserId As Integer
            Public Overridable Property RestrictedId As Nullable(Of Integer)
            Public Overridable Property RestrictedResourceType As RestrictedResourceType
        End Class
        Public Partial Class CheckBookingStatusResponse
            Inherits CheckBookingStatusResponseDto
            Public Overridable Property Success As Boolean
            Public Overridable Property Message As String
            Public Overridable Property CanBook As Boolean
            Public Overridable Property ConsumesCredit As Boolean
            Public Overridable Property Source As String
            Public Overridable Property AvailableCredits As Integer
            Public Overridable Property IsBooked As Boolean
            Public Overridable Property IsWaitListed As Boolean
            Public Overridable Property CancelHours As Integer
            Public Overridable Property LeadTime As Integer
            Public Overridable Property MaxLeadTime As Nullable(Of Integer)
        End Class
        Public Partial Class CheckBookingStatusResponseDto
            Inherits ApiResponseBase
            Public Overridable Property CanBook As Boolean
            Public Overridable Property ConsumesCredit As Boolean
            Public Overridable Property Source As String
            Public Overridable Property AvailableCredits As Integer
            Public Overridable Property IsBooked As Boolean
            Public Overridable Property IsWaitListed As Boolean
            Public Overridable Property CancelHours As Integer
            Public Overridable Property LeadTime As Integer
            Public Overridable Property MaxLeadTime As Nullable(Of Integer)
        End Class
    End Namespace
End Namespace
VB.NET CheckBookingStatusRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /scheduling/booking-status-check HTTP/1.1 Host: clubready.com Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"Success":false,"Message":"String","CanBook":false,"ConsumesCredit":false,"Source":"String","AvailableCredits":0,"IsBooked":false,"IsWaitListed":false,"CancelHours":0,"LeadTime":0,"MaxLeadTime":0}