commit 1af5c7b1ab91c836244ec4df7f22e03baa55420b
parent a5d15e451487aee468e68757c8692fa4cbf96288
Author: MTRNord <mtrnord1@gmail.com>
Date: Sat, 21 Oct 2023 19:11:17 +0200
Fix API docs and add endpoint to get all rooms
Diffstat:
5 files changed, 313 insertions(+), 1435 deletions(-)
diff --git a/.scribe/endpoints.cache/00.yaml b/.scribe/endpoints.cache/00.yaml
@@ -35,7 +35,7 @@ endpoints:
cache-control: 'no-cache, private'
content-type: application/json
x-ratelimit-limit: '60'
- x-ratelimit-remaining: '59'
+ x-ratelimit-remaining: '56'
access-control-allow-origin: '*'
description: null
custom: []
@@ -51,7 +51,7 @@ endpoints:
-
httpMethods:
- GET
- uri: 'api/room/{room_id}'
+ uri: 'api/rooms/{room_id}'
metadata:
groupName: Endpoints
groupDescription: ''
@@ -68,14 +68,14 @@ endpoints:
urlParameters:
room_id:
name: room_id
- description: 'The ID of the room.'
+ description: 'The UUID of the room.'
required: true
- example: architecto
+ example: 9a6c7eaa-c73e-46cf-b625-a52eec78c62d
type: string
enumValues: []
custom: []
cleanUrlParameters:
- room_id: architecto
+ room_id: 9a6c7eaa-c73e-46cf-b625-a52eec78c62d
queryParameters: []
cleanQueryParameters: []
bodyParameters: []
@@ -83,476 +83,58 @@ endpoints:
fileParameters: []
responses:
-
- status: 500
- content: |-
- {
- "message": "App\\Http\\Controllers\\RoomController::get_room_json(): Return value must be of type App\\Models\\Room, null returned",
- "exception": "TypeError",
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/app/Http/Controllers/RoomController.php",
- "line": 30,
- "trace": [
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Controller.php",
- "line": 54,
- "function": "get_room_json",
- "class": "App\\Http\\Controllers\\RoomController",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php",
- "line": 43,
- "function": "callAction",
- "class": "Illuminate\\Routing\\Controller",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
- "line": 259,
- "function": "dispatch",
- "class": "Illuminate\\Routing\\ControllerDispatcher",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
- "line": 205,
- "function": "runController",
- "class": "Illuminate\\Routing\\Route",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 799,
- "function": "run",
- "class": "Illuminate\\Routing\\Route",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 141,
- "function": "Illuminate\\Routing\\{closure}",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php",
- "line": 50,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Routing\\Middleware\\SubstituteBindings",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
- "line": 159,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
- "line": 125,
- "function": "handleRequest",
- "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
- "line": 87,
- "function": "handleRequestUsingNamedLimiter",
- "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php",
- "line": 57,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Auth\\Middleware\\Authenticate",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 116,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 798,
- "function": "then",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 777,
- "function": "runRouteWithinStack",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 741,
- "function": "runRoute",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 730,
- "function": "dispatchToRoute",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
- "line": 200,
- "function": "dispatch",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 141,
- "function": "Illuminate\\Foundation\\Http\\{closure}",
- "class": "Illuminate\\Foundation\\Http\\Kernel",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/livewire/livewire/src/Features/SupportDisablingBackButtonCache/DisableBackButtonCacheMiddleware.php",
- "line": 19,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Livewire\\Features\\SupportDisablingBackButtonCache\\DisableBackButtonCacheMiddleware",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
- "line": 21,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php",
- "line": 31,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
- "line": 21,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php",
- "line": 40,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\TrimStrings",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php",
- "line": 27,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
- "line": 99,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php",
- "line": 62,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Http\\Middleware\\HandleCors",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php",
- "line": 39,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Http\\Middleware\\TrustProxies",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 116,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
- "line": 175,
- "function": "then",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
- "line": 144,
- "function": "sendRequestThroughRouter",
- "class": "Illuminate\\Foundation\\Http\\Kernel",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 299,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Kernel",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 287,
- "function": "callLaravelOrLumenRoute",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 92,
- "function": "makeApiCall",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 45,
- "function": "makeResponseCall",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 35,
- "function": "makeResponseCallIfConditionsPass",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
- "line": 209,
- "function": "__invoke",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
- "line": 163,
- "function": "iterateThroughStrategies",
- "class": "Knuckles\\Scribe\\Extracting\\Extractor",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
- "line": 95,
- "function": "fetchResponses",
- "class": "Knuckles\\Scribe\\Extracting\\Extractor",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
- "line": 124,
- "function": "processRoute",
- "class": "Knuckles\\Scribe\\Extracting\\Extractor",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
- "line": 71,
- "function": "extractEndpointsInfoFromLaravelApp",
- "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
- "line": 49,
- "function": "extractEndpointsInfoAndWriteToDisk",
- "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php",
- "line": 51,
- "function": "get",
- "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
- "line": 36,
- "function": "handle",
- "class": "Knuckles\\Scribe\\Commands\\GenerateDocumentation",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/Util.php",
- "line": 41,
- "function": "Illuminate\\Container\\{closure}",
- "class": "Illuminate\\Container\\BoundMethod",
- "type": "::"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
- "line": 93,
- "function": "unwrapIfClosure",
- "class": "Illuminate\\Container\\Util",
- "type": "::"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
- "line": 35,
- "function": "callBoundMethod",
- "class": "Illuminate\\Container\\BoundMethod",
- "type": "::"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/Container.php",
- "line": 662,
- "function": "call",
- "class": "Illuminate\\Container\\BoundMethod",
- "type": "::"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Console/Command.php",
- "line": 211,
- "function": "call",
- "class": "Illuminate\\Container\\Container",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/symfony/console/Command/Command.php",
- "line": 326,
- "function": "execute",
- "class": "Illuminate\\Console\\Command",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Console/Command.php",
- "line": 180,
- "function": "run",
- "class": "Symfony\\Component\\Console\\Command\\Command",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/symfony/console/Application.php",
- "line": 1081,
- "function": "run",
- "class": "Illuminate\\Console\\Command",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/symfony/console/Application.php",
- "line": 320,
- "function": "doRunCommand",
- "class": "Symfony\\Component\\Console\\Application",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/symfony/console/Application.php",
- "line": 174,
- "function": "doRun",
- "class": "Symfony\\Component\\Console\\Application",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php",
- "line": 201,
- "function": "run",
- "class": "Symfony\\Component\\Console\\Application",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/artisan",
- "line": 35,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Console\\Kernel",
- "type": "->"
- }
- ]
- }
+ status: 200
+ content: '{"id":"9a6c7eaa-c73e-46cf-b625-a52eec78c62d","created_at":"2023-10-21T17:02:02.000000Z","updated_at":"2023-10-21T17:02:02.000000Z","name":"Test","description":"test","cabinet_id":null}'
+ headers:
+ cache-control: 'no-cache, private'
+ content-type: application/json
+ x-ratelimit-limit: '60'
+ x-ratelimit-remaining: '55'
+ access-control-allow-origin: '*'
+ description: null
+ custom: []
+ responseFields: []
+ auth:
+ - headers
+ - Authorization
+ - 'Bearer 15|cc3PlQdafhg0xhyGUwPQxyc8SOoOxwIyA1TAushU76aa56bc'
+ controller: null
+ method: null
+ route: null
+ custom: []
+ -
+ httpMethods:
+ - GET
+ uri: api/rooms
+ metadata:
+ groupName: Endpoints
+ groupDescription: ''
+ subgroup: ''
+ subgroupDescription: ''
+ title: ''
+ description: ''
+ authenticated: true
+ custom: []
+ headers:
+ Authorization: 'Bearer {YOUR_AUTH_KEY}'
+ Content-Type: application/json
+ Accept: application/json
+ urlParameters: []
+ cleanUrlParameters: []
+ queryParameters: []
+ cleanQueryParameters: []
+ bodyParameters: []
+ cleanBodyParameters: []
+ fileParameters: []
+ responses:
+ -
+ status: 200
+ content: '[{"id":"9a6c7eaa-c73e-46cf-b625-a52eec78c62d","created_at":"2023-10-21T17:02:02.000000Z","updated_at":"2023-10-21T17:02:02.000000Z","name":"Test","description":"test","cabinet_id":null},{"id":"9a6c7f77-6a5b-4f2d-83dd-f7f10b9ce375","created_at":"2023-10-21T17:04:16.000000Z","updated_at":"2023-10-21T17:04:16.000000Z","name":"Test1","description":"Test","cabinet_id":null}]'
headers:
cache-control: 'no-cache, private'
content-type: application/json
x-ratelimit-limit: '60'
- x-ratelimit-remaining: '58'
+ x-ratelimit-remaining: '54'
access-control-allow-origin: '*'
description: null
custom: []
diff --git a/.scribe/endpoints/00.yaml b/.scribe/endpoints/00.yaml
@@ -33,7 +33,7 @@ endpoints:
cache-control: 'no-cache, private'
content-type: application/json
x-ratelimit-limit: '60'
- x-ratelimit-remaining: '59'
+ x-ratelimit-remaining: '56'
access-control-allow-origin: '*'
description: null
custom: []
@@ -49,7 +49,7 @@ endpoints:
-
httpMethods:
- GET
- uri: 'api/room/{room_id}'
+ uri: 'api/rooms/{room_id}'
metadata:
groupName: Endpoints
groupDescription: ''
@@ -66,14 +66,14 @@ endpoints:
urlParameters:
room_id:
name: room_id
- description: 'The ID of the room.'
+ description: 'The UUID of the room.'
required: true
- example: architecto
+ example: 9a6c7eaa-c73e-46cf-b625-a52eec78c62d
type: string
enumValues: []
custom: []
cleanUrlParameters:
- room_id: architecto
+ room_id: 9a6c7eaa-c73e-46cf-b625-a52eec78c62d
queryParameters: []
cleanQueryParameters: []
bodyParameters: []
@@ -81,476 +81,58 @@ endpoints:
fileParameters: []
responses:
-
- status: 500
- content: |-
- {
- "message": "App\\Http\\Controllers\\RoomController::get_room_json(): Return value must be of type App\\Models\\Room, null returned",
- "exception": "TypeError",
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/app/Http/Controllers/RoomController.php",
- "line": 30,
- "trace": [
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Controller.php",
- "line": 54,
- "function": "get_room_json",
- "class": "App\\Http\\Controllers\\RoomController",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php",
- "line": 43,
- "function": "callAction",
- "class": "Illuminate\\Routing\\Controller",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
- "line": 259,
- "function": "dispatch",
- "class": "Illuminate\\Routing\\ControllerDispatcher",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
- "line": 205,
- "function": "runController",
- "class": "Illuminate\\Routing\\Route",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 799,
- "function": "run",
- "class": "Illuminate\\Routing\\Route",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 141,
- "function": "Illuminate\\Routing\\{closure}",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php",
- "line": 50,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Routing\\Middleware\\SubstituteBindings",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
- "line": 159,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
- "line": 125,
- "function": "handleRequest",
- "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
- "line": 87,
- "function": "handleRequestUsingNamedLimiter",
- "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php",
- "line": 57,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Auth\\Middleware\\Authenticate",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 116,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 798,
- "function": "then",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 777,
- "function": "runRouteWithinStack",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 741,
- "function": "runRoute",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 730,
- "function": "dispatchToRoute",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
- "line": 200,
- "function": "dispatch",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 141,
- "function": "Illuminate\\Foundation\\Http\\{closure}",
- "class": "Illuminate\\Foundation\\Http\\Kernel",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/livewire/livewire/src/Features/SupportDisablingBackButtonCache/DisableBackButtonCacheMiddleware.php",
- "line": 19,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Livewire\\Features\\SupportDisablingBackButtonCache\\DisableBackButtonCacheMiddleware",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
- "line": 21,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php",
- "line": 31,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
- "line": 21,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php",
- "line": 40,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\TrimStrings",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php",
- "line": 27,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
- "line": 99,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php",
- "line": 62,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Http\\Middleware\\HandleCors",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php",
- "line": 39,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Http\\Middleware\\TrustProxies",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 116,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
- "line": 175,
- "function": "then",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
- "line": 144,
- "function": "sendRequestThroughRouter",
- "class": "Illuminate\\Foundation\\Http\\Kernel",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 299,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Kernel",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 287,
- "function": "callLaravelOrLumenRoute",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 92,
- "function": "makeApiCall",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 45,
- "function": "makeResponseCall",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 35,
- "function": "makeResponseCallIfConditionsPass",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
- "line": 209,
- "function": "__invoke",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
- "line": 163,
- "function": "iterateThroughStrategies",
- "class": "Knuckles\\Scribe\\Extracting\\Extractor",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
- "line": 95,
- "function": "fetchResponses",
- "class": "Knuckles\\Scribe\\Extracting\\Extractor",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
- "line": 124,
- "function": "processRoute",
- "class": "Knuckles\\Scribe\\Extracting\\Extractor",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
- "line": 71,
- "function": "extractEndpointsInfoFromLaravelApp",
- "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
- "line": 49,
- "function": "extractEndpointsInfoAndWriteToDisk",
- "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php",
- "line": 51,
- "function": "get",
- "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
- "line": 36,
- "function": "handle",
- "class": "Knuckles\\Scribe\\Commands\\GenerateDocumentation",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/Util.php",
- "line": 41,
- "function": "Illuminate\\Container\\{closure}",
- "class": "Illuminate\\Container\\BoundMethod",
- "type": "::"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
- "line": 93,
- "function": "unwrapIfClosure",
- "class": "Illuminate\\Container\\Util",
- "type": "::"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
- "line": 35,
- "function": "callBoundMethod",
- "class": "Illuminate\\Container\\BoundMethod",
- "type": "::"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/Container.php",
- "line": 662,
- "function": "call",
- "class": "Illuminate\\Container\\BoundMethod",
- "type": "::"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Console/Command.php",
- "line": 211,
- "function": "call",
- "class": "Illuminate\\Container\\Container",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/symfony/console/Command/Command.php",
- "line": 326,
- "function": "execute",
- "class": "Illuminate\\Console\\Command",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Console/Command.php",
- "line": 180,
- "function": "run",
- "class": "Symfony\\Component\\Console\\Command\\Command",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/symfony/console/Application.php",
- "line": 1081,
- "function": "run",
- "class": "Illuminate\\Console\\Command",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/symfony/console/Application.php",
- "line": 320,
- "function": "doRunCommand",
- "class": "Symfony\\Component\\Console\\Application",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/symfony/console/Application.php",
- "line": 174,
- "function": "doRun",
- "class": "Symfony\\Component\\Console\\Application",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php",
- "line": 201,
- "function": "run",
- "class": "Symfony\\Component\\Console\\Application",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/artisan",
- "line": 35,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Console\\Kernel",
- "type": "->"
- }
- ]
- }
+ status: 200
+ content: '{"id":"9a6c7eaa-c73e-46cf-b625-a52eec78c62d","created_at":"2023-10-21T17:02:02.000000Z","updated_at":"2023-10-21T17:02:02.000000Z","name":"Test","description":"test","cabinet_id":null}'
+ headers:
+ cache-control: 'no-cache, private'
+ content-type: application/json
+ x-ratelimit-limit: '60'
+ x-ratelimit-remaining: '55'
+ access-control-allow-origin: '*'
+ description: null
+ custom: []
+ responseFields: []
+ auth:
+ - headers
+ - Authorization
+ - 'Bearer 15|cc3PlQdafhg0xhyGUwPQxyc8SOoOxwIyA1TAushU76aa56bc'
+ controller: null
+ method: null
+ route: null
+ custom: []
+ -
+ httpMethods:
+ - GET
+ uri: api/rooms
+ metadata:
+ groupName: Endpoints
+ groupDescription: ''
+ subgroup: ''
+ subgroupDescription: ''
+ title: ''
+ description: ''
+ authenticated: true
+ custom: []
+ headers:
+ Authorization: 'Bearer {YOUR_AUTH_KEY}'
+ Content-Type: application/json
+ Accept: application/json
+ urlParameters: []
+ cleanUrlParameters: []
+ queryParameters: []
+ cleanQueryParameters: []
+ bodyParameters: []
+ cleanBodyParameters: []
+ fileParameters: []
+ responses:
+ -
+ status: 200
+ content: '[{"id":"9a6c7eaa-c73e-46cf-b625-a52eec78c62d","created_at":"2023-10-21T17:02:02.000000Z","updated_at":"2023-10-21T17:02:02.000000Z","name":"Test","description":"test","cabinet_id":null},{"id":"9a6c7f77-6a5b-4f2d-83dd-f7f10b9ce375","created_at":"2023-10-21T17:04:16.000000Z","updated_at":"2023-10-21T17:04:16.000000Z","name":"Test1","description":"Test","cabinet_id":null}]'
headers:
cache-control: 'no-cache, private'
content-type: application/json
x-ratelimit-limit: '60'
- x-ratelimit-remaining: '58'
+ x-ratelimit-remaining: '54'
access-control-allow-origin: '*'
description: null
custom: []
diff --git a/app/Http/Controllers/RoomController.php b/app/Http/Controllers/RoomController.php
@@ -3,6 +3,7 @@
namespace App\Http\Controllers;
use App\Models\Room;
+use Illuminate\Database\Eloquent\Collection;
use Illuminate\Http\Request;
class RoomController extends Controller
@@ -24,9 +25,18 @@ class RoomController extends Controller
]);
}
+ /**
+ * @urlParam room_id string required The UUID of the room. Example: 9a6c7eaa-c73e-46cf-b625-a52eec78c62d
+ */
public function get_room_json(string $room_id): Room
{
$room = Room::find($room_id);
return $room;
}
+
+ public function get_rooms_json(): Collection
+ {
+ $rooms = Room::all();
+ return $rooms;
+ }
}
diff --git a/resources/views/scribe/index.blade.php b/resources/views/scribe/index.blade.php
@@ -74,8 +74,11 @@
<li class="tocify-item level-2" data-unique="endpoints-GETapi-user">
<a href="#endpoints-GETapi-user">GET api/user</a>
</li>
- <li class="tocify-item level-2" data-unique="endpoints-GETapi-room--room_id-">
- <a href="#endpoints-GETapi-room--room_id-">GET api/room/{room_id}</a>
+ <li class="tocify-item level-2" data-unique="endpoints-GETapi-rooms--room_id-">
+ <a href="#endpoints-GETapi-rooms--room_id-">GET api/rooms/{room_id}</a>
+ </li>
+ <li class="tocify-item level-2" data-unique="endpoints-GETapi-rooms">
+ <a href="#endpoints-GETapi-rooms">GET api/rooms</a>
</li>
</ul>
</ul>
@@ -88,7 +91,7 @@
</ul>
<ul class="toc-footer" id="last-updated">
- <li>Last updated: October 18, 2023</li>
+ <li>Last updated: October 21, 2023</li>
</ul>
</div>
@@ -159,7 +162,7 @@ fetch(url, {
<pre><code class="language-http">cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
-x-ratelimit-remaining: 59
+x-ratelimit-remaining: 56
access-control-allow-origin: *
</code></pre></details> <pre>
@@ -255,7 +258,7 @@ You can check the Dev Tools console for debugging information.</code></pre>
</div>
</form>
- <h2 id="endpoints-GETapi-room--room_id-">GET api/room/{room_id}</h2>
+ <h2 id="endpoints-GETapi-rooms--room_id-">GET api/rooms/{room_id}</h2>
<p>
<small class="badge badge-darkred">requires authentication</small>
@@ -263,13 +266,13 @@ You can check the Dev Tools console for debugging information.</code></pre>
-<span id="example-requests-GETapi-room--room_id-">
+<span id="example-requests-GETapi-rooms--room_id-">
<blockquote>Example request:</blockquote>
<div class="bash-example">
<pre><code class="language-bash">curl --request GET \
- --get "http://localhost/api/room/architecto" \
+ --get "http://localhost/api/rooms/9a6c7eaa-c73e-46cf-b625-a52eec78c62d" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"</code></pre></div>
@@ -277,7 +280,7 @@ You can check the Dev Tools console for debugging information.</code></pre>
<div class="javascript-example">
<pre><code class="language-javascript">const url = new URL(
- "http://localhost/api/room/architecto"
+ "http://localhost/api/rooms/9a6c7eaa-c73e-46cf-b625-a52eec78c62d"
);
const headers = {
@@ -293,9 +296,9 @@ fetch(url, {
</span>
-<span id="example-responses-GETapi-room--room_id-">
+<span id="example-responses-GETapi-rooms--room_id-">
<blockquote>
- <p>Example response (500):</p>
+ <p>Example response (200):</p>
</blockquote>
<details class="annotation">
<summary style="cursor: pointer;">
@@ -304,512 +307,57 @@ fetch(url, {
<pre><code class="language-http">cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
-x-ratelimit-remaining: 58
+x-ratelimit-remaining: 55
access-control-allow-origin: *
</code></pre></details> <pre>
<code class="language-json" style="max-height: 300px;">{
- "message": "App\\Http\\Controllers\\RoomController::get_room_json(): Return value must be of type App\\Models\\Room, null returned",
- "exception": "TypeError",
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/app/Http/Controllers/RoomController.php",
- "line": 30,
- "trace": [
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Controller.php",
- "line": 54,
- "function": "get_room_json",
- "class": "App\\Http\\Controllers\\RoomController",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php",
- "line": 43,
- "function": "callAction",
- "class": "Illuminate\\Routing\\Controller",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
- "line": 259,
- "function": "dispatch",
- "class": "Illuminate\\Routing\\ControllerDispatcher",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
- "line": 205,
- "function": "runController",
- "class": "Illuminate\\Routing\\Route",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 799,
- "function": "run",
- "class": "Illuminate\\Routing\\Route",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 141,
- "function": "Illuminate\\Routing\\{closure}",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php",
- "line": 50,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Routing\\Middleware\\SubstituteBindings",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
- "line": 159,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
- "line": 125,
- "function": "handleRequest",
- "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
- "line": 87,
- "function": "handleRequestUsingNamedLimiter",
- "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php",
- "line": 57,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Auth\\Middleware\\Authenticate",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 116,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 798,
- "function": "then",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 777,
- "function": "runRouteWithinStack",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 741,
- "function": "runRoute",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
- "line": 730,
- "function": "dispatchToRoute",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
- "line": 200,
- "function": "dispatch",
- "class": "Illuminate\\Routing\\Router",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 141,
- "function": "Illuminate\\Foundation\\Http\\{closure}",
- "class": "Illuminate\\Foundation\\Http\\Kernel",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/livewire/livewire/src/Features/SupportDisablingBackButtonCache/DisableBackButtonCacheMiddleware.php",
- "line": 19,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Livewire\\Features\\SupportDisablingBackButtonCache\\DisableBackButtonCacheMiddleware",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
- "line": 21,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php",
- "line": 31,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
- "line": 21,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php",
- "line": 40,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\TrimStrings",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php",
- "line": 27,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
- "line": 99,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php",
- "line": 62,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Http\\Middleware\\HandleCors",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php",
- "line": 39,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 180,
- "function": "handle",
- "class": "Illuminate\\Http\\Middleware\\TrustProxies",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
- "line": 116,
- "function": "Illuminate\\Pipeline\\{closure}",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
- "line": 175,
- "function": "then",
- "class": "Illuminate\\Pipeline\\Pipeline",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
- "line": 144,
- "function": "sendRequestThroughRouter",
- "class": "Illuminate\\Foundation\\Http\\Kernel",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 299,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Http\\Kernel",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 287,
- "function": "callLaravelOrLumenRoute",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 92,
- "function": "makeApiCall",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 45,
- "function": "makeResponseCall",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
- "line": 35,
- "function": "makeResponseCallIfConditionsPass",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
- "line": 209,
- "function": "__invoke",
- "class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
- "line": 163,
- "function": "iterateThroughStrategies",
- "class": "Knuckles\\Scribe\\Extracting\\Extractor",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
- "line": 95,
- "function": "fetchResponses",
- "class": "Knuckles\\Scribe\\Extracting\\Extractor",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
- "line": 124,
- "function": "processRoute",
- "class": "Knuckles\\Scribe\\Extracting\\Extractor",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
- "line": 71,
- "function": "extractEndpointsInfoFromLaravelApp",
- "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
- "line": 49,
- "function": "extractEndpointsInfoAndWriteToDisk",
- "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php",
- "line": 51,
- "function": "get",
- "class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
- "line": 36,
- "function": "handle",
- "class": "Knuckles\\Scribe\\Commands\\GenerateDocumentation",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/Util.php",
- "line": 41,
- "function": "Illuminate\\Container\\{closure}",
- "class": "Illuminate\\Container\\BoundMethod",
- "type": "::"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
- "line": 93,
- "function": "unwrapIfClosure",
- "class": "Illuminate\\Container\\Util",
- "type": "::"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
- "line": 35,
- "function": "callBoundMethod",
- "class": "Illuminate\\Container\\BoundMethod",
- "type": "::"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Container/Container.php",
- "line": 662,
- "function": "call",
- "class": "Illuminate\\Container\\BoundMethod",
- "type": "::"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Console/Command.php",
- "line": 211,
- "function": "call",
- "class": "Illuminate\\Container\\Container",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/symfony/console/Command/Command.php",
- "line": 326,
- "function": "execute",
- "class": "Illuminate\\Console\\Command",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Console/Command.php",
- "line": 180,
- "function": "run",
- "class": "Symfony\\Component\\Console\\Command\\Command",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/symfony/console/Application.php",
- "line": 1081,
- "function": "run",
- "class": "Illuminate\\Console\\Command",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/symfony/console/Application.php",
- "line": 320,
- "function": "doRunCommand",
- "class": "Symfony\\Component\\Console\\Application",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/symfony/console/Application.php",
- "line": 174,
- "function": "doRun",
- "class": "Symfony\\Component\\Console\\Application",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php",
- "line": 201,
- "function": "run",
- "class": "Symfony\\Component\\Console\\Application",
- "type": "->"
- },
- {
- "file": "/run/media/marcel/1ac60e61-e5e2-4157-9a7a-830801a3fb0b/projects/personal-erp/home-erp/artisan",
- "line": 35,
- "function": "handle",
- "class": "Illuminate\\Foundation\\Console\\Kernel",
- "type": "->"
- }
- ]
+ "id": "9a6c7eaa-c73e-46cf-b625-a52eec78c62d",
+ "created_at": "2023-10-21T17:02:02.000000Z",
+ "updated_at": "2023-10-21T17:02:02.000000Z",
+ "name": "Test",
+ "description": "test",
+ "cabinet_id": null
}</code>
</pre>
</span>
-<span id="execution-results-GETapi-room--room_id-" hidden>
+<span id="execution-results-GETapi-rooms--room_id-" hidden>
<blockquote>Received response<span
- id="execution-response-status-GETapi-room--room_id-"></span>:
+ id="execution-response-status-GETapi-rooms--room_id-"></span>:
</blockquote>
- <pre class="json"><code id="execution-response-content-GETapi-room--room_id-"
+ <pre class="json"><code id="execution-response-content-GETapi-rooms--room_id-"
data-empty-response-text="<Empty response>" style="max-height: 400px;"></code></pre>
</span>
-<span id="execution-error-GETapi-room--room_id-" hidden>
+<span id="execution-error-GETapi-rooms--room_id-" hidden>
<blockquote>Request failed with error:</blockquote>
- <pre><code id="execution-error-message-GETapi-room--room_id-">
+ <pre><code id="execution-error-message-GETapi-rooms--room_id-">
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.</code></pre>
</span>
-<form id="form-GETapi-room--room_id-" data-method="GET"
- data-path="api/room/{room_id}"
+<form id="form-GETapi-rooms--room_id-" data-method="GET"
+ data-path="api/rooms/{room_id}"
data-authed="1"
data-hasfiles="0"
data-isarraybody="0"
autocomplete="off"
- onsubmit="event.preventDefault(); executeTryOut('GETapi-room--room_id-', this);">
+ onsubmit="event.preventDefault(); executeTryOut('GETapi-rooms--room_id-', this);">
<h3>
Request
<button type="button"
style="background-color: #8fbcd4; padding: 5px 10px; border-radius: 5px; border-width: thin;"
- id="btn-tryout-GETapi-room--room_id-"
- onclick="tryItOut('GETapi-room--room_id-');">Try it out ⚡
+ id="btn-tryout-GETapi-rooms--room_id-"
+ onclick="tryItOut('GETapi-rooms--room_id-');">Try it out ⚡
</button>
<button type="button"
style="background-color: #c97a7e; padding: 5px 10px; border-radius: 5px; border-width: thin;"
- id="btn-canceltryout-GETapi-room--room_id-"
- onclick="cancelTryOut('GETapi-room--room_id-');" hidden>Cancel 🛑
+ id="btn-canceltryout-GETapi-rooms--room_id-"
+ onclick="cancelTryOut('GETapi-rooms--room_id-');" hidden>Cancel 🛑
</button>
<button type="submit"
style="background-color: #6ac174; padding: 5px 10px; border-radius: 5px; border-width: thin;"
- id="btn-executetryout-GETapi-room--room_id-"
+ id="btn-executetryout-GETapi-rooms--room_id-"
data-initial-text="Send Request 💥"
data-loading-text="⏱ Sending..."
hidden>Send Request 💥
@@ -817,7 +365,7 @@ You can check the Dev Tools console for debugging information.</code></pre>
</h3>
<p>
<small class="badge badge-green">GET</small>
- <b><code>api/room/{room_id}</code></b>
+ <b><code>api/rooms/{room_id}</code></b>
</p>
<h4 class="fancy-heading-panel"><b>Headers</b></h4>
<div style="padding-left: 28px; clear: unset;">
@@ -825,7 +373,7 @@ You can check the Dev Tools console for debugging information.</code></pre>
<input type="text" style="display: none"
- name="Authorization" class="auth-value" data-endpoint="GETapi-room--room_id-"
+ name="Authorization" class="auth-value" data-endpoint="GETapi-rooms--room_id-"
value="Bearer {YOUR_AUTH_KEY}"
data-component="header">
<br>
@@ -836,7 +384,7 @@ You can check the Dev Tools console for debugging information.</code></pre>
<input type="text" style="display: none"
- name="Content-Type" data-endpoint="GETapi-room--room_id-"
+ name="Content-Type" data-endpoint="GETapi-rooms--room_id-"
value="application/json"
data-component="header">
<br>
@@ -847,7 +395,7 @@ You can check the Dev Tools console for debugging information.</code></pre>
<input type="text" style="display: none"
- name="Accept" data-endpoint="GETapi-room--room_id-"
+ name="Accept" data-endpoint="GETapi-rooms--room_id-"
value="application/json"
data-component="header">
<br>
@@ -859,14 +407,169 @@ You can check the Dev Tools console for debugging information.</code></pre>
<small>string</small>
<input type="text" style="display: none"
- name="room_id" data-endpoint="GETapi-room--room_id-"
- value="architecto"
+ name="room_id" data-endpoint="GETapi-rooms--room_id-"
+ value="9a6c7eaa-c73e-46cf-b625-a52eec78c62d"
data-component="url">
<br>
-<p>The ID of the room. Example: <code>architecto</code></p>
+<p>The UUID of the room. Example: <code>9a6c7eaa-c73e-46cf-b625-a52eec78c62d</code></p>
</div>
</form>
+ <h2 id="endpoints-GETapi-rooms">GET api/rooms</h2>
+
+<p>
+<small class="badge badge-darkred">requires authentication</small>
+</p>
+
+
+
+<span id="example-requests-GETapi-rooms">
+<blockquote>Example request:</blockquote>
+
+
+<div class="bash-example">
+ <pre><code class="language-bash">curl --request GET \
+ --get "http://localhost/api/rooms" \
+ --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
+ --header "Content-Type: application/json" \
+ --header "Accept: application/json"</code></pre></div>
+
+
+<div class="javascript-example">
+ <pre><code class="language-javascript">const url = new URL(
+ "http://localhost/api/rooms"
+);
+
+const headers = {
+ "Authorization": "Bearer {YOUR_AUTH_KEY}",
+ "Content-Type": "application/json",
+ "Accept": "application/json",
+};
+
+fetch(url, {
+ method: "GET",
+ headers,
+}).then(response => response.json());</code></pre></div>
+
+</span>
+
+<span id="example-responses-GETapi-rooms">
+ <blockquote>
+ <p>Example response (200):</p>
+ </blockquote>
+ <details class="annotation">
+ <summary style="cursor: pointer;">
+ <small onclick="textContent = parentElement.parentElement.open ? 'Show headers' : 'Hide headers'">Show headers</small>
+ </summary>
+ <pre><code class="language-http">cache-control: no-cache, private
+content-type: application/json
+x-ratelimit-limit: 60
+x-ratelimit-remaining: 54
+access-control-allow-origin: *
+ </code></pre></details> <pre>
+
+<code class="language-json" style="max-height: 300px;">[
+ {
+ "id": "9a6c7eaa-c73e-46cf-b625-a52eec78c62d",
+ "created_at": "2023-10-21T17:02:02.000000Z",
+ "updated_at": "2023-10-21T17:02:02.000000Z",
+ "name": "Test",
+ "description": "test",
+ "cabinet_id": null
+ },
+ {
+ "id": "9a6c7f77-6a5b-4f2d-83dd-f7f10b9ce375",
+ "created_at": "2023-10-21T17:04:16.000000Z",
+ "updated_at": "2023-10-21T17:04:16.000000Z",
+ "name": "Test1",
+ "description": "Test",
+ "cabinet_id": null
+ }
+]</code>
+ </pre>
+ </span>
+<span id="execution-results-GETapi-rooms" hidden>
+ <blockquote>Received response<span
+ id="execution-response-status-GETapi-rooms"></span>:
+ </blockquote>
+ <pre class="json"><code id="execution-response-content-GETapi-rooms"
+ data-empty-response-text="<Empty response>" style="max-height: 400px;"></code></pre>
+</span>
+<span id="execution-error-GETapi-rooms" hidden>
+ <blockquote>Request failed with error:</blockquote>
+ <pre><code id="execution-error-message-GETapi-rooms">
+
+Tip: Check that you're properly connected to the network.
+If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
+You can check the Dev Tools console for debugging information.</code></pre>
+</span>
+<form id="form-GETapi-rooms" data-method="GET"
+ data-path="api/rooms"
+ data-authed="1"
+ data-hasfiles="0"
+ data-isarraybody="0"
+ autocomplete="off"
+ onsubmit="event.preventDefault(); executeTryOut('GETapi-rooms', this);">
+ <h3>
+ Request
+ <button type="button"
+ style="background-color: #8fbcd4; padding: 5px 10px; border-radius: 5px; border-width: thin;"
+ id="btn-tryout-GETapi-rooms"
+ onclick="tryItOut('GETapi-rooms');">Try it out ⚡
+ </button>
+ <button type="button"
+ style="background-color: #c97a7e; padding: 5px 10px; border-radius: 5px; border-width: thin;"
+ id="btn-canceltryout-GETapi-rooms"
+ onclick="cancelTryOut('GETapi-rooms');" hidden>Cancel 🛑
+ </button>
+ <button type="submit"
+ style="background-color: #6ac174; padding: 5px 10px; border-radius: 5px; border-width: thin;"
+ id="btn-executetryout-GETapi-rooms"
+ data-initial-text="Send Request 💥"
+ data-loading-text="⏱ Sending..."
+ hidden>Send Request 💥
+ </button>
+ </h3>
+ <p>
+ <small class="badge badge-green">GET</small>
+ <b><code>api/rooms</code></b>
+ </p>
+ <h4 class="fancy-heading-panel"><b>Headers</b></h4>
+ <div style="padding-left: 28px; clear: unset;">
+ <b style="line-height: 2;"><code>Authorization</code></b>
+
+
+ <input type="text" style="display: none"
+ name="Authorization" class="auth-value" data-endpoint="GETapi-rooms"
+ value="Bearer {YOUR_AUTH_KEY}"
+ data-component="header">
+ <br>
+<p>Example: <code>Bearer {YOUR_AUTH_KEY}</code></p>
+ </div>
+ <div style="padding-left: 28px; clear: unset;">
+ <b style="line-height: 2;"><code>Content-Type</code></b>
+
+
+ <input type="text" style="display: none"
+ name="Content-Type" data-endpoint="GETapi-rooms"
+ value="application/json"
+ data-component="header">
+ <br>
+<p>Example: <code>application/json</code></p>
+ </div>
+ <div style="padding-left: 28px; clear: unset;">
+ <b style="line-height: 2;"><code>Accept</code></b>
+
+
+ <input type="text" style="display: none"
+ name="Accept" data-endpoint="GETapi-rooms"
+ value="application/json"
+ data-component="header">
+ <br>
+<p>Example: <code>application/json</code></p>
+ </div>
+ </form>
+
diff --git a/routes/api.php b/routes/api.php
@@ -19,4 +19,5 @@ Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
return $request->user();
});
-Route::middleware('auth:sanctum')->get('/room/{room_id}', [RoomController::class, 'get_room_json']);
+Route::middleware('auth:sanctum')->get('/rooms/{room_id}', [RoomController::class, 'get_room_json']);
+Route::middleware('auth:sanctum')->get('/rooms/', [RoomController::class, 'get_rooms_json']);