Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
PUT | /homepage/scheduler/settings | Update homepage scheduler settings | Update homepage scheduler settings on the company of the currently logged in user, only administrators are allowed to update homepage menu. |
---|
import java.math.*
import java.util.*
import net.servicestack.client.*
@ValidateRequest(Validator="IsAuthenticated")
open class UpdateHomepageSchedulerSettings : ICompany
{
/**
* 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.")
var CompanyId:UUID? = null
/**
* If the user schedule is activated.
*/
@ApiMember(Description="If the user schedule is activated.")
var Active:Boolean? = null
/**
* If the user schedule views id.
*/
@ApiMember(Description="If the user schedule views id.")
var ScheduleViewId:Int? = null
/**
* If the user schedule time slots in minutes.
*/
@ApiMember(Description="If the user schedule time slots in minutes.")
var ScheduleTimeSlotMinutes:Int? = null
/**
* If the user schedule time start time.
*/
@ApiMember(Description="If the user schedule time start time.")
var StartTime:TimeSpan? = null
/**
* If the user schedule time end time.
*/
@ApiMember(Description="If the user schedule time end time.")
var EndTime:TimeSpan? = null
/**
* If the user schedule should contain time exceptions.
*/
@ApiMember(Description="If the user schedule should contain time exceptions.")
var ShowTimeExceptions:Boolean? = null
/**
* If allow booking in the scheduler.
*/
@ApiMember(Description="If allow booking in the scheduler.")
var EnableBooking:Boolean? = null
/**
* What resources you want to be shown in scheduler.
*/
@ApiMember(Description="What resources you want to be shown in scheduler.")
var Resources:ArrayList<HomepageSchedulerResource> = ArrayList<HomepageSchedulerResource>()
/**
* What services you want to be shown in scheduler.
*/
@ApiMember(Description="What services you want to be shown in scheduler.")
var Services:ArrayList<HomepageSchedulerService> = ArrayList<HomepageSchedulerService>()
/**
* What fields you want to be shown in scheduler.
*/
@ApiMember(Description="What fields you want to be shown in scheduler.")
var Fields:ArrayList<HomepageScheduleField> = ArrayList<HomepageScheduleField>()
}
open class HomepageSchedulerResource
{
/**
* The resource id.
*/
@ApiMember(Description="The resource id.")
var Id:Int? = null
}
open class HomepageSchedulerService
{
/**
* The service id.
*/
@ApiMember(Description="The service id.")
var Id:Int? = null
}
open class HomepageScheduleField
{
/**
* The field id.
*/
@ApiMember(Description="The field id.", IsRequired=true)
var Id:Int? = null
/**
* If the field showed on the booking.
*/
@ApiMember(Description="If the field showed on the booking.", IsRequired=true)
var ShowOnBooking:Boolean? = null
/**
* If the field showed on the bookings tooltip.
*/
@ApiMember(Description="If the field showed on the bookings tooltip.", IsRequired=true)
var ShowOnTooltip:Boolean? = null
}
open class HomepageSchedulerSettingsQueryResponse
{
/**
* The company id.
*/
@ApiMember(Description="The company id.")
var CompanyId:UUID? = null
/**
* If the user schedule is activated.
*/
@ApiMember(Description="If the user schedule is activated.")
var Active:Boolean? = null
/**
* If the user schedule views id.
*/
@ApiMember(Description="If the user schedule views id.")
var ScheduleViewId:Int? = null
/**
* If the user schedule time slots in minutes.
*/
@ApiMember(Description="If the user schedule time slots in minutes.")
var ScheduleTimeSlotMinutes:Int? = null
/**
* If the user schedule time start time.
*/
@ApiMember(Description="If the user schedule time start time.")
var StartTime:TimeSpan? = null
/**
* If the user schedule time end time.
*/
@ApiMember(Description="If the user schedule time end time.")
var EndTime:TimeSpan? = null
/**
* If the user schedule should contain time exceptions.
*/
@ApiMember(Description="If the user schedule should contain time exceptions.")
var ShowTimeExceptions:Boolean? = null
/**
* If allow booking in the scheduler.
*/
@ApiMember(Description="If allow booking in the scheduler.")
var EnableBooking:Boolean? = null
/**
* The homepage schedule services that are selected
*/
@ApiMember(Description="The homepage schedule services that are selected")
var Services:ArrayList<HomepageSchedulerServiceResponse> = ArrayList<HomepageSchedulerServiceResponse>()
/**
* The homepage schedule resources that are selected
*/
@ApiMember(Description="The homepage schedule resources that are selected")
var Resources:ArrayList<HomepageSchedulerResourceResponse> = ArrayList<HomepageSchedulerResourceResponse>()
/**
* The homepage schedule fields that are selected
*/
@ApiMember(Description="The homepage schedule fields that are selected")
var Fields:ArrayList<HomepageSchedulerFieldResponse> = ArrayList<HomepageSchedulerFieldResponse>()
/**
* The homepage schedule fields select from
*/
@ApiMember(Description="The homepage schedule fields select from")
var FieldOptions:ArrayList<HomepageSchedulerFieldOptionsResponse> = ArrayList<HomepageSchedulerFieldOptionsResponse>()
/**
* The available schedule view options to choose from
*/
@ApiMember(Description="The available schedule view options to choose from")
var ScheduleViewOptions:ArrayList<ScheduleViewResponse> = ArrayList<ScheduleViewResponse>()
}
open class HomepageSchedulerServiceResponse
{
/**
* The service id.
*/
@ApiMember(Description="The service id.")
var Id:Int? = null
/**
* The service name.
*/
@ApiMember(Description="The service name.")
var Name:String? = null
/**
* The service description.
*/
@ApiMember(Description="The service description.")
var Description:String? = null
/**
* The service image url.
*/
@ApiMember(Description="The service image url.")
var ImageUrl:Uri? = null
}
open class HomepageSchedulerResourceResponse
{
/**
* The resource id.
*/
@ApiMember(Description="The resource id.")
var Id:Int? = null
/**
* The resource name.
*/
@ApiMember(Description="The resource name.")
var Name:String? = null
/**
* The resource description.
*/
@ApiMember(Description="The resource description.")
var Description:String? = null
/**
* The resource image url.
*/
@ApiMember(Description="The resource image url.")
var ImageUrl:Uri? = null
}
open class HomepageSchedulerFieldResponse
{
/**
* The field id.
*/
@ApiMember(Description="The field id.")
var Id:Int? = null
/**
* If the field should be shown on booking.
*/
@ApiMember(Description="If the field should be shown on booking.")
var ShowOnBooking:Boolean? = null
/**
* If the field should be shown on tooltip.
*/
@ApiMember(Description="If the field should be shown on tooltip.")
var ShowOnTooltip:Boolean? = null
}
open class HomepageSchedulerFieldOptionsResponse
{
/**
* The field id.
*/
@ApiMember(Description="The field id.")
var Id:Int? = null
/**
* The field name.
*/
@ApiMember(Description="The field name.")
var Name:String? = null
/**
* The field description.
*/
@ApiMember(Description="The field description.")
var Description:String? = null
/**
* The field sort order when listing.
*/
@ApiMember(Description="The field sort order when listing.")
var SortOrder:Int? = null
}
open class ScheduleViewResponse
{
var Id:Int? = null
var Name:String? = null
}
Kotlin UpdateHomepageSchedulerSettings DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /homepage/scheduler/settings HTTP/1.1
Host: testapi.bokamera.se
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"CompanyId":"00000000-0000-0000-0000-000000000000","Active":false,"ScheduleViewId":0,"ScheduleTimeSlotMinutes":0,"StartTime":"00:00:00","EndTime":"00:00:00","ShowTimeExceptions":false,"EnableBooking":false,"Resources":[{"Id":0}],"Services":[{"Id":0}],"Fields":[{"Id":0,"ShowOnBooking":false,"ShowOnTooltip":false}]}
HTTP/1.1 200 OK Content-Type: text/jsonl Content-Length: length {"Active":false,"ScheduleViewId":0,"ScheduleTimeSlotMinutes":0,"StartTime":"00:00:00","EndTime":"00:00:00","ShowTimeExceptions":false,"EnableBooking":false,"Services":[{"Id":0,"Name":"String","Description":"String"}],"Resources":[{"Id":0,"Name":"String","Description":"String"}],"Fields":[{"Id":0,"ShowOnBooking":false,"ShowOnTooltip":false}],"FieldOptions":[{"Id":0,"Name":"String","Description":"String","SortOrder":0}],"ScheduleViewOptions":[{"Id":0,"Name":"String"}]}