| Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
| GET | /timeexceptions/collidingevents | Searches for collisions with existing bookings of the resource | Searches for existing bookings and investigates if a proposed time exception would collide with them, if so, the bookings should be unbooked to be able to create the time exception. A time exception must be either recurring (DaysOfWeek, ExceptionFromTime, ExceptionToTime is set) or non recurring (From and To are set). |
|---|
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| CompanyId | query | Guid? | No | The company id, if empty will use the company id for the user you are logged in with. |
| ResourceIds | query | int[] | Yes | Resource ids of the resource that should be matched against booked events |
| From | query | DateTime | No | Time exception starting date |
| To | query | DateTime | No | Time exception ending date |
| FromTime | query | TimeSpan | No | This value indicates the time of day when the time exception begins. Example: 10:00. If Recurring this will be the start time for each recurring day. |
| ToTime | query | TimeSpan | No | This value indicates the time of day when the time exception ends. Example: 12:00. If Recurring this will be the endtime for each recurring day. |
| DaysOfWeek | query | int[] | Yes | A comma separated list of which days this day exception belongs to, 1 = Monday .. 7 = Sunday |
| IncludeServiceInformation | query | boolean | No | If you want to include the service information for the booking |
| IncludeCustomerInformation | query | boolean | No | If you want to include the customer information for the booking |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| ResourceIds | form | int[] | Yes | Resource id of the resource that owns this exception |
| Bookings | form | List<BookingIntervalResponse> | Yes | A list of bookings that would collide with the time exception |
| ResponseStatus | form | ResponseStatus | Yes |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Id | form | int | No | |
| CompanyId | form | Guid | No | |
| From | form | DateTime | No | |
| To | form | DateTime | No | |
| Status | form | BookingStatusEnum | No | |
| StatusId | form | int | No | |
| StatusName | form | string | Yes | |
| Customer | form | BookedCustomer | Yes | |
| Service | form | ServiceInfoResponse | Yes | |
| CreatedDate | form | DateTime | No |
| Name | Value | |
|---|---|---|
| Booked | 1 | |
| Unbooked | 2 | |
| Reserved | 3 | |
| Canceled | 4 | |
| AwaitingPayment | 5 | |
| AwaitingPaymentNoTimeLimit | 6 | |
| Payed | 7 | |
| AwaitingPaymentRequestFromAdmin | 8 | |
| AwaitingPaymentFromProvider | 9 | |
| Invoiced | 10 |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Id | form | Guid | No | |
| Firstname | form | string | Yes | |
| Lastname | form | string | Yes | |
| form | string | Yes | ||
| Phone | form | string | Yes | |
| FacebookUserName | form | string | Yes | |
| ImageUrl | form | string | Yes | |
| CorporateIdentityNumber | form | string | Yes | |
| InvoiceAddress1 | form | string | Yes | |
| InvoiceAddress2 | form | string | Yes | |
| InvoiceCity | form | string | Yes | |
| InvoicePostalCode | form | string | Yes | |
| InvoiceCountryCode | form | string | Yes |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Id | form | int | No | |
| Name | form | string | Yes | |
| Description | form | string | Yes | |
| ImageUrl | form | Uri | Yes | |
| LengthInMinutes | form | int? | No | |
| MaxNumberOfSpotsPerBooking | form | int | No | |
| MinNumberOfSpotsPerBooking | form | int | No | |
| GroupBooking | form | GroupBookingSettings | Yes | |
| MultipleResource | form | MultipleResourceSettings | Yes | |
| IsGroupBooking | form | bool | No | |
| IsPaymentEnabled | form | bool | No |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Active | form | bool | No | |
| Min | form | int | No | |
| Max | form | int | No |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Active | form | bool | No | |
| Min | form | int | No | |
| Max | form | int | No |
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /timeexceptions/collidingevents HTTP/1.1 Host: testapi.bokamera.se Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
ResourceIds:
[
0
],
Bookings:
[
{
Id: 0,
Status: Booked,
StatusId: 0,
StatusName: String,
Customer:
{
Firstname: String,
Lastname: String,
Email: String,
Phone: String,
FacebookUserName: String,
ImageUrl: String,
CorporateIdentityNumber: String,
InvoiceAddress1: String,
InvoiceAddress2: String,
InvoiceCity: String,
InvoicePostalCode: String,
InvoiceCountryCode: String
},
Service:
{
Id: 0,
Name: String,
Description: String,
LengthInMinutes: 0,
MaxNumberOfSpotsPerBooking: 0,
MinNumberOfSpotsPerBooking: 0,
GroupBooking:
{
Active: False,
Min: 0,
Max: 0
},
MultipleResource:
{
Active: False,
Min: 0,
Max: 0
},
IsGroupBooking: False,
IsPaymentEnabled: False
}
}
],
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}