BokaMera.API.Host

<back to all web services

UpdateSetting

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
PUT/settingsUpdate settings for the company of the currently logged in userUpdate settings for the company of the currently logged in user.

export class ScheduleViewResponse
{
    public Id: number;
    public Name: string;

    public constructor(init?: Partial<ScheduleViewResponse>) { (Object as any).assign(this, init); }
}

export class WeekNumberSettingResponse
{
    public Id: number;
    public Name: string;
    public Description: string;

    public constructor(init?: Partial<WeekNumberSettingResponse>) { (Object as any).assign(this, init); }
}

export class BookingTemplateResponse
{
    public Id: number;
    public Name: string;
    public Description: string;
    public UsedByApplication: string;

    public constructor(init?: Partial<BookingTemplateResponse>) { (Object as any).assign(this, init); }
}

export class CalendarTypeResponse
{
    public Id: number;
    public Name: string;
    public Description: string;
    public Active: boolean;

    public constructor(init?: Partial<CalendarTypeResponse>) { (Object as any).assign(this, init); }
}

export class BookingStatusOptions
{
    public Id: number;
    public Name: string;
    public Description: string;

    public constructor(init?: Partial<BookingStatusOptions>) { (Object as any).assign(this, init); }
}

export class FreeSpotTextsResponse
{
    public Id: number;
    public TextSingular: string;
    public TextPlural: string;

    public constructor(init?: Partial<FreeSpotTextsResponse>) { (Object as any).assign(this, init); }
}

export class SettingResponse
{
    public CompanyId: string;
    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public BookingStatusId: number;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public ScheduleViewId: number;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public BookingTemplateId: number;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public CalendarTypeId: number;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public AllowBookingOnUnbookedTimes: boolean;

    /** @description  */
    // @DataMember(Name="SendEmailReminder")
    // @ApiMember(DataType="boolean", Description="")
    public SendEmailReminder: boolean;

    /** @description  */
    // @DataMember(Name="SendSmsReminder")
    // @ApiMember(DataType="boolean", Description="")
    public SendSmsReminder: boolean;

    /** @description  */
    // @DataMember(Name="SendEmailConfirmation")
    // @ApiMember(DataType="boolean", Description="")
    public SendEmailConfirmation: boolean;

    /** @description  */
    // @DataMember(Name="SendSmsConfirmation")
    // @ApiMember(DataType="boolean", Description="")
    public SendSmsConfirmation: boolean;

    /** @description Message text field that could be used inside message templates using [MessageText]. */
    // @ApiMember(DataType="string", Description="Message text field that could be used inside message templates using [MessageText].")
    public MessageText: string;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public EmailReminderTime: number;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public SmsReminderTime: number;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public MaxActiveBookings: number;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public SendNotifications: boolean;

    /** @description  */
    // @ApiMember(DataType="string", Description="")
    public SendNotificationsEmail: string;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public EnableMobileApp: boolean;

    /** @description  */
    // @ApiMember(Description="")
    public ScheduleStartTime?: string;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public ScheduleEndTime?: string;

    /** @description The admin scheduler if each resources should be shown in a seperate group */
    // @ApiMember(DataType="boolean", Description="The admin scheduler if each resources should be shown in a seperate group")
    public ScheduleGroupResources: boolean;

    /** @description The admin scheduler if the horizontal scrolling should be turned off */
    // @ApiMember(DataType="boolean", Description="The admin scheduler if the horizontal scrolling should be turned off")
    public SchedulerDisableHorizontalScrolling: boolean;

    /** @description  */
    // @ApiMember(DataType="string", Description="")
    public ReceiptTemplate: string;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public ScheduleTimeSlotMinutes: number;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public ShowFreeTimesLeft: boolean;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public FreeSpotTextsId: number;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public EnableICalGroupBookings: boolean;

    /** @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# */
    // @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 AgreementTemplate: string;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public ScheduleShowTimeExeptions: boolean;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public EnableBookingsOnSameTime: boolean;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public ShowWeekNumberSettingId: number;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public EnableShowBookedTimes: boolean;

    /** @description  */
    // @ApiMember(DataType="", Description="")
    public BookSpotUserResponseMinutes?: number;

    /** @description  */
    // @ApiMember(DataType="", Description="")
    public IsBookSpotDirectly: boolean;

    /** @description  */
    // @ApiMember(DataType="", Description="")
    public BookSpotDirectlyTimeLeftMinutes: number;

    /** @description  */
    // @ApiMember(DataType="", Description="")
    public SendEmailNotificationQueue?: boolean;

    /** @description  */
    // @ApiMember(DataType="", Description="")
    public SendSMSNotificationQueue?: boolean;

    /** @description  */
    // @ApiMember(Description="")
    public EnableSendFollowUpMessage: boolean;

    /** @description When follow up message should be sent in hours after the booking. */
    // @ApiMember(Description="When follow up message should be sent in hours after the booking.")
    public FollowUpMessageTime: number;

    /** @description If it's only allowed for existing customers to book */
    // @ApiMember(DataType="boolean", Description="If it's only allowed for existing customers to book")
    public BookOnlyOnExistingCustomers: boolean;

    /** @description If a unique pin code should be generated for the customer */
    // @ApiMember(DataType="boolean", Description="If a unique pin code should be generated for the customer")
    public AutoGenerateUniquePinCode: boolean;

    /** @description If a user profile should be created when customer is booking time. With the property customer can login. */
    // @ApiMember(DataType="boolean", Description="If a user profile should be created when customer is booking time. With the property customer can login.")
    public AutoCreateUserProfile: boolean;

    /** @description The available schedule view options to choose from */
    // @ApiMember(Description="The available schedule view options to choose from")
    public ScheduleViewOptions: ScheduleViewResponse[];

    /** @description The available week number options to choose from */
    // @ApiMember(Description="The available week number options to choose from")
    public WeekNumberOptions: WeekNumberSettingResponse[];

    /** @description The booking template options to choose from */
    // @ApiMember(Description="The booking template options to choose from")
    public BookingTemplateOptions: BookingTemplateResponse[];

    /** @description The calendar type options to choose from */
    // @ApiMember(Description="The calendar type options to choose from")
    public CalendarTypeOptions: CalendarTypeResponse[];

    /** @description The booking status options to choose from */
    // @ApiMember(Description="The booking status options to choose from")
    public BookingStatusOptions: BookingStatusOptions[];

    /** @description The free spot text options to choose from */
    // @ApiMember(Description="The free spot text options to choose from")
    public FreeSpotTextOptions: FreeSpotTextsResponse[];

    /** @description If you have different prices over different times per day and want it to calculate the weighted price for the booked time. */
    // @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 WeightedPrices: boolean;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public ShowMultiDayAsTime: boolean;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public ShowMultipleResourcesAsOne: boolean;

    public constructor(init?: Partial<SettingResponse>) { (Object as any).assign(this, init); }
}

// @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")
export class UpdateSetting implements ICompany
{
    /** @description The company id, if empty will use the company id for the user you are logged in with. */
    // @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.")
    public CompanyId?: string;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public BookingStatusId?: number;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public ScheduleViewId?: number;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public BookingTemplateId?: number;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public CalendarTypeId?: number;

    /** @description  */
    // @ApiMember(DataType="bool", Description="")
    public AllowBookingOnUnbookedTimes?: boolean;

    /** @description  */
    // @DataMember(Name="SendEmailReminder")
    // @ApiMember(DataType="boolean", Description="")
    public SendEmailReminder?: boolean;

    /** @description  */
    // @DataMember(Name="SendSmsReminder")
    // @ApiMember(DataType="boolean", Description="")
    public SendSmsReminder?: boolean;

    /** @description  */
    // @DataMember(Name="SendEmailConfirmation")
    // @ApiMember(DataType="boolean", Description="")
    public SendEmailConfirmation?: boolean;

    /** @description  */
    // @DataMember(Name="SendSmsConfirmation")
    // @ApiMember(DataType="boolean", Description="")
    public SendSmsConfirmation?: boolean;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public EmailReminderTime?: number;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public SmsReminderTime?: number;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public MaxActiveBookings?: number;

    /** @description  */
    // @ApiMember(DataType="bool", Description="")
    public SendNotifications?: boolean;

    /** @description  */
    // @ApiMember(DataType="string", Description="")
    public SendNotificationsEmail: string;

    /** @description Message text field that could be used inside message templates using [MessageText]. */
    // @ApiMember(DataType="string", Description="Message text field that could be used inside message templates using [MessageText].")
    public MessageText: string;

    /** @description  */
    // @ApiMember(DataType="bool", Description="")
    public EnableMobileApp?: boolean;

    /** @description The admin scheduler start time to show as default */
    // @ApiMember(Description="The admin scheduler start time to show as default")
    public ScheduleStartTime?: string;

    /** @description The admin scheduler end time to show as default */
    // @ApiMember(Description="The admin scheduler end time to show as default")
    public ScheduleEndTime?: string;

    /** @description Booking receipt text. */
    // @ApiMember(DataType="string", Description="Booking receipt text.")
    public ReceiptTemplate: string;

    /** @description The admin scheduler minutes of each timeslot */
    // @ApiMember(Description="The admin scheduler minutes of each timeslot")
    public ScheduleTimeSlotMinutes?: number;

    /** @description The admin scheduler if each resources should be shown in a seperate group */
    // @ApiMember(Description="The admin scheduler if each resources should be shown in a seperate group")
    public ScheduleGroupResources?: boolean;

    /** @description The admin scheduler if the horizontal scrolling should be turned off */
    // @ApiMember(DataType="boolean", Description="The admin scheduler if the horizontal scrolling should be turned off")
    public SchedulerDisableHorizontalScrolling?: boolean;

    /** @description If it's only allowed for existing customers to book */
    // @ApiMember(DataType="boolean", Description="If it's only allowed for existing customers to book")
    public BookOnlyOnExistingCustomers?: boolean;

    /** @description If a unique pin code should be generated for the customer */
    // @ApiMember(DataType="boolean", Description="If a unique pin code should be generated for the customer")
    public AutoGenerateUniquePinCode?: boolean;

    /** @description If a user profile should be created when customer is booking time. With the property customer can login. */
    // @ApiMember(DataType="boolean", Description="If a user profile should be created when customer is booking time. With the property customer can login.")
    public AutoCreateUserProfile?: boolean;

    /** @description When follow up message should be sent in hours after the booking. */
    // @ApiMember(Description="When follow up message should be sent in hours after the booking.")
    public FollowUpMessageTime?: number;

    /** @description  */
    // @ApiMember(Description="")
    public ShowFreeTimesLeft?: boolean;

    /** @description  */
    // @ApiMember(Description="")
    public FreeSpotTextsId?: number;

    /** @description  */
    // @ApiMember(Description="")
    public EnableICalGroupBookings?: boolean;

    /** @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# */
    // @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 AgreementTemplate: string;

    /** @description  */
    // @ApiMember(Description="")
    public ScheduleShowTimeExeptions?: boolean;

    /** @description  */
    // @ApiMember(Description="")
    public EnableBookingsOnSameTime?: boolean;

    /** @description  */
    // @ApiMember(Description="")
    public ShowWeekNumberSettingId?: number;

    /** @description  */
    // @ApiMember(Description="")
    public EnableShowBookedTimes?: boolean;

    /** @description  */
    // @ApiMember(Description="")
    public EnableSendFollowUpMessage?: boolean;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public BookSpotUserResponseMinutes?: number;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public IsBookSpotDirectly?: boolean;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public BookSpotDirectlyTimeLeftMinutes?: number;

    /** @description  */
    // @ApiMember(DataType="int", Description="")
    public SendEmailNotificationQueue?: boolean;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public SendSMSNotificationQueue?: boolean;

    /** @description If you have different prices over different times per day and want it to calculate the weighted price for the booked time. */
    // @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 WeightedPrices?: boolean;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public ShowMultiDayAsTime?: boolean;

    /** @description  */
    // @ApiMember(DataType="boolean", Description="")
    public ShowMultipleResourcesAsOne?: boolean;

    public constructor(init?: Partial<UpdateSetting>) { (Object as any).assign(this, init); }
}

TypeScript UpdateSetting 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.

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

{
	CompanyId: 00000000-0000-0000-0000-000000000000,
	BookingStatusId: 0,
	ScheduleViewId: 0,
	BookingTemplateId: 0,
	CalendarTypeId: 0,
	AllowBookingOnUnbookedTimes: False,
	SendEmailReminder: False,
	SendSmsReminder: False,
	SendEmailConfirmation: False,
	SendSmsConfirmation: False,
	EmailReminderTime: 0,
	SmsReminderTime: 0,
	MaxActiveBookings: 0,
	SendNotifications: False,
	SendNotificationsEmail: String,
	MessageText: String,
	EnableMobileApp: False,
	ScheduleStartTime: PT0S,
	ScheduleEndTime: PT0S,
	ReceiptTemplate: String,
	ScheduleTimeSlotMinutes: 0,
	ScheduleGroupResources: False,
	SchedulerDisableHorizontalScrolling: False,
	BookOnlyOnExistingCustomers: False,
	AutoGenerateUniquePinCode: False,
	AutoCreateUserProfile: False,
	FollowUpMessageTime: 0,
	ShowFreeTimesLeft: False,
	FreeSpotTextsId: 0,
	EnableICalGroupBookings: False,
	AgreementTemplate: String,
	ScheduleShowTimeExeptions: False,
	EnableBookingsOnSameTime: False,
	ShowWeekNumberSettingId: 0,
	EnableShowBookedTimes: False,
	EnableSendFollowUpMessage: False,
	BookSpotUserResponseMinutes: 0,
	IsBookSpotDirectly: False,
	BookSpotDirectlyTimeLeftMinutes: 0,
	SendEmailNotificationQueue: False,
	SendSMSNotificationQueue: False,
	WeightedPrices: False,
	ShowMultiDayAsTime: False,
	ShowMultipleResourcesAsOne: False
}
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
}