GET | /homepage/scheduler/settings | Get homepage scheduler settings |
---|
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
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class HomepageSchedulerServiceResponse:
# @ApiMember(Description="The service id.")
id: int = 0
"""
The service id.
"""
# @ApiMember(Description="The service name.")
name: Optional[str] = None
"""
The service name.
"""
# @ApiMember(Description="The service description.")
description: Optional[str] = None
"""
The service description.
"""
# @ApiMember(Description="The service image url.")
image_url: Optional[str] = None
"""
The service image url.
"""
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class HomepageSchedulerResourceResponse:
# @ApiMember(Description="The resource id.")
id: int = 0
"""
The resource id.
"""
# @ApiMember(Description="The resource name.")
name: Optional[str] = None
"""
The resource name.
"""
# @ApiMember(Description="The resource description.")
description: Optional[str] = None
"""
The resource description.
"""
# @ApiMember(Description="The resource image url.")
image_url: Optional[str] = None
"""
The resource image url.
"""
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class HomepageSchedulerFieldResponse:
# @ApiMember(Description="The field id.")
id: int = 0
"""
The field id.
"""
# @ApiMember(Description="If the field should be shown on booking.")
show_on_booking: bool = False
"""
If the field should be shown on booking.
"""
# @ApiMember(Description="If the field should be shown on tooltip.")
show_on_tooltip: bool = False
"""
If the field should be shown on tooltip.
"""
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class HomepageSchedulerFieldOptionsResponse:
# @ApiMember(Description="The field id.")
id: int = 0
"""
The field id.
"""
# @ApiMember(Description="The field name.")
name: Optional[str] = None
"""
The field name.
"""
# @ApiMember(Description="The field description.")
description: Optional[str] = None
"""
The field description.
"""
# @ApiMember(Description="The field sort order when listing.")
sort_order: int = 0
"""
The field sort order when listing.
"""
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ScheduleViewResponse:
id: int = 0
name: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class HomepageSchedulerSettingsQueryResponse:
# @ApiMember(Description="The company id.")
company_id: Optional[str] = None
"""
The company id.
"""
# @ApiMember(Description="If the user schedule is activated.")
active: bool = False
"""
If the user schedule is activated.
"""
# @ApiMember(Description="If the user schedule views id.")
schedule_view_id: int = 0
"""
If the user schedule views id.
"""
# @ApiMember(Description="If the user schedule time slots in minutes.")
schedule_time_slot_minutes: int = 0
"""
If the user schedule time slots in minutes.
"""
# @ApiMember(Description="If the user schedule time start time.")
start_time: Optional[datetime.timedelta] = None
"""
If the user schedule time start time.
"""
# @ApiMember(Description="If the user schedule time end time.")
end_time: Optional[datetime.timedelta] = None
"""
If the user schedule time end time.
"""
# @ApiMember(Description="If the user schedule should contain time exceptions.")
show_time_exceptions: bool = False
"""
If the user schedule should contain time exceptions.
"""
# @ApiMember(Description="If allow booking in the scheduler.")
enable_booking: bool = False
"""
If allow booking in the scheduler.
"""
# @ApiMember(Description="The homepage schedule services that are selected")
services: Optional[List[HomepageSchedulerServiceResponse]] = None
"""
The homepage schedule services that are selected
"""
# @ApiMember(Description="The homepage schedule resources that are selected")
resources: Optional[List[HomepageSchedulerResourceResponse]] = None
"""
The homepage schedule resources that are selected
"""
# @ApiMember(Description="The homepage schedule fields that are selected")
fields: Optional[List[HomepageSchedulerFieldResponse]] = None
"""
The homepage schedule fields that are selected
"""
# @ApiMember(Description="The homepage schedule fields select from")
field_options: Optional[List[HomepageSchedulerFieldOptionsResponse]] = None
"""
The homepage schedule fields select from
"""
# @ApiMember(Description="The available schedule view options to choose from")
schedule_view_options: Optional[List[ScheduleViewResponse]] = None
"""
The available schedule view options to choose from
"""
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class HomepageSchedulerSettingsQuery(ICompany, ICompanyRequest):
# @ApiMember(Description="Enter the company you want to see news for, if blank and you are an admin, your company id will be used", ParameterType="query")
company_id: Optional[str] = None
"""
Enter the company you want to see news for, if blank and you are an admin, your company id will be used
"""
# @ApiMember(DataType="boolean", Description="If you want to include the services that is connected", ParameterType="query")
include_services: bool = False
"""
If you want to include the services that is connected
"""
# @ApiMember(DataType="boolean", Description="If you want to include the resources that is connected", ParameterType="query")
include_resources: bool = False
"""
If you want to include the resources that is connected
"""
# @ApiMember(DataType="boolean", Description="If you want to include the scheduler fields that is connected", ParameterType="query")
include_fields: bool = False
"""
If you want to include the scheduler fields that is connected
"""
# @ApiMember(DataType="boolean", Description="If you want to include the service to select from", ParameterType="query")
include_service_options: bool = False
"""
If you want to include the service to select from
"""
# @ApiMember(DataType="boolean", Description="If you want to include the resources to select from", ParameterType="query")
include_resource_options: bool = False
"""
If you want to include the resources to select from
"""
# @ApiMember(DataType="boolean", Description="If you want to include the scheduler fields to select from", ParameterType="query")
include_field_options: bool = False
"""
If you want to include the scheduler fields to select from
"""
# @ApiMember(DataType="boolean", Description="If you want to include the schedule views to select from", ParameterType="query")
include_schedule_view_options: bool = False
"""
If you want to include the schedule views to select from
"""
# @ApiMember(Description="The homeage sitepath.")
site_path: Optional[str] = None
"""
The homeage sitepath.
"""
Python HomepageSchedulerSettingsQuery DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /homepage/scheduler/settings HTTP/1.1 Host: testapi.bokamera.se Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <HomepageSchedulerSettingsQueryResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos"> <Active>false</Active> <CompanyId>00000000-0000-0000-0000-000000000000</CompanyId> <EnableBooking>false</EnableBooking> <EndTime>PT0S</EndTime> <FieldOptions> <HomepageSchedulerFieldOptionsResponse> <Description>String</Description> <Id>0</Id> <Name>String</Name> <SortOrder>0</SortOrder> </HomepageSchedulerFieldOptionsResponse> </FieldOptions> <Fields> <HomepageSchedulerFieldResponse> <Id>0</Id> <ShowOnBooking>false</ShowOnBooking> <ShowOnTooltip>false</ShowOnTooltip> </HomepageSchedulerFieldResponse> </Fields> <Resources> <HomepageSchedulerResourceResponse> <Description>String</Description> <Id>0</Id> <ImageUrl i:nil="true" /> <Name>String</Name> </HomepageSchedulerResourceResponse> </Resources> <ScheduleTimeSlotMinutes>0</ScheduleTimeSlotMinutes> <ScheduleViewId>0</ScheduleViewId> <ScheduleViewOptions> <ScheduleViewResponse> <Id>0</Id> <Name>String</Name> </ScheduleViewResponse> </ScheduleViewOptions> <Services> <HomepageSchedulerServiceResponse> <Description>String</Description> <Id>0</Id> <ImageUrl i:nil="true" /> <Name>String</Name> </HomepageSchedulerServiceResponse> </Services> <ShowTimeExceptions>false</ShowTimeExceptions> <StartTime>PT0S</StartTime> </HomepageSchedulerSettingsQueryResponse>