mirror of
https://github.com/nextcloud/server.git
synced 2026-04-15 22:11:17 -04:00
feat(files): Update openapi
Signed-off-by: Christopher Ng <chrng8@gmail.com>
This commit is contained in:
parent
e9083db768
commit
36cf891b7f
3 changed files with 93 additions and 28 deletions
|
|
@ -261,10 +261,15 @@ class ApiController extends Controller {
|
|||
/**
|
||||
* Returns the folder tree of the user
|
||||
*
|
||||
* @return JSONResponse<Http::STATUS_OK, FilesFolderTree, array{}>|JSONResponse<Http::STATUS_UNAUTHORIZED, array{message: string}, array{}>
|
||||
* @param string $path The path relative to the user folder
|
||||
* @param int $depth The depth of the tree
|
||||
*
|
||||
* @return JSONResponse<Http::STATUS_OK, FilesFolderTree, array{}>|JSONResponse<Http::STATUS_UNAUTHORIZED|Http::STATUS_BAD_REQUEST|Http::STATUS_NOT_FOUND, array{message: string}, array{}>
|
||||
*
|
||||
* 200: Folder tree returned successfully
|
||||
* 400: Invalid folder path
|
||||
* 401: Unauthorized
|
||||
* 404: Folder not found
|
||||
*/
|
||||
#[NoAdminRequired]
|
||||
#[ApiRoute(verb: 'GET', url: '/api/v1/folder-tree')]
|
||||
|
|
|
|||
|
|
@ -39,13 +39,12 @@ namespace OCA\Files;
|
|||
* type: string,
|
||||
* }
|
||||
*
|
||||
* @psalm-type FilesFolderTreeNode = array{
|
||||
* @psalm-type FilesFolderTree = list<array{
|
||||
* id: int,
|
||||
* basename: string,
|
||||
* displayName?: string,
|
||||
* children?: array<string, array{}>,
|
||||
* }
|
||||
*
|
||||
* @psalm-type FilesFolderTree = array<string, FilesFolderTreeNode>
|
||||
* children: list<array{}>,
|
||||
* }>
|
||||
*
|
||||
*/
|
||||
class ResponseDefinitions {
|
||||
|
|
|
|||
|
|
@ -100,28 +100,30 @@
|
|||
}
|
||||
},
|
||||
"FolderTree": {
|
||||
"type": "object",
|
||||
"additionalProperties": {
|
||||
"$ref": "#/components/schemas/FolderTreeNode"
|
||||
}
|
||||
},
|
||||
"FolderTreeNode": {
|
||||
"type": "object",
|
||||
"required": [
|
||||
"id"
|
||||
],
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer",
|
||||
"format": "int64"
|
||||
},
|
||||
"displayName": {
|
||||
"type": "string"
|
||||
},
|
||||
"children": {
|
||||
"type": "object",
|
||||
"additionalProperties": {
|
||||
"type": "object"
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"required": [
|
||||
"id",
|
||||
"basename",
|
||||
"children"
|
||||
],
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer",
|
||||
"format": "int64"
|
||||
},
|
||||
"basename": {
|
||||
"type": "string"
|
||||
},
|
||||
"displayName": {
|
||||
"type": "string"
|
||||
},
|
||||
"children": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1971,6 +1973,29 @@
|
|||
"basic_auth": []
|
||||
}
|
||||
],
|
||||
"requestBody": {
|
||||
"required": false,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"path": {
|
||||
"type": "string",
|
||||
"default": "/",
|
||||
"description": "The path relative to the user folder"
|
||||
},
|
||||
"depth": {
|
||||
"type": "integer",
|
||||
"format": "int64",
|
||||
"default": 1,
|
||||
"description": "The depth of the tree"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"parameters": [
|
||||
{
|
||||
"name": "OCS-APIRequest",
|
||||
|
|
@ -2011,6 +2036,42 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid folder path",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"required": [
|
||||
"message"
|
||||
],
|
||||
"properties": {
|
||||
"message": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"404": {
|
||||
"description": "Folder not found",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"required": [
|
||||
"message"
|
||||
],
|
||||
"properties": {
|
||||
"message": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue