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.
import Foundation
import ServiceStack

// @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)
public class UpdateCodeLockSetting : ICompany, Codable
{
    /**
    * 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 var companyId:String?

    /**
    * If code lock sync is active
    */
    // @ApiMember(DataType="bool", Description="If code lock sync is active")
    public var active:Bool?

    /**
    * The system type of the code lock
    */
    // @ApiMember(DataType="int", Description="The system type of the code lock")
    public var codeLockSystemsId:Int?

    /**
    * Number of minutes the access should be valid before booking starts.
    */
    // @ApiMember(DataType="int", Description="Number of minutes the access should be valid before booking starts.")
    public var validBeforeMinutes:Int?

    /**
    * Number of minutes the access should be valid after booking ends.
    */
    // @ApiMember(DataType="int", Description="Number of minutes the access should be valid after booking ends.")
    public var validAfterMinutes:Int?

    /**
    * If it should clean up old bookings after the passed
    */
    // @ApiMember(DataType="boolean", Description="If it should clean up old bookings after the passed")
    public var deleteOldBySchedule:Bool?

    /**
    * If a notification should be sent by Email
    */
    // @ApiMember(DataType="boolean", Description="If a notification should be sent by Email")
    public var sendEmailNotification:Bool?

    /**
    * If a notification should be sent by SMS
    */
    // @ApiMember(DataType="boolean", Description="If a notification should be sent by SMS")
    public var sendSMSNotification:Bool?

    /**
    * How long before the booking starts in minutes the notification should be sent
    */
    // @ApiMember(DataType="int", Description="How long before the booking starts in minutes the notification should be sent")
    public var emailNotificationTime:Int?

    /**
    * How long before the booking starts in minutes the notification should be sent
    */
    // @ApiMember(DataType="int", Description="How long before the booking starts in minutes the notification should be sent")
    public var smsNotificationTime:Int?

    required public init(){}
}

public class CodeLockSettingResponse : Codable
{
    public var companyId:String
    /**
    * The system type of the code lock
    */
    // @ApiMember(DataType="int", Description="The system type of the code lock")
    public var codeLockSystemsId:Int

    /**
    * If code lock sync is active
    */
    // @ApiMember(DataType="bool", Description="If code lock sync is active")
    public var active:Bool

    /**
    * Number of minutes the access should be valid before booking starts.
    */
    // @ApiMember(DataType="int", Description="Number of minutes the access should be valid before booking starts.")
    public var validBeforeMinutes:Int

    /**
    * Number of minutes the access should be valid after booking ends.
    */
    // @ApiMember(DataType="int", Description="Number of minutes the access should be valid after booking ends.")
    public var validAfterMinutes:Int

    /**
    * If it should clean up old bookings after the passed
    */
    // @ApiMember(DataType="boolean", Description="If it should clean up old bookings after the passed")
    public var deleteOldBySchedule:Bool

    /**
    * If a notification should be sent by Email
    */
    // @ApiMember(DataType="boolean", Description="If a notification should be sent by Email")
    public var sendEmailNotification:Bool

    /**
    * If a notification should be sent by SMS
    */
    // @ApiMember(DataType="boolean", Description="If a notification should be sent by SMS")
    public var sendSMSNotification:Bool

    /**
    * How long before the booking starts in minutes the notification should be sent
    */
    // @ApiMember(DataType="int", Description="How long before the booking starts in minutes the notification should be sent")
    public var emailNotificationTime:Int

    /**
    * How long before the booking starts in minutes the notification should be sent
    */
    // @ApiMember(DataType="int", Description="How long before the booking starts in minutes the notification should be sent")
    public var smsNotificationTime:Int

    /**
    * When settings was created
    */
    // @ApiMember(DataType="datetime", Description="When settings was created")
    public var created:Date

    /**
    * When settings was updated
    */
    // @ApiMember(DataType="datetime", Description="When settings was updated")
    public var updated:Date

    /**
    * The available code lock systems to choose from
    */
    // @ApiMember(Description="The available code lock systems to choose from")
    public var codeLockSystemOptions:[CodeLockSystemResponse] = []

    required public init(){}
}

public class CodeLockSystemResponse : Codable
{
    /**
    * The system type of the code lock
    */
    // @ApiMember(DataType="int", Description="The system type of the code lock")
    public var id:Int

    /**
    * The name of the code lock system
    */
    // @ApiMember(DataType="string", Description="The name of the code lock system")
    public var name:String

    /**
    * The description of the code lock system
    */
    // @ApiMember(DataType="string", Description="The description of the code lock system")
    public var Description:String

    /**
    * The logotype of the code lock system
    */
    // @ApiMember(Description="The logotype of the code lock system")
    public var logoType:Uri

    /**
    * The supplier name of the code lock system
    */
    // @ApiMember(Description="The supplier name of the code lock system")
    public var supplier:String

    required public init(){}
}


Swift UpdateCodeLockSetting 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 /codelock/settings HTTP/1.1 
Host: testapi.bokamera.se 
Accept: text/jsv
Content-Type: text/jsv
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/jsv
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
		}
	]
}