BokaMera.API.Host

<back to all web services

UpdateHomepageSettings

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
PUT/homepage/settingsUpdate the homepage settingsUpdate the homepage settings on the company of the currently logged in user, only administrators are allowed to update homepage menu.
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 HomepageTemplateResponse:
    # @ApiMember(Description="The template id")
    id: int = 0
    """
    The template id
    """


    # @ApiMember(Description="The template name")
    name: Optional[str] = None
    """
    The template name
    """


    # @ApiMember(Description="The template description")
    description: Optional[str] = None
    """
    The template description
    """


    # @ApiMember(Description="The template image url")
    image_url: Optional[str] = None
    """
    The template image url
    """


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class HomepageHeroSectionStyleResponse:
    # @ApiMember(Description="The hero section style id")
    id: int = 0
    """
    The hero section style id
    """


    # @ApiMember(Description="The hero section style name")
    name: Optional[str] = None
    """
    The hero section style name
    """


    # @ApiMember(Description="The hero section style description")
    description: Optional[str] = None
    """
    The hero section style description
    """


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class HomepageSettingsQueryResponse:
    # @ApiMember(Description="The company id")
    company_id: Optional[str] = None
    """
    The company id
    """


    # @ApiMember(Description="The text for homepage heading")
    homepage_heading: Optional[str] = None
    """
    The text for homepage heading
    """


    # @ApiMember(Description="The text for homepage startpage heading")
    welcome_page_heading: Optional[str] = None
    """
    The text for homepage startpage heading
    """


    # @ApiMember(Description="The text for homepage startpage body")
    welcome_page_body: Optional[str] = None
    """
    The text for homepage startpage body
    """


    # @ApiMember(Description="The text for homepage about us page heading")
    about_us_page_heading: Optional[str] = None
    """
    The text for homepage about us page heading
    """


    # @ApiMember(Description="The text for homepage about us page body")
    about_us_page_body: Optional[str] = None
    """
    The text for homepage about us page body
    """


    # @ApiMember(Description="The startpage image url")
    image_url: Optional[str] = None
    """
    The startpage image url
    """


    # @ApiMember(Description="The template for the homepage")
    home_page_template_id: int = 0
    """
    The template for the homepage
    """


    # @ApiMember(Description="The hero section style for the homepage")
    hero_section_style_id: int = 0
    """
    The hero section style for the homepage
    """


    # @ApiMember(Description="Show rating on the page")
    show_rating: bool = False
    """
    Show rating on the page
    """


    # @ApiMember(Description="Enable the BokaMera Homepage")
    enable_homepage: bool = False
    """
    Enable the BokaMera Homepage
    """


    # @ApiMember(DataType="datetime", Description="Will show when the homepage settings was created, note it will only be shown if your logged in as admin for the company.")
    updated: Optional[datetime.datetime] = None
    """
    Will show when the homepage settings was created, note it will only be shown if your logged in as admin for the company.
    """


    # @ApiMember(DataType="datetime", Description="Will show when the homepage settings was updated, note it will only be shown if your logged in as admin for the company.")
    created: Optional[datetime.datetime] = None
    """
    Will show when the homepage settings was updated, note it will only be shown if your logged in as admin for the company.
    """


    # @ApiMember(DataType="boolean", Description="The homepage templates options to select from", ParameterType="query")
    home_page_template_options: Optional[List[HomepageTemplateResponse]] = None
    """
    The homepage templates options to select from
    """


    # @ApiMember(DataType="boolean", Description="The homepage hero section style options to select from", ParameterType="query")
    homepage_hero_section_style_options: Optional[List[HomepageHeroSectionStyleResponse]] = None
    """
    The homepage hero section style options to select from
    """


# @ValidateRequest(Validator="IsAuthenticated")
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class UpdateHomepageSettings(ICompany):
    # @ApiMember(Description="The company id")
    company_id: Optional[str] = None
    """
    The company id
    """


    # @ApiMember(Description="The text for homepage heading")
    homepage_heading: Optional[str] = None
    """
    The text for homepage heading
    """


    # @ApiMember(Description="The text for homepage startpage heading")
    welcome_page_heading: Optional[str] = None
    """
    The text for homepage startpage heading
    """


    # @ApiMember(Description="The text for homepage startpage body")
    welcome_page_body: Optional[str] = None
    """
    The text for homepage startpage body
    """


    # @ApiMember(Description="The text for homepage about us page heading")
    about_us_page_heading: Optional[str] = None
    """
    The text for homepage about us page heading
    """


    # @ApiMember(Description="The text for homepage about us page body")
    about_us_page_body: Optional[str] = None
    """
    The text for homepage about us page body
    """


    # @ApiMember(Description="The start page image url")
    image_url: Optional[str] = None
    """
    The start page image url
    """


    # @ApiMember(Description="The template for the homepage")
    home_page_template_id: Optional[int] = None
    """
    The template for the homepage
    """


    # @ApiMember(Description="Show rating on the page")
    show_rating: Optional[bool] = None
    """
    Show rating on the page
    """


    # @ApiMember(Description="Enable the BokaMera Homepage")
    enable_homepage: Optional[bool] = None
    """
    Enable the BokaMera Homepage
    """


    # @ApiMember(Description="The hero section style for the homepage")
    hero_section_style_id: Optional[int] = None
    """
    The hero section style for the homepage
    """

Python UpdateHomepageSettings 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 /homepage/settings HTTP/1.1 
Host: api.bokamera.se 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"CompanyId":"00000000-0000-0000-0000-000000000000","HomepageHeading":"String","WelcomePageHeading":"String","WelcomePageBody":"String","AboutUsPageHeading":"String","AboutUsPageBody":"String","HomePageTemplateId":0,"ShowRating":false,"EnableHomepage":false,"HeroSectionStyleId":0}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"HomepageHeading":"String","WelcomePageHeading":"String","WelcomePageBody":"String","AboutUsPageHeading":"String","AboutUsPageBody":"String","HomePageTemplateId":0,"HeroSectionStyleId":0,"ShowRating":false,"EnableHomepage":false,"Updated":"0001-01-01T00:00:00","Created":"0001-01-01T00:00:00","HomePageTemplateOptions":[{"Id":0,"Name":"String","Description":"String"}],"HomepageHeroSectionStyleOptions":[{"Id":0,"Name":"String","Description":"String"}]}