BokaMera.API.Host

<back to all web services

AddSiedleCodeLockSetting

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
POST/codelock/siedle/settingsAdd settings for the code lock of the company of the currently logged in userAdd settings for code lock of the company of the currently logged in user.
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


class SiedleIntegrationType(IntEnum):
    LOCAL_API = 1
    CLOUD_BASED_API = 2


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CodeLockSiedleSettingResponse:
    company_id: Optional[str] = None
    # @ApiMember(DataType="string", Description="The api endpoint of the code lock")
    api_endpoint: Optional[str] = None
    """
    The api endpoint of the code lock
    """


    # @ApiMember(DataType="string", Description="The api port for the code lock.")
    api_port: Optional[int] = None
    """
    The api port for the code lock.
    """


    # @ApiMember(DataType="string", Description="The device id to the code lock.")
    device_id: Optional[str] = None
    """
    The device id to the code lock.
    """


    # @ApiMember(DataType="string", Description="The username to logon to the code lock.")
    username: Optional[str] = None
    """
    The username to logon to the code lock.
    """


    # @ApiMember(DataType="string", Description="The password to logon to the code lock.")
    password: Optional[str] = None
    """
    The password to logon to the code lock.
    """


    # @ApiMember(DataType="string", Description="The integration type to the code lock. 1 = Local Api,  2 = Cloud Based Api")
    integration_type: Optional[SiedleIntegrationType] = None
    """
    The integration type to the code lock. 1 = Local Api,  2 = Cloud Based Api
    """


    # @ApiMember(DataType="datetime", Description="When settings was created")
    created: datetime.datetime = datetime.datetime(1, 1, 1)
    """
    When settings was created
    """


    # @ApiMember(DataType="datetime", Description="When settings was updated")
    updated: datetime.datetime = datetime.datetime(1, 1, 1)
    """
    When settings was updated
    """


# @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)
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class AddSiedleCodeLockSetting(ICompany):
    # @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.")
    company_id: Optional[str] = None
    """
    The company id, if empty will use the company id for the user you are logged in with.
    """


    # @ApiMember(DataType="string", Description="The api endpoint of the code lock", IsRequired=true)
    api_endpoint: Optional[str] = None
    """
    The api endpoint of the code lock
    """


    # @ApiMember(DataType="string", Description="The api port for the code lock.", IsRequired=true)
    api_port: Optional[str] = None
    """
    The api port for the code lock.
    """


    # @ApiMember(DataType="string", Description="The device id to the code lock.")
    device_id: Optional[str] = None
    """
    The device id to the code lock.
    """


    # @ApiMember(DataType="string", Description="The integration type to the code lock. 1 = Local Api,  2 = Cloud Based Api")
    integration_type: Optional[SiedleIntegrationType] = None
    """
    The integration type to the code lock. 1 = Local Api,  2 = Cloud Based Api
    """


    # @ApiMember(DataType="string", Description="The username to logon to the code lock.", IsRequired=true)
    username: Optional[str] = None
    """
    The username to logon to the code lock.
    """


    # @ApiMember(DataType="string", Description="The password to logon to the code lock.", IsRequired=true)
    password: Optional[str] = None
    """
    The password to logon to the code lock.
    """

Python AddSiedleCodeLockSetting DTOs

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

HTTP + OTHER

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

POST /codelock/siedle/settings HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"CompanyId":"00000000-0000-0000-0000-000000000000","ApiEndpoint":"String","ApiPort":"String","DeviceId":"String","IntegrationType":"LocalApi","Username":"String","Password":"String"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"ApiEndpoint":"String","ApiPort":0,"DeviceId":"String","Username":"String","Password":"String","IntegrationType":"LocalApi"}