You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
240 lines
7.9 KiB
240 lines
7.9 KiB
{ |
|
"openapi": "3.1.0", |
|
"info": { |
|
"title": "files_external", |
|
"version": "0.0.1", |
|
"description": "Adds basic external storage support", |
|
"license": { |
|
"name": "agpl", |
|
"identifier": "AGPL-3.0-only" |
|
} |
|
}, |
|
"components": { |
|
"securitySchemes": { |
|
"basic_auth": { |
|
"type": "http", |
|
"scheme": "basic" |
|
}, |
|
"bearer_auth": { |
|
"type": "http", |
|
"scheme": "bearer" |
|
} |
|
}, |
|
"schemas": { |
|
"Mount": { |
|
"type": "object", |
|
"required": [ |
|
"name", |
|
"path", |
|
"type", |
|
"backend", |
|
"scope", |
|
"permissions", |
|
"id", |
|
"class", |
|
"config" |
|
], |
|
"properties": { |
|
"name": { |
|
"type": "string" |
|
}, |
|
"path": { |
|
"type": "string" |
|
}, |
|
"type": { |
|
"type": "string", |
|
"enum": [ |
|
"dir" |
|
] |
|
}, |
|
"backend": { |
|
"type": "string" |
|
}, |
|
"scope": { |
|
"type": "string", |
|
"enum": [ |
|
"system", |
|
"personal" |
|
] |
|
}, |
|
"permissions": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"id": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"class": { |
|
"type": "string" |
|
}, |
|
"config": { |
|
"$ref": "#/components/schemas/StorageConfig" |
|
} |
|
} |
|
}, |
|
"OCSMeta": { |
|
"type": "object", |
|
"required": [ |
|
"status", |
|
"statuscode" |
|
], |
|
"properties": { |
|
"status": { |
|
"type": "string" |
|
}, |
|
"statuscode": { |
|
"type": "integer" |
|
}, |
|
"message": { |
|
"type": "string" |
|
}, |
|
"totalitems": { |
|
"type": "string" |
|
}, |
|
"itemsperpage": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"StorageConfig": { |
|
"type": "object", |
|
"required": [ |
|
"authMechanism", |
|
"backend", |
|
"backendOptions", |
|
"mountPoint", |
|
"type", |
|
"userProvided" |
|
], |
|
"properties": { |
|
"applicableGroups": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
}, |
|
"applicableUsers": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
}, |
|
"authMechanism": { |
|
"type": "string" |
|
}, |
|
"backend": { |
|
"type": "string" |
|
}, |
|
"backendOptions": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "object" |
|
} |
|
}, |
|
"id": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"mountOptions": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "object" |
|
} |
|
}, |
|
"mountPoint": { |
|
"type": "string" |
|
}, |
|
"priority": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"status": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"statusMessage": { |
|
"type": "string" |
|
}, |
|
"type": { |
|
"type": "string", |
|
"enum": [ |
|
"personal", |
|
"system" |
|
] |
|
}, |
|
"userProvided": { |
|
"type": "boolean" |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"paths": { |
|
"/ocs/v2.php/apps/files_external/api/v1/mounts": { |
|
"get": { |
|
"operationId": "api-get-user-mounts", |
|
"summary": "Get the mount points visible for this user", |
|
"tags": [ |
|
"api" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "User mounts returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Mount" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"tags": [] |
|
} |