diff options
author | jld3103 <jld3103yt@gmail.com> | 2023-06-14 16:36:05 +0200 |
---|---|---|
committer | jld3103 <jld3103yt@gmail.com> | 2023-07-13 06:26:58 +0200 |
commit | 99dc010670c91b2cbe062fbeea22ae6d9e48c6e0 (patch) | |
tree | 889d727dc19ab7eb478697787b1da541f28224cb /apps | |
parent | 706c141fffce928d344fe2f039da549fad065393 (diff) | |
download | nextcloud-server-99dc010670c91b2cbe062fbeea22ae6d9e48c6e0.tar.gz nextcloud-server-99dc010670c91b2cbe062fbeea22ae6d9e48c6e0.zip |
files_trashbin: Add OpenAPI spec
Signed-off-by: jld3103 <jld3103yt@gmail.com>
Diffstat (limited to 'apps')
-rw-r--r-- | apps/files_trashbin/lib/Capabilities.php | 2 | ||||
-rw-r--r-- | apps/files_trashbin/lib/Controller/PreviewController.php | 13 | ||||
-rw-r--r-- | apps/files_trashbin/openapi.json | 134 |
3 files changed, 148 insertions, 1 deletions
diff --git a/apps/files_trashbin/lib/Capabilities.php b/apps/files_trashbin/lib/Capabilities.php index c0788ff7308..b53881daa29 100644 --- a/apps/files_trashbin/lib/Capabilities.php +++ b/apps/files_trashbin/lib/Capabilities.php @@ -33,6 +33,8 @@ class Capabilities implements ICapability { /** * Return this classes capabilities + * + * @return array{files: array{undelete: bool}} */ public function getCapabilities() { return [ diff --git a/apps/files_trashbin/lib/Controller/PreviewController.php b/apps/files_trashbin/lib/Controller/PreviewController.php index 9f60cc8b0b2..e62a793a98f 100644 --- a/apps/files_trashbin/lib/Controller/PreviewController.php +++ b/apps/files_trashbin/lib/Controller/PreviewController.php @@ -85,7 +85,18 @@ class PreviewController extends Controller { * @NoAdminRequired * @NoCSRFRequired * - * @return DataResponse|Http\FileDisplayResponse + * Get the preview for a file + * + * @param int $fileId ID of the file + * @param int $x Width of the preview + * @param int $y Height of the preview + * @param bool $a Whether to not crop the preview + * + * @return Http\FileDisplayResponse<Http::STATUS_OK, array{Content-Type: string}>|DataResponse<Http::STATUS_BAD_REQUEST|Http::STATUS_NOT_FOUND, array<empty>, array{}> + * + * 200: Preview returned + * 400: Getting preview is not possible + * 404: Preview not found */ public function getPreview( int $fileId = -1, diff --git a/apps/files_trashbin/openapi.json b/apps/files_trashbin/openapi.json new file mode 100644 index 00000000000..a96cf5f189d --- /dev/null +++ b/apps/files_trashbin/openapi.json @@ -0,0 +1,134 @@ +{ + "openapi": "3.0.3", + "info": { + "title": "files_trashbin", + "version": "0.0.1", + "description": "This application enables users to restore files that were deleted from the system.", + "license": { + "name": "agpl" + } + }, + "components": { + "securitySchemes": { + "basic_auth": { + "type": "http", + "scheme": "basic" + }, + "bearer_auth": { + "type": "http", + "scheme": "bearer" + } + }, + "schemas": { + "Capabilities": { + "type": "object", + "required": [ + "files" + ], + "properties": { + "files": { + "type": "object", + "required": [ + "undelete" + ], + "properties": { + "undelete": { + "type": "boolean" + } + } + } + } + } + } + }, + "paths": { + "/index.php/apps/files_trashbin/preview": { + "get": { + "operationId": "preview-get-preview", + "summary": "Get the preview for a file", + "tags": [ + "preview" + ], + "security": [ + { + "bearer_auth": [] + }, + { + "basic_auth": [] + } + ], + "parameters": [ + { + "name": "fileId", + "in": "query", + "description": "ID of the file", + "schema": { + "type": "integer", + "format": "int64", + "default": -1 + } + }, + { + "name": "x", + "in": "query", + "description": "Width of the preview", + "schema": { + "type": "integer", + "format": "int64", + "default": 32 + } + }, + { + "name": "y", + "in": "query", + "description": "Height of the preview", + "schema": { + "type": "integer", + "format": "int64", + "default": 32 + } + }, + { + "name": "a", + "in": "query", + "description": "Whether to not crop the preview", + "schema": { + "type": "integer", + "default": 0 + } + } + ], + "responses": { + "200": { + "description": "Preview returned", + "content": { + "*/*": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "400": { + "description": "Getting preview is not possible", + "content": { + "application/json": { + "schema": {} + } + } + }, + "404": { + "description": "Preview not found", + "content": { + "application/json": { + "schema": {} + } + } + } + } + } + } + }, + "tags": [] +}
\ No newline at end of file |