BokaMera.API.Host

<back to all web services

CreateRecurringSchedule

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
POST/schedules/recurringAdd new recurring scheduleAdd new recurring schedule to the company for the currently logged in user, only administrators are allowed to add schedules.
CreateRecurringSchedule Parameters:
NameParameterData TypeRequiredDescription
CompanyIdbodyGuid?NoThe company id, if empty will use the company id for the user you are logged in with.
NamebodystringNoThe schedule name
DescriptionbodystringNoThe schedule description
ActivebodyboolNoIf schedule is active or not
TimeIntervalbodyintYesTime interval for available times. Here you set the interval at which times should appear. For example, if you select the range 15minutes, and your service has an duration of 1 hour and opening hours are 9AM to 6PM you will see the following suggested times: 09AM-10PM 09:15AM-10:15PM, 09:30AM-10:30PM , ..... 04:45PM-05:45, 05:00PM-06:00PM
EnableBookingUntilClosingTimebodyboolYesAllow bookings end time exceeds the opening hours Here you can choose whether it should be possible to make a reservation exceeding the opening hours. This should be ticked when a service duration is longer than 24 hours (possible to book over midnight).
ValidFrombodyDateTimeYesThe timestamp to which the schedule is valid from
ValidTobodyDateTimeYesThe timestamp to which the schedule is valid to
StartTimebodyTimeSpanYesThe time for the schedule opening hours (starttime)
EndTimebodyTimeSpanYesThe time for the schedule opening hours (endtime)
NumberOfScheduleDaysbodyintYesThe number of days the schedule is valid from todays date
DaysOfWeekbodyint[]NoIf recurring, an array indicating which days of the week the schedule recures on where 1 = Monday .. 7 = Sunday. When recurring then the time portion of the Fields From and To indicates the time of day the recurrence occurs
ScheduleDatesbodyList<AddRecurringScheduleDate>NoIf not recuring, an array indicating which dates that are open for the schedule.
ExceptionsbodyList<ScheduleException>NoSchedule exceptions. For example closed on lunch time between 12AM and 1PM. These times will be removed from the recurring schedule.
ResourcesbodyList<AddScheduleResource>NoIf the schedule is only connected to some resources, add them here. If empty, it will be used by all resources.
ServicesbodyList<AddScheduleService>NoSet what services the schedule should be connected to.
AddRecurringScheduleDate Parameters:
NameParameterData TypeRequiredDescription
DateformDateTimeYesThe date for the schedule opening (only date part is used here
StartTimeformTimeSpanYesThe time for the schedule opening hours (starttime)
EndTimeformTimeSpanYesThe time for the schedule opening hours (endtime)
ScheduleException Parameters:
NameParameterData TypeRequiredDescription
StartTimeformTimeSpanNo
EndTimeformTimeSpanNo
AddScheduleResource Parameters:
NameParameterData TypeRequiredDescription
IdformintYesThe resource id
AddScheduleService Parameters:
NameParameterData TypeRequiredDescription
IdformintYesThe service id
RecurringScheduleQueryResponse Parameters:
NameParameterData TypeRequiredDescription
IdformintNoThe schedule id
NameformstringNoName of the schedule
DescriptionformstringNoDescription of the schedule
ActiveformboolNoIf the schedule is active or not
TimeIntervalformintYesTime interval for available times Here you set the interval at which times should appear. For example, if you select the range 15minutes, and your service has an duration of 1 hour and opening hours are 9AM to 6PM you will see the following suggested times: 09AM-10PM 09:15AM-10:15PM, 09:30AM-10:30PM , ..... 04:45PM-05:45, 05:00PM-06:00PM
ValidFromformDateTimeYesThe timestamp to which the schedule is valid from
ValidToformDateTimeYesThe timestamp to which the schedule is valid to
StartTimeformTimeSpanYesThe time for the schedule opening hours (starttime)
EndTimeformTimeSpanYesThe time for the schedule opening hours (endtime)
NumberOfScheduleDaysformintYesThe number of days the schedule is valid from todays date
IsResourceSpecificformbool?YesIf the schedule is only connected to some specific resources. Note: You must have IncludeResources property to see this.
UpdatedDateformDateTimeYesThe timestamp when the schedule was updated
CreatedDateformDateTimeYesThe timestamp when the schedule was created
EnableBookingUntilClosingTimeformboolYesAllow bookings end time exceeds the opening hours Here you can choose whether it should be possible to make a reservation exceeding the opening hours. This should be ticked when a service duration is longer than 24 hours (possible to book over midnight).
DaysOfWeekformList<DayOfWeekDto>NoIf recurring, an array indicating which days of the week the exception recures on where 1 = Monday .. 7 = Sunday. When recurring then the time portion of the Fields From and To indicates the time of day the recurrence occurs
ResourcesformList<ScheduleResources>NoThe resources that is connected to the schedule
ServicesformList<ScheduleServices>NoThe services that is connected to the schedule
ExceptionsformList<RecurringScheduleExceptionResponse>NoThe exceptions that is added to the schedule
ScheduleDatesformList<RecurringScheduleDateResponse>NoSchedule dates, used when the schedule is not a rolling schedule using days of week
ResponseStatusformResponseStatusNo
DayOfWeekDto Parameters:
NameParameterData TypeRequiredDescription
DayOfWeekIdformintNo
DotNetDayOfWeekIdformintNo
DayOfWeekformstringNo
ScheduleResources Parameters:
NameParameterData TypeRequiredDescription
IdformintNo
NameformstringNoName of the resource
ImageUrlformUriNoThe image url of the resource
ScheduleServices Parameters:
NameParameterData TypeRequiredDescription
IdformintNo
NameformstringNoName of the service
ImageUrlformUriNoThe image url of the service
RecurringScheduleExceptionResponse Parameters:
NameParameterData TypeRequiredDescription
StartTimeformTimeSpanNoStart time of the schedule exception.
EndTimeformTimeSpanNoEnd time of the schedule exception.
RecurringScheduleDateResponse Parameters:
NameParameterData TypeRequiredDescription
IdformintNo
DateformDateTimeNo
StartTimeformTimeSpanNo
EndTimeformTimeSpanNo
ResponseStatusformResponseStatusNo

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /schedules/recurring HTTP/1.1 
Host: api.bokamera.se 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<CreateRecurringSchedule 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>
  <DaysOfWeek xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:int>0</d2p1:int>
  </DaysOfWeek>
  <Description>String</Description>
  <EnableBookingUntilClosingTime>false</EnableBookingUntilClosingTime>
  <EndTime>PT0S</EndTime>
  <Exceptions>
    <ScheduleException>
      <EndTime>PT0S</EndTime>
      <StartTime>PT0S</StartTime>
    </ScheduleException>
  </Exceptions>
  <Name>String</Name>
  <NumberOfScheduleDays>0</NumberOfScheduleDays>
  <Resources>
    <AddScheduleResource>
      <Id>0</Id>
    </AddScheduleResource>
  </Resources>
  <ScheduleDates>
    <AddRecurringScheduleDate>
      <Date>0001-01-01T00:00:00</Date>
      <EndTime>PT0S</EndTime>
      <StartTime>PT0S</StartTime>
    </AddRecurringScheduleDate>
  </ScheduleDates>
  <Services>
    <AddScheduleService>
      <Id>0</Id>
    </AddScheduleService>
  </Services>
  <StartTime>PT0S</StartTime>
  <TimeInterval>0</TimeInterval>
  <ValidFrom>0001-01-01T00:00:00</ValidFrom>
  <ValidTo>0001-01-01T00:00:00</ValidTo>
</CreateRecurringSchedule>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<RecurringScheduleQueryResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
  <Active>false</Active>
  <CreatedDate>0001-01-01T00:00:00</CreatedDate>
  <DaysOfWeek>
    <DayOfWeekDto>
      <DayOfWeek>String</DayOfWeek>
      <DayOfWeekId>0</DayOfWeekId>
      <DotNetDayOfWeekId>0</DotNetDayOfWeekId>
    </DayOfWeekDto>
  </DaysOfWeek>
  <Description>String</Description>
  <EnableBookingUntilClosingTime>false</EnableBookingUntilClosingTime>
  <EndTime>PT0S</EndTime>
  <Exceptions>
    <RecurringScheduleExceptionResponse>
      <EndTime>PT0S</EndTime>
      <StartTime>PT0S</StartTime>
    </RecurringScheduleExceptionResponse>
  </Exceptions>
  <Id>0</Id>
  <IsResourceSpecific>false</IsResourceSpecific>
  <Name>String</Name>
  <NumberOfScheduleDays>0</NumberOfScheduleDays>
  <Resources>
    <ScheduleResources>
      <Id>0</Id>
      <ImageUrl i:nil="true" />
      <Name>String</Name>
    </ScheduleResources>
  </Resources>
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
  <ScheduleDates>
    <RecurringScheduleDateResponse>
      <Date>0001-01-01T00:00:00</Date>
      <EndTime>PT0S</EndTime>
      <Id>0</Id>
      <ResponseStatus xmlns:d4p1="http://schemas.servicestack.net/types">
        <d4p1:ErrorCode>String</d4p1:ErrorCode>
        <d4p1:Message>String</d4p1:Message>
        <d4p1:StackTrace>String</d4p1:StackTrace>
        <d4p1:Errors>
          <d4p1:ResponseError>
            <d4p1:ErrorCode>String</d4p1:ErrorCode>
            <d4p1:FieldName>String</d4p1:FieldName>
            <d4p1:Message>String</d4p1:Message>
            <d4p1:Meta xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
              <d7p1:KeyValueOfstringstring>
                <d7p1:Key>String</d7p1:Key>
                <d7p1:Value>String</d7p1:Value>
              </d7p1:KeyValueOfstringstring>
            </d4p1:Meta>
          </d4p1:ResponseError>
        </d4p1:Errors>
        <d4p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d4p1:Meta>
      </ResponseStatus>
      <StartTime>PT0S</StartTime>
    </RecurringScheduleDateResponse>
  </ScheduleDates>
  <Services>
    <ScheduleServices>
      <Id>0</Id>
      <ImageUrl i:nil="true" />
      <Name>String</Name>
    </ScheduleServices>
  </Services>
  <StartTime>PT0S</StartTime>
  <TimeInterval>0</TimeInterval>
  <UpdatedDate>0001-01-01T00:00:00</UpdatedDate>
  <ValidFrom>0001-01-01T00:00:00</ValidFrom>
  <ValidTo>0001-01-01T00:00:00</ValidTo>
</RecurringScheduleQueryResponse>