BokaMera.API.Host

<back to all web services

UpdateCodeLockSetting

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
PUT/codelock/settingsUpdate settings for the code locks of the company of the currently logged in userUpdate settings for code lock of the company of the currently logged in user.
namespace BokaMera.API.ServiceModel.Dtos

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type CodeLockSystemResponse() = 
        ///<summary>
        ///The system type of the code lock
        ///</summary>
        [<ApiMember(DataType="int", Description="The system type of the code lock")>]
        member val Id:Int32 = new Int32() with get,set

        ///<summary>
        ///The name of the code lock system
        ///</summary>
        [<ApiMember(DataType="string", Description="The name of the code lock system")>]
        member val Name:String = null with get,set

        ///<summary>
        ///The description of the code lock system
        ///</summary>
        [<ApiMember(DataType="string", Description="The description of the code lock system")>]
        member val Description:String = null with get,set

        ///<summary>
        ///The logotype of the code lock system
        ///</summary>
        [<ApiMember(Description="The logotype of the code lock system")>]
        member val LogoType:Uri = null with get,set

        ///<summary>
        ///The supplier name of the code lock system
        ///</summary>
        [<ApiMember(Description="The supplier name of the code lock system")>]
        member val Supplier:String = null with get,set

    [<AllowNullLiteral>]
    type CodeLockSettingResponse() = 
        member val CompanyId:Guid = new Guid() with get,set
        ///<summary>
        ///The system type of the code lock
        ///</summary>
        [<ApiMember(DataType="int", Description="The system type of the code lock")>]
        member val CodeLockSystemsId:Int32 = new Int32() with get,set

        ///<summary>
        ///If code lock sync is active
        ///</summary>
        [<ApiMember(DataType="bool", Description="If code lock sync is active")>]
        member val Active:Boolean = new Boolean() with get,set

        ///<summary>
        ///Number of minutes the access should be valid before booking starts.
        ///</summary>
        [<ApiMember(DataType="int", Description="Number of minutes the access should be valid before booking starts.")>]
        member val ValidBeforeMinutes:Int32 = new Int32() with get,set

        ///<summary>
        ///Number of minutes the access should be valid after booking ends.
        ///</summary>
        [<ApiMember(DataType="int", Description="Number of minutes the access should be valid after booking ends.")>]
        member val ValidAfterMinutes:Int32 = new Int32() with get,set

        ///<summary>
        ///If it should clean up old bookings after the passed
        ///</summary>
        [<ApiMember(DataType="boolean", Description="If it should clean up old bookings after the passed")>]
        member val DeleteOldBySchedule:Boolean = new Boolean() with get,set

        ///<summary>
        ///If a notification should be sent by Email
        ///</summary>
        [<ApiMember(DataType="boolean", Description="If a notification should be sent by Email")>]
        member val SendEmailNotification:Boolean = new Boolean() with get,set

        ///<summary>
        ///If a notification should be sent by SMS
        ///</summary>
        [<ApiMember(DataType="boolean", Description="If a notification should be sent by SMS")>]
        member val SendSMSNotification:Boolean = new Boolean() with get,set

        ///<summary>
        ///How long before the booking starts in minutes the notification should be sent
        ///</summary>
        [<ApiMember(DataType="int", Description="How long before the booking starts in minutes the notification should be sent")>]
        member val EmailNotificationTime:Int32 = new Int32() with get,set

        ///<summary>
        ///How long before the booking starts in minutes the notification should be sent
        ///</summary>
        [<ApiMember(DataType="int", Description="How long before the booking starts in minutes the notification should be sent")>]
        member val SMSNotificationTime:Int32 = new Int32() with get,set

        ///<summary>
        ///When settings was created
        ///</summary>
        [<ApiMember(DataType="datetime", Description="When settings was created")>]
        member val Created:DateTime = new DateTime() with get,set

        ///<summary>
        ///When settings was updated
        ///</summary>
        [<ApiMember(DataType="datetime", Description="When settings was updated")>]
        member val Updated:DateTime = new DateTime() with get,set

        ///<summary>
        ///The available code lock systems to choose from
        ///</summary>
        [<ApiMember(Description="The available code lock systems to choose from")>]
        member val CodeLockSystemOptions:ResizeArray<CodeLockSystemResponse> = new ResizeArray<CodeLockSystemResponse>() with get,set

    [<ValidateRequest(Validator="IsAuthenticated")>]
    [<ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)>]
    [<ApiResponse(Description="You have too low privileges to call this service", StatusCode=403)>]
    [<AllowNullLiteral>]
    type UpdateCodeLockSetting() = 
        ///<summary>
        ///The company id, if empty will use the company id for the user you are logged in with.
        ///</summary>
        [<ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.")>]
        member val CompanyId:Nullable<Guid> = new Nullable<Guid>() with get,set

        ///<summary>
        ///If code lock sync is active
        ///</summary>
        [<ApiMember(DataType="bool", Description="If code lock sync is active")>]
        member val Active:Nullable<Boolean> = new Nullable<Boolean>() with get,set

        ///<summary>
        ///The system type of the code lock
        ///</summary>
        [<ApiMember(DataType="int", Description="The system type of the code lock")>]
        member val CodeLockSystemsId:Nullable<Int32> = new Nullable<Int32>() with get,set

        ///<summary>
        ///Number of minutes the access should be valid before booking starts.
        ///</summary>
        [<ApiMember(DataType="int", Description="Number of minutes the access should be valid before booking starts.")>]
        member val ValidBeforeMinutes:Nullable<Int32> = new Nullable<Int32>() with get,set

        ///<summary>
        ///Number of minutes the access should be valid after booking ends.
        ///</summary>
        [<ApiMember(DataType="int", Description="Number of minutes the access should be valid after booking ends.")>]
        member val ValidAfterMinutes:Nullable<Int32> = new Nullable<Int32>() with get,set

        ///<summary>
        ///If it should clean up old bookings after the passed
        ///</summary>
        [<ApiMember(DataType="boolean", Description="If it should clean up old bookings after the passed")>]
        member val DeleteOldBySchedule:Nullable<Boolean> = new Nullable<Boolean>() with get,set

        ///<summary>
        ///If a notification should be sent by Email
        ///</summary>
        [<ApiMember(DataType="boolean", Description="If a notification should be sent by Email")>]
        member val SendEmailNotification:Nullable<Boolean> = new Nullable<Boolean>() with get,set

        ///<summary>
        ///If a notification should be sent by SMS
        ///</summary>
        [<ApiMember(DataType="boolean", Description="If a notification should be sent by SMS")>]
        member val SendSMSNotification:Nullable<Boolean> = new Nullable<Boolean>() with get,set

        ///<summary>
        ///How long before the booking starts in minutes the notification should be sent
        ///</summary>
        [<ApiMember(DataType="int", Description="How long before the booking starts in minutes the notification should be sent")>]
        member val EmailNotificationTime:Nullable<Int32> = new Nullable<Int32>() with get,set

        ///<summary>
        ///How long before the booking starts in minutes the notification should be sent
        ///</summary>
        [<ApiMember(DataType="int", Description="How long before the booking starts in minutes the notification should be sent")>]
        member val SMSNotificationTime:Nullable<Int32> = new Nullable<Int32>() with get,set

F# UpdateCodeLockSetting DTOs

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

HTTP + CSV

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

PUT /codelock/settings HTTP/1.1 
Host: testapi.bokamera.se 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"CompanyId":"00000000-0000-0000-0000-000000000000","Active":false,"CodeLockSystemsId":0,"ValidBeforeMinutes":0,"ValidAfterMinutes":0,"DeleteOldBySchedule":false,"SendEmailNotification":false,"SendSMSNotification":false,"EmailNotificationTime":0,"SMSNotificationTime":0}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"CodeLockSystemsId":0,"Active":false,"ValidBeforeMinutes":0,"ValidAfterMinutes":0,"DeleteOldBySchedule":false,"SendEmailNotification":false,"SendSMSNotification":false,"EmailNotificationTime":0,"SMSNotificationTime":0,"CodeLockSystemOptions":[{"Id":0,"Name":"String","Description":"String","Supplier":"String"}]}