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.
"use strict";
export class ScheduleViewResponse {
    /** @param {{Id?:number,Name?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Id;
    /** @type {string} */
    Name;
}
export class WeekNumberSettingResponse {
    /** @param {{Id?:number,Name?:string,Description?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Id;
    /** @type {string} */
    Name;
    /** @type {string} */
    Description;
}
export class BookingTemplateResponse {
    /** @param {{Id?:number,Name?:string,Description?:string,UsedByApplication?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Id;
    /** @type {string} */
    Name;
    /** @type {string} */
    Description;
    /** @type {string} */
    UsedByApplication;
}
export class CalendarTypeResponse {
    /** @param {{Id?:number,Name?:string,Description?:string,Active?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Id;
    /** @type {string} */
    Name;
    /** @type {string} */
    Description;
    /** @type {boolean} */
    Active;
}
export class BookingStatusOptions {
    /** @param {{Id?:number,Name?:string,Description?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Id;
    /** @type {string} */
    Name;
    /** @type {string} */
    Description;
}
export class FreeSpotTextsResponse {
    /** @param {{Id?:number,TextSingular?:string,TextPlural?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Id;
    /** @type {string} */
    TextSingular;
    /** @type {string} */
    TextPlural;
}
export class SettingResponse {
    /** @param {{CompanyId?:string,BookingStatusId?:number,ScheduleViewId?:number,BookingTemplateId?:number,CalendarTypeId?:number,AllowBookingOnUnbookedTimes?:boolean,SendEmailReminder?:boolean,SendSmsReminder?:boolean,SendEmailConfirmation?:boolean,SendSmsConfirmation?:boolean,MessageText?:string,EmailReminderTime?:number,SmsReminderTime?:number,MaxActiveBookings?:number,SendNotifications?:boolean,SendNotificationsEmail?:string,EnableMobileApp?:boolean,ScheduleStartTime?:string,ScheduleEndTime?:string,ScheduleGroupResources?:boolean,SchedulerDisableHorizontalScrolling?:boolean,ReceiptTemplate?:string,ScheduleTimeSlotMinutes?:number,ShowFreeTimesLeft?:boolean,FreeSpotTextsId?:number,EnableICalGroupBookings?:boolean,AgreementTemplate?:string,ScheduleShowTimeExeptions?:boolean,EnableBookingsOnSameTime?:boolean,ShowWeekNumberSettingId?:number,EnableShowBookedTimes?:boolean,BookSpotUserResponseMinutes?:number,IsBookSpotDirectly?:boolean,BookSpotDirectlyTimeLeftMinutes?:number,SendEmailNotificationQueue?:boolean,SendSMSNotificationQueue?:boolean,EnableSendFollowUpMessage?:boolean,FollowUpMessageTime?:number,BookOnlyOnExistingCustomers?:boolean,AutoGenerateUniquePinCode?:boolean,AutoCreateUserProfile?:boolean,ScheduleViewOptions?:ScheduleViewResponse[],WeekNumberOptions?:WeekNumberSettingResponse[],BookingTemplateOptions?:BookingTemplateResponse[],CalendarTypeOptions?:CalendarTypeResponse[],BookingStatusOptions?:BookingStatusOptions[],FreeSpotTextOptions?:FreeSpotTextsResponse[],WeightedPrices?:boolean,ShowMultiDayAsTime?:boolean,ShowMultipleResourcesAsOne?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    CompanyId;
    /** @type {number} */
    BookingStatusId;
    /** @type {number} */
    ScheduleViewId;
    /** @type {number} */
    BookingTemplateId;
    /** @type {number} */
    CalendarTypeId;
    /** @type {boolean} */
    AllowBookingOnUnbookedTimes;
    /** @type {boolean} */
    SendEmailReminder;
    /** @type {boolean} */
    SendSmsReminder;
    /** @type {boolean} */
    SendEmailConfirmation;
    /** @type {boolean} */
    SendSmsConfirmation;
    /**
     * @type {string}
     * @description Message text field that could be used inside message templates using [MessageText]. */
    MessageText;
    /** @type {number} */
    EmailReminderTime;
    /** @type {number} */
    SmsReminderTime;
    /** @type {number} */
    MaxActiveBookings;
    /** @type {boolean} */
    SendNotifications;
    /** @type {string} */
    SendNotificationsEmail;
    /** @type {boolean} */
    EnableMobileApp;
    /** @type {?string} */
    ScheduleStartTime;
    /** @type {?string} */
    ScheduleEndTime;
    /**
     * @type {boolean}
     * @description The admin scheduler if each resources should be shown in a seperate group */
    ScheduleGroupResources;
    /**
     * @type {boolean}
     * @description The admin scheduler if the horizontal scrolling should be turned off */
    SchedulerDisableHorizontalScrolling;
    /** @type {string} */
    ReceiptTemplate;
    /** @type {number} */
    ScheduleTimeSlotMinutes;
    /** @type {boolean} */
    ShowFreeTimesLeft;
    /** @type {number} */
    FreeSpotTextsId;
    /** @type {boolean} */
    EnableICalGroupBookings;
    /**
     * @type {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# */
    AgreementTemplate;
    /** @type {boolean} */
    ScheduleShowTimeExeptions;
    /** @type {boolean} */
    EnableBookingsOnSameTime;
    /** @type {number} */
    ShowWeekNumberSettingId;
    /** @type {boolean} */
    EnableShowBookedTimes;
    /** @type {?number} */
    BookSpotUserResponseMinutes;
    /** @type {boolean} */
    IsBookSpotDirectly;
    /** @type {number} */
    BookSpotDirectlyTimeLeftMinutes;
    /** @type {?boolean} */
    SendEmailNotificationQueue;
    /** @type {?boolean} */
    SendSMSNotificationQueue;
    /** @type {boolean} */
    EnableSendFollowUpMessage;
    /**
     * @type {number}
     * @description When follow up message should be sent in hours after the booking. */
    FollowUpMessageTime;
    /**
     * @type {boolean}
     * @description If it's only allowed for existing customers to book */
    BookOnlyOnExistingCustomers;
    /**
     * @type {boolean}
     * @description If a unique pin code should be generated for the customer */
    AutoGenerateUniquePinCode;
    /**
     * @type {boolean}
     * @description If a user profile should be created when customer is booking time. With the property customer can login. */
    AutoCreateUserProfile;
    /**
     * @type {ScheduleViewResponse[]}
     * @description The available schedule view options to choose from */
    ScheduleViewOptions;
    /**
     * @type {WeekNumberSettingResponse[]}
     * @description The available week number options to choose from */
    WeekNumberOptions;
    /**
     * @type {BookingTemplateResponse[]}
     * @description The booking template options to choose from */
    BookingTemplateOptions;
    /**
     * @type {CalendarTypeResponse[]}
     * @description The calendar type options to choose from */
    CalendarTypeOptions;
    /**
     * @type {BookingStatusOptions[]}
     * @description The booking status options to choose from */
    BookingStatusOptions;
    /**
     * @type {FreeSpotTextsResponse[]}
     * @description The free spot text options to choose from */
    FreeSpotTextOptions;
    /**
     * @type {boolean}
     * @description If you have different prices over different times per day and want it to calculate the weighted price for the booked time. */
    WeightedPrices;
    /** @type {boolean} */
    ShowMultiDayAsTime;
    /** @type {boolean} */
    ShowMultipleResourcesAsOne;
}
export class UpdateSetting {
    /** @param {{CompanyId?:string,BookingStatusId?:number,ScheduleViewId?:number,BookingTemplateId?:number,CalendarTypeId?:number,AllowBookingOnUnbookedTimes?:boolean,SendEmailReminder?:boolean,SendSmsReminder?:boolean,SendEmailConfirmation?:boolean,SendSmsConfirmation?:boolean,EmailReminderTime?:number,SmsReminderTime?:number,MaxActiveBookings?:number,SendNotifications?:boolean,SendNotificationsEmail?:string,MessageText?:string,EnableMobileApp?:boolean,ScheduleStartTime?:string,ScheduleEndTime?:string,ReceiptTemplate?:string,ScheduleTimeSlotMinutes?:number,ScheduleGroupResources?:boolean,SchedulerDisableHorizontalScrolling?:boolean,BookOnlyOnExistingCustomers?:boolean,AutoGenerateUniquePinCode?:boolean,AutoCreateUserProfile?:boolean,FollowUpMessageTime?:number,ShowFreeTimesLeft?:boolean,FreeSpotTextsId?:number,EnableICalGroupBookings?:boolean,AgreementTemplate?:string,ScheduleShowTimeExeptions?:boolean,EnableBookingsOnSameTime?:boolean,ShowWeekNumberSettingId?:number,EnableShowBookedTimes?:boolean,EnableSendFollowUpMessage?:boolean,BookSpotUserResponseMinutes?:number,IsBookSpotDirectly?:boolean,BookSpotDirectlyTimeLeftMinutes?:number,SendEmailNotificationQueue?:boolean,SendSMSNotificationQueue?:boolean,WeightedPrices?:boolean,ShowMultiDayAsTime?:boolean,ShowMultipleResourcesAsOne?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {?string}
     * @description The company id, if empty will use the company id for the user you are logged in with. */
    CompanyId;
    /** @type {?number} */
    BookingStatusId;
    /** @type {?number} */
    ScheduleViewId;
    /** @type {?number} */
    BookingTemplateId;
    /** @type {?number} */
    CalendarTypeId;
    /** @type {?boolean} */
    AllowBookingOnUnbookedTimes;
    /** @type {?boolean} */
    SendEmailReminder;
    /** @type {?boolean} */
    SendSmsReminder;
    /** @type {?boolean} */
    SendEmailConfirmation;
    /** @type {?boolean} */
    SendSmsConfirmation;
    /** @type {?number} */
    EmailReminderTime;
    /** @type {?number} */
    SmsReminderTime;
    /** @type {?number} */
    MaxActiveBookings;
    /** @type {?boolean} */
    SendNotifications;
    /** @type {string} */
    SendNotificationsEmail;
    /**
     * @type {string}
     * @description Message text field that could be used inside message templates using [MessageText]. */
    MessageText;
    /** @type {?boolean} */
    EnableMobileApp;
    /**
     * @type {?string}
     * @description The admin scheduler start time to show as default */
    ScheduleStartTime;
    /**
     * @type {?string}
     * @description The admin scheduler end time to show as default */
    ScheduleEndTime;
    /**
     * @type {string}
     * @description Booking receipt text. */
    ReceiptTemplate;
    /**
     * @type {?number}
     * @description The admin scheduler minutes of each timeslot */
    ScheduleTimeSlotMinutes;
    /**
     * @type {?boolean}
     * @description The admin scheduler if each resources should be shown in a seperate group */
    ScheduleGroupResources;
    /**
     * @type {?boolean}
     * @description The admin scheduler if the horizontal scrolling should be turned off */
    SchedulerDisableHorizontalScrolling;
    /**
     * @type {?boolean}
     * @description If it's only allowed for existing customers to book */
    BookOnlyOnExistingCustomers;
    /**
     * @type {?boolean}
     * @description If a unique pin code should be generated for the customer */
    AutoGenerateUniquePinCode;
    /**
     * @type {?boolean}
     * @description If a user profile should be created when customer is booking time. With the property customer can login. */
    AutoCreateUserProfile;
    /**
     * @type {?number}
     * @description When follow up message should be sent in hours after the booking. */
    FollowUpMessageTime;
    /** @type {?boolean} */
    ShowFreeTimesLeft;
    /** @type {?number} */
    FreeSpotTextsId;
    /** @type {?boolean} */
    EnableICalGroupBookings;
    /**
     * @type {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# */
    AgreementTemplate;
    /** @type {?boolean} */
    ScheduleShowTimeExeptions;
    /** @type {?boolean} */
    EnableBookingsOnSameTime;
    /** @type {?number} */
    ShowWeekNumberSettingId;
    /** @type {?boolean} */
    EnableShowBookedTimes;
    /** @type {?boolean} */
    EnableSendFollowUpMessage;
    /** @type {?number} */
    BookSpotUserResponseMinutes;
    /** @type {?boolean} */
    IsBookSpotDirectly;
    /** @type {?number} */
    BookSpotDirectlyTimeLeftMinutes;
    /** @type {?boolean} */
    SendEmailNotificationQueue;
    /** @type {?boolean} */
    SendSMSNotificationQueue;
    /**
     * @type {?boolean}
     * @description If you have different prices over different times per day and want it to calculate the weighted price for the booked time. */
    WeightedPrices;
    /** @type {?boolean} */
    ShowMultiDayAsTime;
    /** @type {?boolean} */
    ShowMultipleResourcesAsOne;
}

JavaScript UpdateSetting 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

HTTP + JSON

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: application/json
Content-Type: application/json
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":"00:00:00","ScheduleEndTime":"00:00:00","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: application/json
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":"00:00:00","ScheduleEndTime":"00:00:00","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}