Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
PUT | /settings/system | Update system settings for the currently logged in user | Update system settings for 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
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class LanguageResponse:
id: Optional[str] = None
name: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SystemSettingsResponse:
# @ApiMember(Description="The country options to choose from")
language_options: Optional[List[LanguageResponse]] = None
"""
The country options to choose from
"""
# @ApiMember(DataType="bool", Description="If the booking is active or not")
active: bool = False
"""
If the booking is active or not
"""
# @ApiMember(DataType="string", Description="If the booking is not active, what message to show to the customers")
inactive_message: Optional[str] = None
"""
If the booking is not active, what message to show to the customers
"""
# @ApiMember(DataType="bool", Description="If the company should be visible in search results on hompage")
searchable: bool = False
"""
If the company should be visible in search results on hompage
"""
# @ApiMember(DataType="string", Description="If you have a google analytics account and want to track your customers behaviors.")
ga_tracking_id: Optional[str] = None
"""
If you have a google analytics account and want to track your customers behaviors.
"""
# @ApiMember(DataType="string", Description="If you have a google Ads Conversion Id account and want to track your customers behaviors.")
google_ads_conversion_id: Optional[str] = None
"""
If you have a google Ads Conversion Id account and want to track your customers behaviors.
"""
# @ApiMember(DataType="string", Description="If you have a LinkedIn account and want to track your customers behaviors.")
linkedin_tag_id: Optional[str] = None
"""
If you have a LinkedIn account and want to track your customers behaviors.
"""
# @ApiMember(DataType="string", Description="If you have a Google Ads Conversion Label and want to track your customers behaviors.")
google_ads_conversion_label: Optional[str] = None
"""
If you have a Google Ads Conversion Label and want to track your customers behaviors.
"""
# @ApiMember(DataType="string", Description="If you have a google tag manager account and want to track your customers behaviors.")
gtm_tracking_id: Optional[str] = None
"""
If you have a google tag manager account and want to track your customers behaviors.
"""
# @ApiMember(DataType="string", Description="If you have a facebook account and want to track your customers behaviors.")
facebook_pixel_id: Optional[str] = None
"""
If you have a facebook account and want to track your customers behaviors.
"""
# @ApiMember(DataType="bool", Description="If the company should be visible on the marketplace")
show_on_marketplace: bool = False
"""
If the company should be visible on the marketplace
"""
# @ApiMember(DataType="bool", Description="If you want your customers to be albe to change language on your homepage")
multi_language: bool = False
"""
If you want your customers to be albe to change language on your homepage
"""
# @ApiMember(DataType="bool", Description="If you want your own written text on your homepage to be translated using google analytics when a user changes language")
enable_a_p_i_translation: bool = False
"""
If you want your own written text on your homepage to be translated using google analytics when a user changes language
"""
# @ApiMember(DataType="string", Description="What is the standard language your homepage information is written in. Select from the different countries, ie. SE,NO,EN")
default_language: Optional[str] = None
"""
What is the standard language your homepage information is written in. Select from the different countries, ie. SE,NO,EN
"""
# @ApiMember(Description="If you want to allow to send customer information in the tracking events to the external providers. Note you as a company are responsible for informing your customers and handling the data in terms of GDPR. ")
send_customer_information_to_external_providers: bool = False
"""
If you want to allow to send customer information in the tracking events to the external providers. Note you as a company are responsible for informing your customers and handling the data in terms of GDPR.
"""
# @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
# @ApiResponse(Description="You have too low privilegies to call this service", StatusCode=403)
# @ValidateRequest(Validator="IsAuthenticated")
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class UpdateSystemSetting(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="bool", Description="If the booking is active or not")
active: Optional[bool] = None
"""
If the booking is active or not
"""
# @ApiMember(DataType="string", Description="If the booking is not active, what message to show to the customers")
inactive_message: Optional[str] = None
"""
If the booking is not active, what message to show to the customers
"""
# @ApiMember(DataType="bool", Description="If the company should be visible in search results on hompage")
searchable: Optional[bool] = None
"""
If the company should be visible in search results on hompage
"""
# @ApiMember(DataType="string", Description="If you have a google analytics account and want to track your customers behaviors.")
ga_tracking_id: Optional[str] = None
"""
If you have a google analytics account and want to track your customers behaviors.
"""
# @ApiMember(DataType="string", Description="If you have a google Ads Conversion Id account and want to track your customers behaviors.")
google_ads_conversion_id: Optional[str] = None
"""
If you have a google Ads Conversion Id account and want to track your customers behaviors.
"""
# @ApiMember(DataType="string", Description="If you have a LinkedIn account and want to track your customers behaviors.")
linkedin_tag_id: Optional[str] = None
"""
If you have a LinkedIn account and want to track your customers behaviors.
"""
# @ApiMember(DataType="string", Description="If you have a Google Ads Conversion Label and want to track your customers behaviors.")
google_ads_conversion_label: Optional[str] = None
"""
If you have a Google Ads Conversion Label and want to track your customers behaviors.
"""
# @ApiMember(DataType="string", Description="If you have a google tag manager account and want to track your customers behaviors.")
gtm_tracking_id: Optional[str] = None
"""
If you have a google tag manager account and want to track your customers behaviors.
"""
# @ApiMember(DataType="string", Description="If you have a facebook account and want to track your customers behaviors.")
facebook_pixel_id: Optional[str] = None
"""
If you have a facebook account and want to track your customers behaviors.
"""
# @ApiMember(DataType="bool", Description="If the company should be visible on the marketplace")
show_on_marketplace: Optional[bool] = None
"""
If the company should be visible on the marketplace
"""
# @ApiMember(DataType="bool", Description="If you want your customers to be albe to change language on your homepage")
multi_language: Optional[bool] = None
"""
If you want your customers to be albe to change language on your homepage
"""
# @ApiMember(DataType="bool", Description="If you want your own written text on your homepage to be translated using google analytics when a user changes language")
enable_a_p_i_translation: Optional[bool] = None
"""
If you want your own written text on your homepage to be translated using google analytics when a user changes language
"""
# @ApiMember(DataType="string", Description="What is the standard language your homepage information is written in. Select from the different countries, ie. SE,NO,EN")
default_language: Optional[str] = None
"""
What is the standard language your homepage information is written in. Select from the different countries, ie. SE,NO,EN
"""
# @ApiMember(Description="If you want to allow to send customer information in the tracking events to the external providers. Note you as a company are responsible for informing your customers and handling the data in terms of GDPR. ")
send_customer_information_to_external_providers: Optional[bool] = None
"""
If you want to allow to send customer information in the tracking events to the external providers. Note you as a company are responsible for informing your customers and handling the data in terms of GDPR.
"""
# @ApiMember(Description="The maximum number of SMS messages that can be sent per day.")
sms_message_daily_send_limit: Optional[int] = None
"""
The maximum number of SMS messages that can be sent per day.
"""
# @ApiMember(Description="The maximum number of email messages that can be sent per day.")
email_message_daily_send_limit: Optional[int] = None
"""
The maximum number of email messages that can be sent per day.
"""
Python UpdateSystemSetting 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.
PUT /settings/system HTTP/1.1
Host: api.bokamera.se
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<UpdateSystemSetting 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>
<DefaultLanguage>String</DefaultLanguage>
<EmailMessageDailySendLimit>0</EmailMessageDailySendLimit>
<EnableAPITranslation>false</EnableAPITranslation>
<FacebookPixelId>String</FacebookPixelId>
<GATrackingId>String</GATrackingId>
<GTMTrackingId>String</GTMTrackingId>
<GoogleAdsConversionId>String</GoogleAdsConversionId>
<GoogleAdsConversionLabel>String</GoogleAdsConversionLabel>
<InactiveMessage>String</InactiveMessage>
<LinkedinTagId>String</LinkedinTagId>
<MultiLanguage>false</MultiLanguage>
<SMSMessageDailySendLimit>0</SMSMessageDailySendLimit>
<Searchable>false</Searchable>
<SendCustomerInformationToExternalProviders>false</SendCustomerInformationToExternalProviders>
<ShowOnMarketplace>false</ShowOnMarketplace>
</UpdateSystemSetting>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <SystemSettingsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos"> <Active>false</Active> <DefaultLanguage>String</DefaultLanguage> <EnableAPITranslation>false</EnableAPITranslation> <FacebookPixelId>String</FacebookPixelId> <GATrackingId>String</GATrackingId> <GTMTrackingId>String</GTMTrackingId> <GoogleAdsConversionId>String</GoogleAdsConversionId> <GoogleAdsConversionLabel>String</GoogleAdsConversionLabel> <InactiveMessage>String</InactiveMessage> <LanguageOptions> <LanguageResponse> <Id>String</Id> <Name>String</Name> </LanguageResponse> </LanguageOptions> <LinkedinTagId>String</LinkedinTagId> <MultiLanguage>false</MultiLanguage> <Searchable>false</Searchable> <SendCustomerInformationToExternalProviders>false</SendCustomerInformationToExternalProviders> <ShowOnMarketplace>false</ShowOnMarketplace> </SystemSettingsResponse>