From 9b822a5722bf8423d7a38d32f6e0f44f9f1d78f9 Mon Sep 17 00:00:00 2001 From: jld3103 Date: Thu, 15 Jun 2023 15:47:21 +0200 Subject: [PATCH] sharebymail: Add OpenAPI spec Signed-off-by: jld3103 --- apps/sharebymail/lib/Capabilities.php | 21 ++++++ apps/sharebymail/openapi.json | 102 ++++++++++++++++++++++++++ 2 files changed, 123 insertions(+) create mode 100644 apps/sharebymail/openapi.json diff --git a/apps/sharebymail/lib/Capabilities.php b/apps/sharebymail/lib/Capabilities.php index 39d7172bb76a..8be0ca380cf7 100644 --- a/apps/sharebymail/lib/Capabilities.php +++ b/apps/sharebymail/lib/Capabilities.php @@ -45,6 +45,27 @@ public function __construct(IManager $manager, $this->settingsManager = $settingsManager; } + /** + * @return array{ + * files_sharing: array{ + * sharebymail: array{ + * enabled: bool, + * send_password_by_mail: bool, + * upload_files_drop: array{ + * enabled: bool, + * }, + * password: array{ + * enabled: bool, + * enforced: bool, + * }, + * expire_date: array{ + * enabled: bool, + * enforced: bool, + * }, + * } + * } + * } + */ public function getCapabilities(): array { return [ 'files_sharing' => diff --git a/apps/sharebymail/openapi.json b/apps/sharebymail/openapi.json new file mode 100644 index 000000000000..3c98f9e43ac8 --- /dev/null +++ b/apps/sharebymail/openapi.json @@ -0,0 +1,102 @@ +{ + "openapi": "3.0.3", + "info": { + "title": "sharebymail", + "version": "0.0.1", + "description": "Share provider which allows you to share files by mail", + "license": { + "name": "agpl" + } + }, + "components": { + "securitySchemes": { + "basic_auth": { + "type": "http", + "scheme": "basic" + }, + "bearer_auth": { + "type": "http", + "scheme": "bearer" + } + }, + "schemas": { + "Capabilities": { + "type": "object", + "required": [ + "files_sharing" + ], + "properties": { + "files_sharing": { + "type": "object", + "required": [ + "sharebymail" + ], + "properties": { + "sharebymail": { + "type": "object", + "required": [ + "enabled", + "send_password_by_mail", + "upload_files_drop", + "password", + "expire_date" + ], + "properties": { + "enabled": { + "type": "boolean" + }, + "send_password_by_mail": { + "type": "boolean" + }, + "upload_files_drop": { + "type": "object", + "required": [ + "enabled" + ], + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "password": { + "type": "object", + "required": [ + "enabled", + "enforced" + ], + "properties": { + "enabled": { + "type": "boolean" + }, + "enforced": { + "type": "boolean" + } + } + }, + "expire_date": { + "type": "object", + "required": [ + "enabled", + "enforced" + ], + "properties": { + "enabled": { + "type": "boolean" + }, + "enforced": { + "type": "boolean" + } + } + } + } + } + } + } + } + } + } + }, + "paths": {}, + "tags": [] +} \ No newline at end of file