BokaMera.API.Host

<back to all web services

UpdateSystemSetting

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
PUT/settings/systemUpdate system settings for the currently logged in userUpdate system settings for the currently logged in user.
namespace BokaMera.API.ServiceModel.Dtos

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type LanguageResponse() = 
        member val Id:String = null with get,set
        member val Name:String = null with get,set

    [<AllowNullLiteral>]
    type SystemSettingsResponse() = 
        ///<summary>
        ///The country options to choose from
        ///</summary>
        [<ApiMember(Description="The country options to choose from")>]
        member val LanguageOptions:ResizeArray<LanguageResponse> = new ResizeArray<LanguageResponse>() with get,set

        ///<summary>
        ///If the booking is active or not
        ///</summary>
        [<ApiMember(DataType="bool", Description="If the booking is active or not")>]
        member val Active:Boolean = new Boolean() with get,set

        ///<summary>
        ///If the booking is not active, what message to show to the customers
        ///</summary>
        [<ApiMember(DataType="string", Description="If the booking is not active, what message to show to the customers")>]
        member val InactiveMessage:String = null with get,set

        ///<summary>
        ///If the company should be visible in search results on hompage
        ///</summary>
        [<ApiMember(DataType="bool", Description="If the company should be visible in search results on hompage")>]
        member val Searchable:Boolean = new Boolean() with get,set

        ///<summary>
        ///If you have a google analytics account and want to track your customers behaviors.
        ///</summary>
        [<ApiMember(DataType="string", Description="If you have a google analytics account and want to track your customers behaviors.")>]
        member val GATrackingId:String = null with get,set

        ///<summary>
        ///If you have a google Ads Conversion Id account and want to track your customers behaviors.
        ///</summary>
        [<ApiMember(DataType="string", Description="If you have a google Ads Conversion Id account and want to track your customers behaviors.")>]
        member val GoogleAdsConversionId:String = null with get,set

        ///<summary>
        ///If you have a LinkedIn account and want to track your customers behaviors.
        ///</summary>
        [<ApiMember(DataType="string", Description="If you have a LinkedIn account and want to track your customers behaviors.")>]
        member val LinkedinTagId:String = null with get,set

        ///<summary>
        ///If you have a Google Ads Conversion Label and want to track your customers behaviors.
        ///</summary>
        [<ApiMember(DataType="string", Description="If you have a Google Ads Conversion Label and want to track your customers behaviors.")>]
        member val GoogleAdsConversionLabel:String = null with get,set

        ///<summary>
        ///If you have a google tag manager account and want to track your customers behaviors.
        ///</summary>
        [<ApiMember(DataType="string", Description="If you have a google tag manager account and want to track your customers behaviors.")>]
        member val GTMTrackingId:String = null with get,set

        ///<summary>
        ///If you have a facebook account and want to track your customers behaviors.
        ///</summary>
        [<ApiMember(DataType="string", Description="If you have a facebook account and want to track your customers behaviors.")>]
        member val FacebookPixelId:String = null with get,set

        ///<summary>
        ///If the company should be visible on the marketplace
        ///</summary>
        [<ApiMember(DataType="bool", Description="If the company should be visible on the marketplace")>]
        member val ShowOnMarketplace:Boolean = new Boolean() with get,set

        ///<summary>
        ///If you want your customers to be albe to change language on your homepage
        ///</summary>
        [<ApiMember(DataType="bool", Description="If you want your customers to be albe to change language on your homepage")>]
        member val MultiLanguage:Boolean = new Boolean() with get,set

        ///<summary>
        ///If you want your own written text on your homepage to be translated using google analytics when a user changes language
        ///</summary>
        [<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")>]
        member val EnableAPITranslation:Boolean = new Boolean() with get,set

        ///<summary>
        ///What is the standard language your homepage information is written in. Select from the different countries, ie. SE,NO,EN
        ///</summary>
        [<ApiMember(DataType="string", Description="What is the standard language your homepage information is written in. Select from the different countries, ie. SE,NO,EN")>]
        member val DefaultLanguage:String = null with get,set

        ///<summary>
        ///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. 
        ///</summary>
        [<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. ")>]
        member val SendCustomerInformationToExternalProviders:Boolean = new Boolean() with get,set

    [<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")>]
    [<AllowNullLiteral>]
    type UpdateSystemSetting() = 
        ///<summary>
        ///The company id, if empty will use the company id for the user you are logged in with.
        ///</summary>
        [<ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.")>]
        member val CompanyId:Nullable<Guid> = new Nullable<Guid>() with get,set

        ///<summary>
        ///If the booking is active or not
        ///</summary>
        [<ApiMember(DataType="bool", Description="If the booking is active or not")>]
        member val Active:Nullable<Boolean> = new Nullable<Boolean>() with get,set

        ///<summary>
        ///If the booking is not active, what message to show to the customers
        ///</summary>
        [<ApiMember(DataType="string", Description="If the booking is not active, what message to show to the customers")>]
        member val InactiveMessage:String = null with get,set

        ///<summary>
        ///If the company should be visible in search results on hompage
        ///</summary>
        [<ApiMember(DataType="bool", Description="If the company should be visible in search results on hompage")>]
        member val Searchable:Nullable<Boolean> = new Nullable<Boolean>() with get,set

        ///<summary>
        ///If you have a google analytics account and want to track your customers behaviors.
        ///</summary>
        [<ApiMember(DataType="string", Description="If you have a google analytics account and want to track your customers behaviors.")>]
        member val GATrackingId:String = null with get,set

        ///<summary>
        ///If you have a google Ads Conversion Id account and want to track your customers behaviors.
        ///</summary>
        [<ApiMember(DataType="string", Description="If you have a google Ads Conversion Id account and want to track your customers behaviors.")>]
        member val GoogleAdsConversionId:String = null with get,set

        ///<summary>
        ///If you have a LinkedIn account and want to track your customers behaviors.
        ///</summary>
        [<ApiMember(DataType="string", Description="If you have a LinkedIn account and want to track your customers behaviors.")>]
        member val LinkedinTagId:String = null with get,set

        ///<summary>
        ///If you have a Google Ads Conversion Label and want to track your customers behaviors.
        ///</summary>
        [<ApiMember(DataType="string", Description="If you have a Google Ads Conversion Label and want to track your customers behaviors.")>]
        member val GoogleAdsConversionLabel:String = null with get,set

        ///<summary>
        ///If you have a google tag manager account and want to track your customers behaviors.
        ///</summary>
        [<ApiMember(DataType="string", Description="If you have a google tag manager account and want to track your customers behaviors.")>]
        member val GTMTrackingId:String = null with get,set

        ///<summary>
        ///If you have a facebook account and want to track your customers behaviors.
        ///</summary>
        [<ApiMember(DataType="string", Description="If you have a facebook account and want to track your customers behaviors.")>]
        member val FacebookPixelId:String = null with get,set

        ///<summary>
        ///If the company should be visible on the marketplace
        ///</summary>
        [<ApiMember(DataType="bool", Description="If the company should be visible on the marketplace")>]
        member val ShowOnMarketplace:Nullable<Boolean> = new Nullable<Boolean>() with get,set

        ///<summary>
        ///If you want your customers to be albe to change language on your homepage
        ///</summary>
        [<ApiMember(DataType="bool", Description="If you want your customers to be albe to change language on your homepage")>]
        member val MultiLanguage:Nullable<Boolean> = new Nullable<Boolean>() with get,set

        ///<summary>
        ///If you want your own written text on your homepage to be translated using google analytics when a user changes language
        ///</summary>
        [<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")>]
        member val EnableAPITranslation:Nullable<Boolean> = new Nullable<Boolean>() with get,set

        ///<summary>
        ///What is the standard language your homepage information is written in. Select from the different countries, ie. SE,NO,EN
        ///</summary>
        [<ApiMember(DataType="string", Description="What is the standard language your homepage information is written in. Select from the different countries, ie. SE,NO,EN")>]
        member val DefaultLanguage:String = null with get,set

        ///<summary>
        ///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. 
        ///</summary>
        [<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. ")>]
        member val SendCustomerInformationToExternalProviders:Nullable<Boolean> = new Nullable<Boolean>() with get,set

F# UpdateSystemSetting 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 /settings/system HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	CompanyId: 00000000-0000-0000-0000-000000000000,
	Active: False,
	InactiveMessage: String,
	Searchable: False,
	GATrackingId: String,
	GoogleAdsConversionId: String,
	LinkedinTagId: String,
	GoogleAdsConversionLabel: String,
	GTMTrackingId: String,
	FacebookPixelId: String,
	ShowOnMarketplace: False,
	MultiLanguage: False,
	EnableAPITranslation: False,
	DefaultLanguage: String,
	SendCustomerInformationToExternalProviders: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	LanguageOptions: 
	[
		{
			Id: String,
			Name: String
		}
	],
	Active: False,
	InactiveMessage: String,
	Searchable: False,
	GATrackingId: String,
	GoogleAdsConversionId: String,
	LinkedinTagId: String,
	GoogleAdsConversionLabel: String,
	GTMTrackingId: String,
	FacebookPixelId: String,
	ShowOnMarketplace: False,
	MultiLanguage: False,
	EnableAPITranslation: False,
	DefaultLanguage: String,
	SendCustomerInformationToExternalProviders: False
}