BokaMera.API.Host

<back to all web services

SettingQuery

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin, bookingsupplier-administrator-read
The following routes are available for this service:
GET/settingsGet settings for the currently logged in userGet settings for the currently logged in user.
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports BokaMera.API.ServiceModel.Dtos
Imports BokaMera.API.ServiceModel.Db

Namespace Global

    Namespace BokaMera.API.ServiceModel.Db

        Public Partial Class BookingStatusOptions
            Public Overridable Property Id As Integer
            Public Overridable Property Name As String
            Public Overridable Property Description As String
        End Class
    End Namespace

    Namespace BokaMera.API.ServiceModel.Dtos

        Public Partial Class BookingTemplateResponse
            Public Overridable Property Id As Integer
            Public Overridable Property Name As String
            Public Overridable Property Description As String
            Public Overridable Property UsedByApplication As String
        End Class

        Public Partial Class CalendarTypeResponse
            Public Overridable Property Id As Integer
            Public Overridable Property Name As String
            Public Overridable Property Description As String
            Public Overridable Property Active As Boolean
        End Class

        Public Partial Class FreeSpotTextsResponse
            Public Overridable Property Id As Integer
            Public Overridable Property TextSingular As String
            Public Overridable Property TextPlural As String
        End Class

        Public Partial Class ScheduleViewResponse
            Public Overridable Property Id As Integer
            Public Overridable Property Name As String
        End Class

        <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 Partial Class SettingQuery
            '''<Summary>
            '''If you want to include the schedule views to select from
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="If you want to include the schedule views to select from", ParameterType:="query")>
            Public Overridable Property IncludeScheduleViewOptions As Boolean

            '''<Summary>
            '''If you want to include the week number settings to select from
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="If you want to include the week number settings to select from", ParameterType:="query")>
            Public Overridable Property IncludeWeekNumberOptions As Boolean

            '''<Summary>
            '''If you want to include the booking template options to select from
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="If you want to include the booking template options to select from", ParameterType:="query")>
            Public Overridable Property IncludeBookingTemplateOptions As Boolean

            '''<Summary>
            '''If you want to include the calendar type options to select from
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="If you want to include the calendar type options to select from", ParameterType:="query")>
            Public Overridable Property IncludeCalendarTypeOptions As Boolean

            '''<Summary>
            '''If you want to include the booking status options to select from
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="If you want to include the booking status options to select from", ParameterType:="query")>
            Public Overridable Property IncludeBookingStatusOptions As Boolean

            '''<Summary>
            '''If you want to include the Free spot text options to select from
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="If you want to include the Free spot text options to select from", ParameterType:="query")>
            Public Overridable Property IncludeFreeSpotTextOptions As Boolean
        End Class

        Public Partial Class SettingResponse
            Public Sub New()
                ScheduleViewOptions = New List(Of ScheduleViewResponse)
                WeekNumberOptions = New List(Of WeekNumberSettingResponse)
                BookingTemplateOptions = New List(Of BookingTemplateResponse)
                CalendarTypeOptions = New List(Of CalendarTypeResponse)
                BookingStatusOptions = New List(Of BookingStatusOptions)
                FreeSpotTextOptions = New List(Of FreeSpotTextsResponse)
            End Sub

            Public Overridable Property CompanyId As Guid
            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="int", Description:="")>
            Public Overridable Property BookingStatusId As Integer

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="int", Description:="")>
            Public Overridable Property ScheduleViewId As Integer

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="int", Description:="")>
            Public Overridable Property BookingTemplateId As Integer

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="int", Description:="")>
            Public Overridable Property CalendarTypeId As Integer

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property AllowBookingOnUnbookedTimes As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <DataMember(Name:="SendEmailReminder")>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property SendEmailReminder As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <DataMember(Name:="SendSmsReminder")>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property SendSmsReminder As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <DataMember(Name:="SendEmailConfirmation")>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property SendEmailConfirmation As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <DataMember(Name:="SendSmsConfirmation")>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property SendSmsConfirmation As Boolean

            '''<Summary>
            '''Message text field that could be used inside message templates using [MessageText].
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Message text field that could be used inside message templates using [MessageText].")>
            Public Overridable Property MessageText As String

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="int", Description:="")>
            Public Overridable Property EmailReminderTime As Integer

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="int", Description:="")>
            Public Overridable Property SmsReminderTime As Integer

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="int", Description:="")>
            Public Overridable Property MaxActiveBookings As Integer

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property SendNotifications As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="string", Description:="")>
            Public Overridable Property SendNotificationsEmail As String

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property EnableMobileApp As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(Description:="")>
            Public Overridable Property ScheduleStartTime As Nullable(Of TimeSpan)

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property ScheduleEndTime As Nullable(Of TimeSpan)

            '''<Summary>
            '''The admin scheduler if each resources should be shown in a seperate group
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="The admin scheduler if each resources should be shown in a seperate group")>
            Public Overridable Property ScheduleGroupResources As Boolean

            '''<Summary>
            '''The admin scheduler if the horizontal scrolling should be turned off
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="The admin scheduler if the horizontal scrolling should be turned off")>
            Public Overridable Property SchedulerDisableHorizontalScrolling As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="string", Description:="")>
            Public Overridable Property ReceiptTemplate As String

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="int", Description:="")>
            Public Overridable Property ScheduleTimeSlotMinutes As Integer

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property ShowFreeTimesLeft As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="int", Description:="")>
            Public Overridable Property FreeSpotTextsId As Integer

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property EnableICalGroupBookings As Boolean

            '''<Summary>
            '''Booking agreement text. All html needs to entered using markup. Read about markup here https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet. Use this editor to create markup https://stackedit.io/app#
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Booking agreement text. All html needs to entered using markup. Read about markup here https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet. Use this editor to create markup https://stackedit.io/app#")>
            Public Overridable Property AgreementTemplate As String

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property ScheduleShowTimeExeptions As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property EnableBookingsOnSameTime As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="int", Description:="")>
            Public Overridable Property ShowWeekNumberSettingId As Integer

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property EnableShowBookedTimes As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="", Description:="")>
            Public Overridable Property BookSpotUserResponseMinutes As Nullable(Of Integer)

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="", Description:="")>
            Public Overridable Property IsBookSpotDirectly As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="", Description:="")>
            Public Overridable Property BookSpotDirectlyTimeLeftMinutes As Integer

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="", Description:="")>
            Public Overridable Property SendEmailNotificationQueue As Nullable(Of Boolean)

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="", Description:="")>
            Public Overridable Property SendSMSNotificationQueue As Nullable(Of Boolean)

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(Description:="")>
            Public Overridable Property EnableSendFollowUpMessage As Boolean

            '''<Summary>
            '''When follow up message should be sent in hours after the booking.
            '''</Summary>
            <ApiMember(Description:="When follow up message should be sent in hours after the booking.")>
            Public Overridable Property FollowUpMessageTime As Integer

            '''<Summary>
            '''If it's only allowed for existing customers to book
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="If it's only allowed for existing customers to book")>
            Public Overridable Property BookOnlyOnExistingCustomers As Boolean

            '''<Summary>
            '''If a unique pin code should be generated for the customer
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="If a unique pin code should be generated for the customer")>
            Public Overridable Property AutoGenerateUniquePinCode As Boolean

            '''<Summary>
            '''If a user profile should be created when customer is booking time. With the property customer can login.
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="If a user profile should be created when customer is booking time. With the property customer can login.")>
            Public Overridable Property AutoCreateUserProfile As Boolean

            '''<Summary>
            '''The available schedule view options to choose from
            '''</Summary>
            <ApiMember(Description:="The available schedule view options to choose from")>
            Public Overridable Property ScheduleViewOptions As List(Of ScheduleViewResponse)

            '''<Summary>
            '''The available week number options to choose from
            '''</Summary>
            <ApiMember(Description:="The available week number options to choose from")>
            Public Overridable Property WeekNumberOptions As List(Of WeekNumberSettingResponse)

            '''<Summary>
            '''The booking template options to choose from
            '''</Summary>
            <ApiMember(Description:="The booking template options to choose from")>
            Public Overridable Property BookingTemplateOptions As List(Of BookingTemplateResponse)

            '''<Summary>
            '''The calendar type options to choose from
            '''</Summary>
            <ApiMember(Description:="The calendar type options to choose from")>
            Public Overridable Property CalendarTypeOptions As List(Of CalendarTypeResponse)

            '''<Summary>
            '''The booking status options to choose from
            '''</Summary>
            <ApiMember(Description:="The booking status options to choose from")>
            Public Overridable Property BookingStatusOptions As List(Of BookingStatusOptions)

            '''<Summary>
            '''The free spot text options to choose from
            '''</Summary>
            <ApiMember(Description:="The free spot text options to choose from")>
            Public Overridable Property FreeSpotTextOptions As List(Of FreeSpotTextsResponse)

            '''<Summary>
            '''If you have different prices over different times per day and want it to calculate the weighted price for the booked time.
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="If you have different prices over different times per day and want it to calculate the weighted price for the booked time.")>
            Public Overridable Property WeightedPrices As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property ShowMultiDayAsTime As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(DataType:="boolean", Description:="")>
            Public Overridable Property ShowMultipleResourcesAsOne As Boolean
        End Class

        Public Partial Class WeekNumberSettingResponse
            Public Overridable Property Id As Integer
            Public Overridable Property Name As String
            Public Overridable Property Description As String
        End Class
    End Namespace
End Namespace

VB.NET SettingQuery DTOs

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

HTTP + JSV

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

GET /settings HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	BookingStatusId: 0,
	ScheduleViewId: 0,
	BookingTemplateId: 0,
	CalendarTypeId: 0,
	AllowBookingOnUnbookedTimes: False,
	SendEmailReminder: False,
	SendSmsReminder: False,
	SendEmailConfirmation: False,
	SendSmsConfirmation: False,
	MessageText: String,
	EmailReminderTime: 0,
	SmsReminderTime: 0,
	MaxActiveBookings: 0,
	SendNotifications: False,
	SendNotificationsEmail: String,
	EnableMobileApp: False,
	ScheduleStartTime: PT0S,
	ScheduleEndTime: PT0S,
	ScheduleGroupResources: False,
	SchedulerDisableHorizontalScrolling: False,
	ReceiptTemplate: String,
	ScheduleTimeSlotMinutes: 0,
	ShowFreeTimesLeft: False,
	FreeSpotTextsId: 0,
	EnableICalGroupBookings: False,
	AgreementTemplate: String,
	ScheduleShowTimeExeptions: False,
	EnableBookingsOnSameTime: False,
	ShowWeekNumberSettingId: 0,
	EnableShowBookedTimes: False,
	BookSpotUserResponseMinutes: 0,
	IsBookSpotDirectly: False,
	BookSpotDirectlyTimeLeftMinutes: 0,
	SendEmailNotificationQueue: False,
	SendSMSNotificationQueue: False,
	EnableSendFollowUpMessage: False,
	FollowUpMessageTime: 0,
	BookOnlyOnExistingCustomers: False,
	AutoGenerateUniquePinCode: False,
	AutoCreateUserProfile: False,
	ScheduleViewOptions: 
	[
		{
			Id: 0,
			Name: String
		}
	],
	WeekNumberOptions: 
	[
		{
			Id: 0,
			Name: String,
			Description: String
		}
	],
	BookingTemplateOptions: 
	[
		{
			Id: 0,
			Name: String,
			Description: String,
			UsedByApplication: String
		}
	],
	CalendarTypeOptions: 
	[
		{
			Id: 0,
			Name: String,
			Description: String,
			Active: False
		}
	],
	BookingStatusOptions: 
	[
		{
			Id: 0,
			Name: String,
			Description: String
		}
	],
	FreeSpotTextOptions: 
	[
		{
			Id: 0,
			TextSingular: String,
			TextPlural: String
		}
	],
	WeightedPrices: False,
	ShowMultiDayAsTime: False,
	ShowMultipleResourcesAsOne: False
}