Lookup Data #
Id | Description |
---|---|
1 | Delete Reservation |
2 | End Reservation |
Id | Description |
---|---|
1 | Fixed Amount |
2 | Percentage of Reservation Cost |
Id | Description |
---|---|
1 | Cost per Hour |
2 | Cost per Reservation |
GET Methods #
Get Resource Statuses #
Description
Returns all available resource statuses.
Route
/Resources/Status
Authentication
This service is not secure and does not require authentication headers
Example Response
{
"statuses": [
{
"id": 0,
"name": "Hidden"
},
{
"id": 1,
"name": "Available"
},
{
"id": 2,
"name": "Unavailable"
}
],
"links": [],
"message": null
}
Get All Resources #
Description
Loads all resources the current user has permission to.
Time interval values are returned as days/hours/minutes formatted #d#h#m – for example 1d12h30m is 1 day, 12 hours, 30 minutes.
Route
/Resources/
Authentication
This service is secure and requires authentication headers
Example Response
{
"resources": [
{
"resourceId": 123,
"name": "resource name",
"location": "location",
"contact": "contact",
"notes": "notes",
"minLength": "0d0h2m",
"maxLength": "0d0h2m",
"requiresApproval": true,
"groupsBypassingApproval": [1, 2, 3],
"allowMultiday": true,
"maxParticipants": 10,
"minParticipants": null,
"minNoticeAdd": "0d0h2m",
"minNoticeUpdate": "0d0h2m",
"minNoticeDelete": "0d0h2m",
"maxNotice": "0d0h2m",
"description": "resource description",
"scheduleId": 123,
"icsUrl": null,
"statusId": 1,
"statusReasonId": 3,
"customAttributes": [
{
"id": 123,
"label": "label",
"value": "value",
"links": [],
"message": null
}
],
"typeId": 2,
"groupIds": null,
"bufferTime": "1 hours 30 minutes",
"autoReleaseMinutes": 15,
"requiresCheckIn": true,
"color": "#ffffff",
"credits": 3,
"peakCredits": 6,
"creditApplicability": 1,
"creditsChargedAllSlots": true,
"maxConcurrentReservations": 1,
"slotLabel": null,
"adminGroupId": null,
"extendIfMissedCheckout": null,
"checkinLimitedToAdmins": null,
"autoReleaseAction": "1 (delete) or 2 (end reservation) or null",
"baseReservationRate": 1.1,
"reservationCostInterval": 1,
"reservationCostDepositAmount": 2.2,
"reservationCostDepositType": 1
"links": [],
"message": null
}
],
"links": [],
"message": null
}
Get Status Reasons #
Description
Returns all available resource status reasons.
Route
/Resources/Status/Reasons
Authentication
This service is secure and requires authentication headers
Example Response
{
"reasons": [
{
"id": 1,
"description": "reason description",
"statusId": 2
}
],
"links": [],
"message": null
}
Get Resource Availability #
Description
Returns resource availability through the next 7 days.
Name | Description |
---|---|
dateTime | Date and time to get availability for. If not set, the current datetime will be used. |
To get availability for a specific resource, include the resource Id in the path. For example /Resources/1/Availability
Route
/Resources/Availability
Authentication
This service is secure and requires authentication headers
Example Response
{
"resources": [
{
"available": true,
"resource": {
"resourceId": 1,
"name": "resource name",
"scheduleId": 2,
"statusId": 1,
"statusReasonId": 123,
"links": [
{
"href": "http:\/\/get-resource-url",
"title": "get_resource"
},
{
"href": "http:\/\/get-schedule-url",
"title": "get_schedule"
}
],
"message": null
},
"availableAt": "2023-01-18T21:09:54-0500",
"availableUntil": "2023-01-18T21:09:54-0500",
"links": [
{
"href": "http:\/\/get-user-url",
"title": "get_user"
},
{
"href": "http:\/\/get-reservation-url",
"title": "get_reservation"
}
],
"message": null
}
],
"links": [],
"message": null
}
Get Groups #
Description
Returns the full resource group tree.
Route
/Resources/Groups
Authentication
This service is secure and requires authentication headers
Example Response
{
"groups": [
{
"id": 0,
"name": "Resource Group 1",
"label": "Resource Group 1",
"parent": null,
"parent_id": null,
"children": [
{
"type": "resource",
"group_id": 0,
"resource_name": "Resource 1",
"id": "resource-0-1",
"label": "Resource 1",
"resource_id": 1,
"resourceAdminGroupId": null,
"scheduleId": 2,
"statusId": 1,
"scheduleAdminGroupId": null,
"requiresApproval": false,
"isCheckInEnabled": true,
"isAutoReleased": true,
"autoReleaseMinutes": 30,
"minLength": 10,
"resourceTypeId": 1,
"color": "#ffffff",
"textColor": "#000000",
"maxConcurrentReservations": 2,
"requiredResourceIds": [
2
],
"resourcePublicId": "publicid1",
"resourceGroupIds": [
40
],
"autoReleaseAction": 1
},
{
"id": 1,
"name": "Resource Group 2",
"label": "Resource Group 2",
"parent": null,
"parent_id": 0,
"children": [
{
"type": "resource",
"group_id": 1,
"resource_name": "Resource 2",
"id": "resource-1-1",
"label": "Resource 2",
"resource_id": 1,
"resourceAdminGroupId": null,
"scheduleId": 2,
"statusId": 1,
"scheduleAdminGroupId": null,
"requiresApproval": true,
"isCheckInEnabled": false,
"isAutoReleased": false,
"autoReleaseMinutes": null,
"minLength": null,
"resourceTypeId": 2,
"color": "#000000",
"textColor": "#FFFFFF",
"maxConcurrentReservations": 1,
"requiredResourceIds": [
1
],
"resourcePublicId": "publicid2",
"resourceGroupIds": [],
"autoReleaseAction": null
}
],
"type": "group"
}
],
"type": "group"
}
],
"links": [],
"message": null
}
Get Resource Types #
Description
Returns all available resource types.
Route
/Resources/Types
Authentication
This service is secure and requires authentication headers
Example Response
{
"types": [
{
"id": 1,
"name": "name",
"description": "description"
}
],
"links": [],
"message": null
}
Get Resource #
Description
Loads a specific resource by id.
Route
/Resources/:resourceId
Authentication
This service is secure and requires authentication headers
Example Response
{
"resourceId": 123,
"name": "resource name",
"location": "location",
"contact": "contact",
"notes": "notes",
"minLength": "0d0h2m",
"maxLength": "0d0h2m",
"requiresApproval": true,
"groupsBypassingApproval": [ 1, 2 ],
"allowMultiday": true,
"maxParticipants": 10,
"minParticipants": null,
"minNoticeAdd": "0d0h2m",
"minNoticeUpdate": "0d0h2m",
"minNoticeDelete": "0d0h2m",
"maxNotice": "0d0h2m",
"description": "resource description",
"scheduleId": 123,
"icsUrl": null,
"statusId": 1,
"statusReasonId": 3,
"customAttributes": [
{
"id": 123,
"label": "label",
"value": "value",
"links": [],
"message": null
}
],
"typeId": 2,
"groupIds": null,
"bufferTime": "1 hours 30 minutes",
"autoReleaseMinutes": 15,
"requiresCheckIn": true,
"color": "#ffffff",
"credits": 3,
"peakCredits": 6,
"creditApplicability": 1,
"creditsChargedAllSlots": true,
"maxConcurrentReservations": 1,
"slotLabel": null,
"adminGroupId": null,
"extendIfMissedCheckout": null,
"checkinLimitedToAdmins": null,
"autoReleaseAction": "1 (delete) or 2 (end reservation) or null",
"baseReservationRate": 1.1,
"reservationCostInterval": 1,
"reservationCostDepositAmount": 2.2,
"reservationCostDepositType": 1
"links": [],
"message": null
}
POST Methods #
Create Resource #
Description
Creates a new resource.
Route
/Resources/
Authentication
This service is secure and requires authentication headers
This service is only available to application administrators
Example Request
{
"name": "resource name",
"location": "location",
"contact": "contact information",
"notes": "notes",
"minLength": "1d0h0m",
"maxLength": "3600",
"requiresApproval": true,
"groupsBypassingApproval": [ 1, 2 ],
"allowMultiday": true,
"maxParticipants": 100,
"minParticipants": 10,
"minNotice": "0d12h30m",
"minNoticeUpdate": "0d12h30m",
"minNoticeDelete": "0d12h30m",
"maxNotice": "0d12h30m",
"description": "description",
"scheduleId": 10,
"autoAssignPermissions": true,
"customAttributes": [
{
"attributeId": 1,
"attributeValue": "attribute value"
}
],
"sortOrder": 1,
"statusId": 1,
"statusReasonId": 2,
"autoReleaseMinutes": 15,
"extendIfMissedCheckout": null,
"checkinLimitedToAdmins": null,
"autoReleaseAction": null,
"requiresCheckIn": true,
"color": "#ffffff",
"credits": 3,
"peakCredits": 6,
"creditApplicability": 1,
"creditsChargedAllSlots": 1,
"maxConcurrentReservations": 1,
"adminGroupId": 1,
"typeId": 1,
"slotLabel": null,
"bufferTime": "0d12h30m",
"reservationCostInterval": 1,
"baseReservationRate": 4.5,
"reservationCostDepositAmount": 10.5,
"reservationCostDepositType": 1
}
Example Response
{
"resourceId": 1,
"links": [
{
"href": "http:\/\/url\/to\/resource",
"title": "get_resource"
},
{
"href": "http:\/\/url\/to\/update\/resource",
"title": "update_resource"
}
],
"message": null
}
Update Resource #
Description
Creates a new resource.
Route
/Resources/:resourceId
Authentication
This service is secure and requires authentication headers
This service is only available to application administrators
Example Request
{
"name": "resource name",
"location": "location",
"contact": "contact information",
"notes": "notes",
"minLength": "1d0h0m",
"maxLength": "3600",
"requiresApproval": true,
"groupsBypassingApproval": [ 1, 2 ],
"allowMultiday": true,
"maxParticipants": 100,
"minParticipants": 10,
"minNotice": "0d12h30m",
"minNoticeUpdate": "0d12h30m",
"minNoticeDelete": "0d12h30m",
"maxNotice": "0d12h30m",
"description": "description",
"scheduleId": 10,
"autoAssignPermissions": true,
"customAttributes": [
{
"attributeId": 1,
"attributeValue": "attribute value"
}
],
"sortOrder": 1,
"statusId": 1,
"statusReasonId": 2,
"autoReleaseMinutes": 15,
"extendIfMissedCheckout": null,
"checkinLimitedToAdmins": null,
"autoReleaseAction": null,
"requiresCheckIn": true,
"color": "#ffffff",
"credits": 3,
"peakCredits": 6,
"creditApplicability": 1,
"creditsChargedAllSlots": 1,
"maxConcurrentReservations": 1,
"adminGroupId": 1,
"typeId": 1,
"slotLabel": null,
"bufferTime": "0d12h30m",
"reservationCostInterval": 1,
"baseReservationRate": 4.5,
"reservationCostDepositAmount": 10.5,
"reservationCostDepositType": 1
}
Example Response
{
"resourceId": 1,
"links": [
{
"href": "http:\/\/url\/to\/resource",
"title": "get_resource"
},
{
"href": "http:\/\/url\/to\/update\/resource",
"title": "update_resource"
}
],
"message": null
}
DELETE Methods #
Delete Resource #
Description
Deletes an existing resource.
Route
/Reservations/:referenceNumber
Authentication
This service is secure and requires authentication headers
This service is only available to application administrators
Example Request
No request body
Example Response
{
"links": [],
"message": "The item was deleted"
}/code>