| GET | /services/{ServiceId}/availabletimes/grouped | Get availabletimes for the service | Get availabletimes for the service and it's connected schedules |
|---|
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| CompanyId | query | Guid? | No | Company to show services for |
| ServiceId | path | int | Yes | Service id |
| From | query | dateTime | Yes | From what datetime to show available times |
| To | query | dateTime | Yes | To what datetime to show available times |
| Resources | query | List<AvailableTimesResourceTypeResource> | Yes | Here you can select one of the resource in each resourcetype connected to the service, if none is selected it will show available times for all |
| NumberOfResources | query | int | No | Here you select number of resources to book (in each resourcetype). Default is 1. |
| ShowPerResource | query | bool | No | If you want to include the connected resourcetypes and resources |
| InsideSearchInterval | query | bool | No | Both start and time time should be inside test interval. Default is false which means only start time needs to be inside. |
| Duration | query | bool | No | The duration you want to book. Needs to withing the service Min and Max. If not set it will use the service duration |
| ResponseStatus | query | ResponseStatus | Yes |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| ResourceTypeId | form | int | No | The resourcetype id |
| ResourceId | form | int | No | The resource id |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| CompanyId | form | Guid | No | |
| ServiceId | form | int | No | |
| TimesFreeTextSingle | form | string | Yes | |
| TimesFreeTextMultiple | form | string | Yes | |
| Items | form | List<AvailableTimesGroupedDates> | Yes |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Group | form | DateTime | No | |
| Times | form | List<AvailableTimesSum> | Yes |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| From | form | DateTime | No | |
| To | form | DateTime | No | |
| Free | form | int | No | |
| FreeSpots | form | int | No | |
| ExceptionTexts | form | IEnumerable<ExceptionText> | Yes |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Reason | form | string | Yes | |
| ReasonPublic | form | string | Yes |
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.
GET /services/{ServiceId}/availabletimes/grouped HTTP/1.1
Host: api.bokamera.se
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<AvailableTimesGroupedDatesResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
<CompanyId>00000000-0000-0000-0000-000000000000</CompanyId>
<Items>
<AvailableTimesGroupedDates>
<Group>0001-01-01T00:00:00</Group>
<Times>
<AvailableTimesSum>
<ExceptionTexts i:nil="true" />
<Free>0</Free>
<FreeSpots>0</FreeSpots>
<From>0001-01-01T00:00:00</From>
<To>0001-01-01T00:00:00</To>
</AvailableTimesSum>
</Times>
</AvailableTimesGroupedDates>
</Items>
<ServiceId>0</ServiceId>
<TimesFreeTextMultiple>String</TimesFreeTextMultiple>
<TimesFreeTextSingle>String</TimesFreeTextSingle>
</AvailableTimesGroupedDatesResponse>