Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
PUT | /homepage/widget/settings | Update homepage widget settings | Update homepage widget settings on the company of the currently logged in user, only administrators are allowed to update homepage menu. |
---|
import Foundation
import ServiceStack
// @ValidateRequest(Validator="IsAuthenticated")
public class UpdateHomepageWidgetSettings : ICompany, Codable
{
/**
* The company id, if empty will use the company id for the user you are logged in with.
*/
// @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.")
public var companyId:String?
/**
* Serivce Layout.
*/
// @ApiMember(Description="Serivce Layout.")
public var serviceLayoutId:Int?
/**
* Time Layout.
*/
// @ApiMember(Description="Time Layout.")
public var timeLayoutId:Int?
/**
* Booking Layout.
*/
// @ApiMember(Description="Booking Layout.")
public var bookingLayoutId:Int?
/**
* The primary color of the booking widget.
*/
// @ApiMember(Description="The primary color of the booking widget.")
public var primaryColor:String
/**
* If the site should have dark theme or not.
*/
// @ApiMember(Description="If the site should have dark theme or not.")
public var darkTheme:Bool?
/**
* If you should show the service image in the booking widget.
*/
// @ApiMember(Description="If you should show the service image in the booking widget.")
public var showServiceImage:Bool?
/**
* If you should show the rebate code field in the booking widget.
*/
// @ApiMember(Description="If you should show the rebate code field in the booking widget.")
public var showRebateCodeField:Bool?
/**
* If you should show the next available time in the booking widget.
*/
// @ApiMember(Description="If you should show the next available time in the booking widget.")
public var showNextAvailableTime:Bool?
/**
* If you should show the end time in the booking widget.
*/
// @ApiMember(Description="If you should show the end time in the booking widget.")
public var showEndTime:Bool?
/**
* Show subscribe to newsletter checkbox on the page
*/
// @ApiMember(Description="Show subscribe to newsletter checkbox on the page")
public var showSubscribeToNewsletter:Bool?
/**
* What text to show on booked time slots. Default text is Booked
*/
// @ApiMember(Description="What text to show on booked time slots. Default text is Booked")
public var bookedTimeSlotText:String
/**
* If you should show the create account option.
*/
// @ApiMember(Description="If you should show the create account option.")
public var enableCreateAccount:Bool?
/**
* If you should show the login to account option.
*/
// @ApiMember(Description="If you should show the login to account option.")
public var enableLogin:Bool?
/**
* If you should show the facebook login to account option.
*/
// @ApiMember(Description="If you should show the facebook login to account option.")
public var enableFacebookLogin:Bool?
/**
* If you should show the direct booking option. This enables customer to book with entering contact information.
*/
// @ApiMember(Description="If you should show the direct booking option. This enables customer to book with entering contact information.")
public var enableDirectBooking:Bool?
required public init(){}
}
public class HomepageWidgetSettingsQueryResponse : Codable
{
/**
* The company id.
*/
// @ApiMember(Description="The company id.")
public var companyId:String
/**
* The service layouts id.
*/
// @ApiMember(Description="The service layouts id.")
public var serviceLayoutId:Int
/**
* The time layouts id.
*/
// @ApiMember(Description="The time layouts id.")
public var timeLayoutId:Int
/**
* The booking layouts id.
*/
// @ApiMember(Description="The booking layouts id.")
public var bookingLayoutId:Int
/**
* The primary color of the booking widget.
*/
// @ApiMember(Description="The primary color of the booking widget.")
public var primaryColor:String
/**
* If you should show the service image in the booking widget.
*/
// @ApiMember(Description="If you should show the service image in the booking widget.")
public var showServiceImage:Bool
/**
* If you should show the rebate code field in the booking widget.
*/
// @ApiMember(Description="If you should show the rebate code field in the booking widget.")
public var showRebateCodeField:Bool
/**
* If you should show the next available time in the booking widget.
*/
// @ApiMember(Description="If you should show the next available time in the booking widget.")
public var showNextAvailableTime:Bool
/**
* If you should show the subscribe to newsletter checkbox in the booking widget.
*/
// @ApiMember(Description="If you should show the subscribe to newsletter checkbox in the booking widget.")
public var showSubscribeToNewsletter:Bool
/**
* If you should show the create account option.
*/
// @ApiMember(Description="If you should show the create account option.")
public var enableCreateAccount:Bool
/**
* If you should show the login to account option.
*/
// @ApiMember(Description="If you should show the login to account option.")
public var enableLogin:Bool
/**
* If you should show the facebook login to account option.
*/
// @ApiMember(Description="If you should show the facebook login to account option.")
public var enableFacebookLogin:Bool
/**
* If you should show the direct booking option. This enables customer to book with entering contact information.
*/
// @ApiMember(Description="If you should show the direct booking option. This enables customer to book with entering contact information.")
public var enableDirectBooking:Bool
/**
* If the site should have dark theme or not.
*/
// @ApiMember(Description="If the site should have dark theme or not.")
public var darkTheme:Bool
/**
* If you should show the end time in the booking widget.
*/
// @ApiMember(Description="If you should show the end time in the booking widget.")
public var showEndTime:Bool
/**
* What text to show on booked time slots. Default text is Booked
*/
// @ApiMember(Description="What text to show on booked time slots. Default text is Booked")
public var bookedTimeSlotText:String
public var serviceLayoutOptions:[HomepageWidgetServiceLayoutsResponse] = []
public var timeLayoutOptions:[HomepageWidgetTimeLayoutsResponse] = []
public var bookingLayoutOptions:[HomepageWidgetBookingLayoutsResponse] = []
public var bookingMethodOptions:[HomepageWidgetBookingMethodsResponse] = []
required public init(){}
}
public class HomepageWidgetServiceLayoutsResponse : Codable
{
/**
* The layout id.
*/
// @ApiMember(Description="The layout id.")
public var id:Int
/**
* The layout name.
*/
// @ApiMember(Description="The layout name.")
public var name:String
/**
* The layout description.
*/
// @ApiMember(Description="The layout description.")
public var Description:String
/**
* The layout code.
*/
// @ApiMember(Description="The layout code.")
public var code:String
required public init(){}
}
public class HomepageWidgetTimeLayoutsResponse : Codable
{
/**
* The layout id.
*/
// @ApiMember(Description="The layout id.")
public var id:Int
/**
* The layout name.
*/
// @ApiMember(Description="The layout name.")
public var name:String
/**
* The layout description.
*/
// @ApiMember(Description="The layout description.")
public var Description:String
/**
* The layout code.
*/
// @ApiMember(Description="The layout code.")
public var code:String
required public init(){}
}
public class HomepageWidgetBookingLayoutsResponse : Codable
{
/**
* The layout id.
*/
// @ApiMember(Description="The layout id.")
public var id:Int
/**
* The layout name.
*/
// @ApiMember(Description="The layout name.")
public var name:String
/**
* The layout description.
*/
// @ApiMember(Description="The layout description.")
public var Description:String
/**
* The layout code.
*/
// @ApiMember(Description="The layout code.")
public var code:String
required public init(){}
}
public class HomepageWidgetBookingMethodsResponse : Codable
{
/**
* The layout id.
*/
// @ApiMember(Description="The layout id.")
public var id:Int
/**
* The layout name.
*/
// @ApiMember(Description="The layout name.")
public var name:String
/**
* The layout description.
*/
// @ApiMember(Description="The layout description.")
public var Description:String
/**
* The layout code.
*/
// @ApiMember(Description="The layout code.")
public var code:String
required public init(){}
}
Swift UpdateHomepageWidgetSettings 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 /homepage/widget/settings HTTP/1.1
Host: api.bokamera.se
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<UpdateHomepageWidgetSettings xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
<BookedTimeSlotText>String</BookedTimeSlotText>
<BookingLayoutId>0</BookingLayoutId>
<CompanyId>00000000-0000-0000-0000-000000000000</CompanyId>
<DarkTheme>false</DarkTheme>
<EnableCreateAccount>false</EnableCreateAccount>
<EnableDirectBooking>false</EnableDirectBooking>
<EnableFacebookLogin>false</EnableFacebookLogin>
<EnableLogin>false</EnableLogin>
<PrimaryColor>String</PrimaryColor>
<ServiceLayoutId>0</ServiceLayoutId>
<ShowEndTime>false</ShowEndTime>
<ShowNextAvailableTime>false</ShowNextAvailableTime>
<ShowRebateCodeField>false</ShowRebateCodeField>
<ShowServiceImage>false</ShowServiceImage>
<ShowSubscribeToNewsletter>false</ShowSubscribeToNewsletter>
<TimeLayoutId>0</TimeLayoutId>
</UpdateHomepageWidgetSettings>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <HomepageWidgetSettingsQueryResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos"> <BookedTimeSlotText>String</BookedTimeSlotText> <BookingLayoutId>0</BookingLayoutId> <BookingLayoutOptions> <HomepageWidgetBookingLayoutsResponse> <Code>String</Code> <Description>String</Description> <Id>0</Id> <Name>String</Name> </HomepageWidgetBookingLayoutsResponse> </BookingLayoutOptions> <BookingMethodOptions> <HomepageWidgetBookingMethodsResponse> <Code>String</Code> <Description>String</Description> <Id>0</Id> <Name>String</Name> </HomepageWidgetBookingMethodsResponse> </BookingMethodOptions> <CompanyId>00000000-0000-0000-0000-000000000000</CompanyId> <DarkTheme>false</DarkTheme> <EnableCreateAccount>false</EnableCreateAccount> <EnableDirectBooking>false</EnableDirectBooking> <EnableFacebookLogin>false</EnableFacebookLogin> <EnableLogin>false</EnableLogin> <PrimaryColor>String</PrimaryColor> <ServiceLayoutId>0</ServiceLayoutId> <ServiceLayoutOptions> <HomepageWidgetServiceLayoutsResponse> <Code>String</Code> <Description>String</Description> <Id>0</Id> <Name>String</Name> </HomepageWidgetServiceLayoutsResponse> </ServiceLayoutOptions> <ShowEndTime>false</ShowEndTime> <ShowNextAvailableTime>false</ShowNextAvailableTime> <ShowRebateCodeField>false</ShowRebateCodeField> <ShowServiceImage>false</ShowServiceImage> <ShowSubscribeToNewsletter>false</ShowSubscribeToNewsletter> <TimeLayoutId>0</TimeLayoutId> <TimeLayoutOptions> <HomepageWidgetTimeLayoutsResponse> <Code>String</Code> <Description>String</Description> <Id>0</Id> <Name>String</Name> </HomepageWidgetTimeLayoutsResponse> </TimeLayoutOptions> </HomepageWidgetSettingsQueryResponse>