openapi.json 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. {
  2. "openapi": "3.0.3",
  3. "info": {
  4. "title": "sharebymail",
  5. "version": "0.0.1",
  6. "description": "Share provider which allows you to share files by mail",
  7. "license": {
  8. "name": "agpl"
  9. }
  10. },
  11. "components": {
  12. "securitySchemes": {
  13. "basic_auth": {
  14. "type": "http",
  15. "scheme": "basic"
  16. },
  17. "bearer_auth": {
  18. "type": "http",
  19. "scheme": "bearer"
  20. }
  21. },
  22. "schemas": {
  23. "Capabilities": {
  24. "oneOf": [
  25. {
  26. "type": "object",
  27. "required": [
  28. "files_sharing"
  29. ],
  30. "properties": {
  31. "files_sharing": {
  32. "type": "object",
  33. "required": [
  34. "sharebymail"
  35. ],
  36. "properties": {
  37. "sharebymail": {
  38. "type": "object",
  39. "required": [
  40. "enabled",
  41. "send_password_by_mail",
  42. "upload_files_drop",
  43. "password",
  44. "expire_date"
  45. ],
  46. "properties": {
  47. "enabled": {
  48. "type": "boolean"
  49. },
  50. "send_password_by_mail": {
  51. "type": "boolean"
  52. },
  53. "upload_files_drop": {
  54. "type": "object",
  55. "required": [
  56. "enabled"
  57. ],
  58. "properties": {
  59. "enabled": {
  60. "type": "boolean"
  61. }
  62. }
  63. },
  64. "password": {
  65. "type": "object",
  66. "required": [
  67. "enabled",
  68. "enforced"
  69. ],
  70. "properties": {
  71. "enabled": {
  72. "type": "boolean"
  73. },
  74. "enforced": {
  75. "type": "boolean"
  76. }
  77. }
  78. },
  79. "expire_date": {
  80. "type": "object",
  81. "required": [
  82. "enabled",
  83. "enforced"
  84. ],
  85. "properties": {
  86. "enabled": {
  87. "type": "boolean"
  88. },
  89. "enforced": {
  90. "type": "boolean"
  91. }
  92. }
  93. }
  94. }
  95. }
  96. }
  97. }
  98. }
  99. },
  100. {
  101. "type": "array",
  102. "maxLength": 0
  103. }
  104. ]
  105. }
  106. }
  107. },
  108. "paths": {},
  109. "tags": []
  110. }