Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
POST | /resource | Add a new resource | Add a new resource to the company of the currently logged in user, only administrators are allowed to add resources. |
---|
Name | Parameter | Data Type | Required | Description |
---|---|---|---|---|
CompanyId | body | Guid? | Yes | Enter the company id, if blank company id and you are an admin, your company id will be used. |
Name | body | string | No | The resource name |
Description | body | string | No | The resource description |
Active | body | bool | No | If resource is active or not. Default is active. |
Color | body | string | No | The resource color in scheduler |
body | string | No | The email of the resource | |
ImageUrl | body | Uri | No | The image url of the resource |
AccessGroup | body | string | No | Used by example code locks to know what access group the resource is assigned to |
MobilePhone | body | string | No | The mobile phone number of the resource |
EmailNotification | body | bool? | No | If the resource should receive email notification when booked |
SMSNotification | body | bool? | No | If the resource should receive SMS notification when booked |
SendEmailReminder | body | bool? | No | If the resource should receive email reminders on bookings |
SendSMSReminder | body | bool? | No | If the resource should receive SMS reminders on bookings |
CustomFields | body | List<AddCustomField> | No | If Custom Fields are added to the resource, here you will send the id and the value for each custom field to be saved |
Name | Parameter | Data Type | Required | Description |
---|---|---|---|---|
Id | form | int | No | |
Value | form | string | No |
Name | Parameter | Data Type | Required | Description |
---|---|---|---|---|
Id | form | int | No | The resource id |
Name | form | string | No | The resource name |
Description | form | string | No | The resource description |
Active | form | bool | No | If resource is active or not |
Color | form | string | No | The resource color in scheduler in hexadecimal color code. Example: #00b0f0 for blue. |
form | string | No | The email of the resource | |
ImageUrl | form | Uri | No | The image url of the resource |
MobilePhone | form | string | No | The mobile phone number of the resource |
AccessGroup | form | string | No | Used by example code locks to know what access group the resource is assigned to |
EmailNotification | form | bool | No | If the resource should receive email notification when booked |
SMSNotification | form | bool | No | If the resource should receive SMS notification when booked |
SendEmailReminder | form | bool? | No | If the resource should receive email reminders on bookings |
SendSMSReminder | form | bool? | No | If the resource should receive SMS reminders on bookings |
Exceptions | form | List<TimeException> | No | The resource time exceptions |
Bookings | form | List<BookedTime> | No | The resource bookings |
Created | form | DateTime | No | Then date when the resource was created |
Updated | form | DateTime | No | Then date when the resource was updated |
ResponseStatus | form | ResponseStatus | No |
Name | Parameter | Data Type | Required | Description |
---|---|---|---|---|
Id | form | int | No | Time exception id |
IsRecurring | form | bool | No | Indicates whether or not the time exception is recurring |
IsBlock | form | bool | No | Indicates whether the time exception is blocking the time or not |
ReasonText | form | string | No | The reason of the time exception, example: Vacation, doctors appointment, ... |
ReasonTextPublic | form | string | No | The public reason of the time exception, example: Vacation, doctors appointment, ... |
From | form | DateTime | No | Time exception start |
To | form | DateTime | No | Time exception end |
ResourceIds | form | int[] | No | Resources that owns this exception |
Name | Parameter | Data Type | Required | Description |
---|---|---|---|---|
Id | form | int | No | Booking id |
ServiceId | form | int | No | The booked service |
From | form | DateTime | No | Booking start |
To | form | DateTime | No | Booking end |
BookedSpots | form | int | No | Number of booked spots |
TotalSpots | form | int | No | Number of total spots for the service |
PauseAfterInMinutes | form | int | No | The pause after the booking |
StatusId | form | int | No | The booking status |
Status | form | BookingStatusEnum | No | |
Customer | form | BookedCustomer | No | The customer the booking belongs to |
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 | No | |
Lastname | form | string | No | |
form | string | No | ||
Phone | form | string | No | |
FacebookUserName | form | string | No | |
ImageUrl | form | string | No | |
CorporateIdentityNumber | form | string | No | |
InvoiceAddress1 | form | string | No | |
InvoiceAddress2 | form | string | No | |
InvoiceCity | form | string | No | |
InvoicePostalCode | form | string | No | |
InvoiceCountryCode | form | string | 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.
POST /resource HTTP/1.1
Host: api.bokamera.se
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
CompanyId: 00000000-0000-0000-0000-000000000000,
Name: String,
Description: String,
Active: False,
Color: String,
Email: String,
AccessGroup: String,
MobilePhone: String,
EmailNotification: False,
SMSNotification: False,
SendEmailReminder: False,
SendSMSReminder: False,
CustomFields:
[
{
Id: 0,
Value: String
}
]
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { Id: 0, Name: String, Description: String, Active: False, Color: String, Email: String, MobilePhone: String, AccessGroup: String, EmailNotification: False, SMSNotification: False, SendEmailReminder: False, SendSMSReminder: False, Exceptions: [ { Id: 0, IsRecurring: False, IsBlock: False, ReasonText: String, ReasonTextPublic: String, ResourceIds: [ 0 ] } ], Bookings: [ { Id: 0, ServiceId: 0, BookedSpots: 0, TotalSpots: 0, PauseAfterInMinutes: 0, StatusId: 0, Status: Booked, 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 } } ], ResponseStatus: { ErrorCode: String, Message: String, StackTrace: String, Errors: [ { ErrorCode: String, FieldName: String, Message: String, Meta: { String: String } } ], Meta: { String: String } } }