From f931f36f4ac515c414495db7b52a97a5b24346cb Mon Sep 17 00:00:00 2001 From: "John L. Villalovos" Date: Tue, 8 Jul 2025 17:18:38 -0700 Subject: [PATCH] fix(API): add endpoint to get resource types --- Web/Services/index.php | 1 + docs/source/API.rst | 26 ++++++++++++++++++++++++++ lib/WebService/WebServices.php | 1 + 3 files changed, 28 insertions(+) diff --git a/Web/Services/index.php b/Web/Services/index.php index 49aa7dfd9..ddec1ac2b 100644 --- a/Web/Services/index.php +++ b/Web/Services/index.php @@ -147,6 +147,7 @@ function RegisterResources(SlimServer $server, SlimWebServiceRegistry $registry) $category->AddSecureGet('/Status/Reasons', [$webService, 'GetStatusReasons'], WebServices::GetStatusReasons); $category->AddSecureGet('/Availability', [$webService, 'GetAvailability'], WebServices::AllAvailability); $category->AddSecureGet('/Groups', [$webService, 'GetGroups'], WebServices::GetResourceGroups); + $category->AddSecureGet('/Types', [$webService, 'GetTypes'], WebServices::GetResourceTypes); $category->AddSecureGet('/:resourceId', [$webService, 'GetResource'], WebServices::GetResource); $category->AddSecureGet('/:resourceId/Availability', [$webService, 'GetAvailability'], WebServices::GetResourceAvailability); $category->AddAdminPost('/', [$writeWebService, 'Create'], WebServices::CreateResource); diff --git a/docs/source/API.rst b/docs/source/API.rst index a2ee42529..f44b7e31a 100644 --- a/docs/source/API.rst +++ b/docs/source/API.rst @@ -1872,6 +1872,32 @@ Returns the full resource group tree "message": null } +GetResourceTypes +^^^^^^^^^^^^^^^^ + +**Description:** + +Returns all available resource types + +**Route:** ``/Web/Services/index.php/Resources/Types`` + +*This service is secure and requires authentication* + +**Response:** + +.. code:: json + + { + "links": [], + "message": null, + "types": [ + { + "id": 1, + "description": "description" + } + ] + } + GetResource ^^^^^^^^^^^ diff --git a/lib/WebService/WebServices.php b/lib/WebService/WebServices.php index 9da980ddf..472bcd915 100644 --- a/lib/WebService/WebServices.php +++ b/lib/WebService/WebServices.php @@ -32,6 +32,7 @@ class WebServices public const GetResource = 'get_resource'; public const GetResourceAvailability = 'get_resource_availability'; public const GetResourceGroups = 'get_resource_groups'; + public const GetResourceTypes = 'get_resource_types'; public const GetSchedule = 'get_schedule'; public const GetScheduleSlots = 'get_schedule_reservations'; public const GetUser = 'get_user';