Skip to content

Commit

Permalink
files_trashbin: Add OpenAPI spec
Browse files Browse the repository at this point in the history
Signed-off-by: jld3103 <[email protected]>
  • Loading branch information
provokateurin committed Jul 11, 2023
1 parent a756600 commit 3ca604c
Show file tree
Hide file tree
Showing 3 changed files with 148 additions and 1 deletion.
2 changes: 2 additions & 0 deletions apps/files_trashbin/lib/Capabilities.php
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ class Capabilities implements ICapability {

/**
* Return this classes capabilities
*
* @return array{files: array{undelete: bool}}
*/
public function getCapabilities() {
return [
Expand Down
13 changes: 12 additions & 1 deletion apps/files_trashbin/lib/Controller/PreviewController.php
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,18 @@ public function __construct(
* @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 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,
Expand Down
134 changes: 134 additions & 0 deletions apps/files_trashbin/openapi.json
Original file line number Diff line number Diff line change
@@ -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 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": []
}

0 comments on commit 3ca604c

Please sign in to comment.