docspace-api-sdk 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1122) hide show
  1. checksums.yaml +7 -0
  2. data/AUTHORS.md +3 -0
  3. data/CHANGELOG.md +50 -0
  4. data/LICENSE +201 -0
  5. data/README.md +5310 -0
  6. data/lib/docspace-api-sdk/api/AI/agents-api.rb +605 -0
  7. data/lib/docspace-api-sdk/api/AI/ai-api.rb +517 -0
  8. data/lib/docspace-api-sdk/api/AI/assignments-api.rb +573 -0
  9. data/lib/docspace-api-sdk/api/AI/attachments-api.rb +585 -0
  10. data/lib/docspace-api-sdk/api/AI/context-api.rb +233 -0
  11. data/lib/docspace-api-sdk/api/AI/editor-tools-api.rb +156 -0
  12. data/lib/docspace-api-sdk/api/AI/export-api.rb +97 -0
  13. data/lib/docspace-api-sdk/api/AI/open-ai-passthrough-api.rb +179 -0
  14. data/lib/docspace-api-sdk/api/AI/preferences-api.rb +555 -0
  15. data/lib/docspace-api-sdk/api/AI/profiles-api.rb +568 -0
  16. data/lib/docspace-api-sdk/api/AI/prompts-api.rb +899 -0
  17. data/lib/docspace-api-sdk/api/AI/settings-api.rb +473 -0
  18. data/lib/docspace-api-sdk/api/AI/threads-api.rb +1005 -0
  19. data/lib/docspace-api-sdk/api/AI/tools-api.rb +923 -0
  20. data/lib/docspace-api-sdk/api/AI/vectorization-api.rb +97 -0
  21. data/lib/docspace-api-sdk/api/AI/web-search-api.rb +571 -0
  22. data/lib/docspace-api-sdk/api/ApiKeys/api-keys-api.rb +411 -0
  23. data/lib/docspace-api-sdk/api/Apps/apps-api.rb +368 -0
  24. data/lib/docspace-api-sdk/api/Authentication/authentication-api.rb +481 -0
  25. data/lib/docspace-api-sdk/api/Backup/backup-api.rb +916 -0
  26. data/lib/docspace-api-sdk/api/Capabilities/capabilities-api.rb +86 -0
  27. data/lib/docspace-api-sdk/api/Docs/docs-api.rb +159 -0
  28. data/lib/docspace-api-sdk/api/Files/files-api.rb +3705 -0
  29. data/lib/docspace-api-sdk/api/Files/folders-api.rb +2611 -0
  30. data/lib/docspace-api-sdk/api/Files/metadata-api.rb +1465 -0
  31. data/lib/docspace-api-sdk/api/Files/operations-api.rb +1722 -0
  32. data/lib/docspace-api-sdk/api/Files/quota-api.rb +159 -0
  33. data/lib/docspace-api-sdk/api/Files/settings-api.rb +1973 -0
  34. data/lib/docspace-api-sdk/api/Files/sharing-api.rb +1126 -0
  35. data/lib/docspace-api-sdk/api/Files/third-party-integration-api.rb +522 -0
  36. data/lib/docspace-api-sdk/api/Group/group-api.rb +830 -0
  37. data/lib/docspace-api-sdk/api/Group/search-api.rb +282 -0
  38. data/lib/docspace-api-sdk/api/Migration/migration-api.rb +519 -0
  39. data/lib/docspace-api-sdk/api/OAuth20/authorization-api.rb +262 -0
  40. data/lib/docspace-api-sdk/api/OAuth20/client-management-api.rb +582 -0
  41. data/lib/docspace-api-sdk/api/OAuth20/client-querying-api.rb +467 -0
  42. data/lib/docspace-api-sdk/api/OAuth20/discovery-api.rb +84 -0
  43. data/lib/docspace-api-sdk/api/OAuth20/scope-management-api.rb +86 -0
  44. data/lib/docspace-api-sdk/api/People/email-api.rb +169 -0
  45. data/lib/docspace-api-sdk/api/People/guests-api.rb +159 -0
  46. data/lib/docspace-api-sdk/api/People/password-api.rb +169 -0
  47. data/lib/docspace-api-sdk/api/People/photos-api.rb +389 -0
  48. data/lib/docspace-api-sdk/api/People/profiles-api.rb +986 -0
  49. data/lib/docspace-api-sdk/api/People/quota-api.rb +159 -0
  50. data/lib/docspace-api-sdk/api/People/search-api.rb +1150 -0
  51. data/lib/docspace-api-sdk/api/People/theme-api.rb +152 -0
  52. data/lib/docspace-api-sdk/api/People/third-party-accounts-api.rb +292 -0
  53. data/lib/docspace-api-sdk/api/People/user-data-api.rb +663 -0
  54. data/lib/docspace-api-sdk/api/People/user-status-api.rb +273 -0
  55. data/lib/docspace-api-sdk/api/People/user-type-api.rb +300 -0
  56. data/lib/docspace-api-sdk/api/Portal/guests-api.rb +92 -0
  57. data/lib/docspace-api-sdk/api/Portal/payment-api.rb +2571 -0
  58. data/lib/docspace-api-sdk/api/Portal/quota-api.rb +328 -0
  59. data/lib/docspace-api-sdk/api/Portal/settings-api.rb +502 -0
  60. data/lib/docspace-api-sdk/api/Portal/users-api.rb +611 -0
  61. data/lib/docspace-api-sdk/api/Rooms/groups-api.rb +442 -0
  62. data/lib/docspace-api-sdk/api/Rooms/privacy-room-api.rb +348 -0
  63. data/lib/docspace-api-sdk/api/Rooms/rooms-api.rb +3121 -0
  64. data/lib/docspace-api-sdk/api/Security/access-to-dev-tools-api.rb +93 -0
  65. data/lib/docspace-api-sdk/api/Security/active-connections-api.rb +334 -0
  66. data/lib/docspace-api-sdk/api/Security/audit-trail-data-api.rb +618 -0
  67. data/lib/docspace-api-sdk/api/Security/banners-visibility-api.rb +93 -0
  68. data/lib/docspace-api-sdk/api/Security/csp-api.rb +152 -0
  69. data/lib/docspace-api-sdk/api/Security/firebase-api.rb +159 -0
  70. data/lib/docspace-api-sdk/api/Security/login-history-api.rb +357 -0
  71. data/lib/docspace-api-sdk/api/Security/o-auth2-api.rb +86 -0
  72. data/lib/docspace-api-sdk/api/Security/smtp-settings-api.rb +329 -0
  73. data/lib/docspace-api-sdk/api/Settings/access-to-dev-tools-api.rb +86 -0
  74. data/lib/docspace-api-sdk/api/Settings/authorization-api.rb +218 -0
  75. data/lib/docspace-api-sdk/api/Settings/banners-visibility-api.rb +86 -0
  76. data/lib/docspace-api-sdk/api/Settings/common-settings-api.rb +1398 -0
  77. data/lib/docspace-api-sdk/api/Settings/cookies-api.rb +152 -0
  78. data/lib/docspace-api-sdk/api/Settings/docs-cloud-api.rb +771 -0
  79. data/lib/docspace-api-sdk/api/Settings/encryption-api.rb +211 -0
  80. data/lib/docspace-api-sdk/api/Settings/greeting-settings-api.rb +270 -0
  81. data/lib/docspace-api-sdk/api/Settings/ip-restrictions-api.rb +277 -0
  82. data/lib/docspace-api-sdk/api/Settings/license-api.rb +275 -0
  83. data/lib/docspace-api-sdk/api/Settings/login-settings-api.rb +211 -0
  84. data/lib/docspace-api-sdk/api/Settings/messages-api.rb +225 -0
  85. data/lib/docspace-api-sdk/api/Settings/notifications-api.rb +342 -0
  86. data/lib/docspace-api-sdk/api/Settings/owner-api.rb +159 -0
  87. data/lib/docspace-api-sdk/api/Settings/quota-api.rb +284 -0
  88. data/lib/docspace-api-sdk/api/Settings/rebranding-api.rb +1112 -0
  89. data/lib/docspace-api-sdk/api/Settings/security-api.rb +674 -0
  90. data/lib/docspace-api-sdk/api/Settings/sso-api.rb +329 -0
  91. data/lib/docspace-api-sdk/api/Settings/statistics-api.rb +92 -0
  92. data/lib/docspace-api-sdk/api/Settings/storage-api.rb +575 -0
  93. data/lib/docspace-api-sdk/api/Settings/telegram-api.rb +204 -0
  94. data/lib/docspace-api-sdk/api/Settings/tfa-settings-api.rb +586 -0
  95. data/lib/docspace-api-sdk/api/Settings/webhooks-api.rb +636 -0
  96. data/lib/docspace-api-sdk/api/Settings/webplugins-api.rb +422 -0
  97. data/lib/docspace-api-sdk/api/ThirdParty/third-party-api.rb +92 -0
  98. data/lib/docspace-api-sdk/api-client.rb +407 -0
  99. data/lib/docspace-api-sdk/api-error.rb +63 -0
  100. data/lib/docspace-api-sdk/api-model-base.rb +91 -0
  101. data/lib/docspace-api-sdk/configuration.rb +367 -0
  102. data/lib/docspace-api-sdk/models/access-request-key-dto.rb +173 -0
  103. data/lib/docspace-api-sdk/models/account-entry-array-wrapper.rb +196 -0
  104. data/lib/docspace-api-sdk/models/account-entry-dto.rb +108 -0
  105. data/lib/docspace-api-sdk/models/account-info-array-wrapper.rb +196 -0
  106. data/lib/docspace-api-sdk/models/account-info-dto.rb +195 -0
  107. data/lib/docspace-api-sdk/models/account-login-type.rb +44 -0
  108. data/lib/docspace-api-sdk/models/account-search-area.rb +44 -0
  109. data/lib/docspace-api-sdk/models/ace-short-array-wrapper.rb +196 -0
  110. data/lib/docspace-api-sdk/models/ace-short-dto.rb +174 -0
  111. data/lib/docspace-api-sdk/models/action-link-action-request.rb +212 -0
  112. data/lib/docspace-api-sdk/models/action-link-request.rb +152 -0
  113. data/lib/docspace-api-sdk/models/action-type.rb +61 -0
  114. data/lib/docspace-api-sdk/models/active-connections-dto.rb +182 -0
  115. data/lib/docspace-api-sdk/models/active-connections-item-dto.rb +309 -0
  116. data/lib/docspace-api-sdk/models/active-connections-wrapper.rb +194 -0
  117. data/lib/docspace-api-sdk/models/active-service-array-wrapper.rb +196 -0
  118. data/lib/docspace-api-sdk/models/active-service-dto.rb +207 -0
  119. data/lib/docspace-api-sdk/models/additional-resources-dto.rb +212 -0
  120. data/lib/docspace-api-sdk/models/additional-resources-wrapper.rb +194 -0
  121. data/lib/docspace-api-sdk/models/additional-white-label-settings-dto.rb +331 -0
  122. data/lib/docspace-api-sdk/models/additional-white-label-settings-request-dto.rb +152 -0
  123. data/lib/docspace-api-sdk/models/additional-white-label-settings-wrapper.rb +194 -0
  124. data/lib/docspace-api-sdk/models/admin-message-base-settings-request-dto.rb +190 -0
  125. data/lib/docspace-api-sdk/models/admin-message-settings-request-dto.rb +270 -0
  126. data/lib/docspace-api-sdk/models/ai-action-args-prompt.rb +218 -0
  127. data/lib/docspace-api-sdk/models/ai-action-args.rb +204 -0
  128. data/lib/docspace-api-sdk/models/ai-action-type.rb +51 -0
  129. data/lib/docspace-api-sdk/models/ai-agent-new-items-dto.rb +184 -0
  130. data/lib/docspace-api-sdk/models/ai-agents-create-request.rb +329 -0
  131. data/lib/docspace-api-sdk/models/ai-agents-delete-request.rb +151 -0
  132. data/lib/docspace-api-sdk/models/ai-agents-get200-response-all-of-response.rb +151 -0
  133. data/lib/docspace-api-sdk/models/ai-agents-get200-response.rb +199 -0
  134. data/lib/docspace-api-sdk/models/ai-agents-reset-quota-request.rb +170 -0
  135. data/lib/docspace-api-sdk/models/ai-agents-update-quota-request-room-ids-inner.rb +107 -0
  136. data/lib/docspace-api-sdk/models/ai-agents-update-quota-request.rb +197 -0
  137. data/lib/docspace-api-sdk/models/ai-agents-update-request.rb +283 -0
  138. data/lib/docspace-api-sdk/models/ai-api-date-time.rb +162 -0
  139. data/lib/docspace-api-sdk/models/ai-approve-tool-call-request.rb +301 -0
  140. data/lib/docspace-api-sdk/models/ai-assignment-mutation-result.rb +179 -0
  141. data/lib/docspace-api-sdk/models/ai-assignments-assign-request.rb +217 -0
  142. data/lib/docspace-api-sdk/models/ai-assignments-cascade-profile-delete-request.rb +168 -0
  143. data/lib/docspace-api-sdk/models/ai-attachment-form-keys-inner.rb +193 -0
  144. data/lib/docspace-api-sdk/models/ai-attachment.rb +388 -0
  145. data/lib/docspace-api-sdk/models/ai-attachments-link-to-message-request.rb +224 -0
  146. data/lib/docspace-api-sdk/models/ai-attachments-save-file-request-input.rb +233 -0
  147. data/lib/docspace-api-sdk/models/ai-attachments-save-file-request.rb +177 -0
  148. data/lib/docspace-api-sdk/models/ai-attachments-save-files-many-request.rb +178 -0
  149. data/lib/docspace-api-sdk/models/ai-builtin-provider-type.rb +58 -0
  150. data/lib/docspace-api-sdk/models/ai-bulk-assignment-result-errors-inner.rb +215 -0
  151. data/lib/docspace-api-sdk/models/ai-bulk-assignment-result.rb +181 -0
  152. data/lib/docspace-api-sdk/models/ai-chat-event.rb +273 -0
  153. data/lib/docspace-api-sdk/models/ai-chat-price-dto.rb +195 -0
  154. data/lib/docspace-api-sdk/models/ai-chat-settings-dto.rb +153 -0
  155. data/lib/docspace-api-sdk/models/ai-chat-tool-permission-mode.rb +44 -0
  156. data/lib/docspace-api-sdk/models/ai-chat-tool-prefs-scope.rb +43 -0
  157. data/lib/docspace-api-sdk/models/ai-config-dto.rb +152 -0
  158. data/lib/docspace-api-sdk/models/ai-create-profile-input.rb +374 -0
  159. data/lib/docspace-api-sdk/models/ai-create-prompt-input.rb +207 -0
  160. data/lib/docspace-api-sdk/models/ai-distributed-task-status.rb +46 -0
  161. data/lib/docspace-api-sdk/models/ai-editor-tools-call-request.rb +190 -0
  162. data/lib/docspace-api-sdk/models/ai-editor-tools-call200-response.rb +168 -0
  163. data/lib/docspace-api-sdk/models/ai-editor-tools-list200-response-tools-inner.rb +251 -0
  164. data/lib/docspace-api-sdk/models/ai-editor-tools-list200-response.rb +170 -0
  165. data/lib/docspace-api-sdk/models/ai-embedding-price-dto.rb +152 -0
  166. data/lib/docspace-api-sdk/models/ai-embedding-provider-type.rb +45 -0
  167. data/lib/docspace-api-sdk/models/ai-employee-dto.rb +249 -0
  168. data/lib/docspace-api-sdk/models/ai-entry-pricing-dto-ai-chat-price-dto.rb +234 -0
  169. data/lib/docspace-api-sdk/models/ai-entry-pricing-dto-ai-embedding-price-dto.rb +234 -0
  170. data/lib/docspace-api-sdk/models/ai-entry-pricing-dto-ai-image-price-dto.rb +234 -0
  171. data/lib/docspace-api-sdk/models/ai-entry-pricing-dto-decimal.rb +234 -0
  172. data/lib/docspace-api-sdk/models/ai-error-code.rb +45 -0
  173. data/lib/docspace-api-sdk/models/ai-error-data.rb +230 -0
  174. data/lib/docspace-api-sdk/models/ai-error-response.rb +169 -0
  175. data/lib/docspace-api-sdk/models/ai-export-text-to-docx-request-folder-id.rb +107 -0
  176. data/lib/docspace-api-sdk/models/ai-export-text-to-docx-request.rb +221 -0
  177. data/lib/docspace-api-sdk/models/ai-export-text-to-docx202-response.rb +168 -0
  178. data/lib/docspace-api-sdk/models/ai-file-entry-base-dto.rb +391 -0
  179. data/lib/docspace-api-sdk/models/ai-file-entry-dto-all-of-available-share-rights.rb +197 -0
  180. data/lib/docspace-api-sdk/models/ai-file-entry-dto-all-of-security.rb +565 -0
  181. data/lib/docspace-api-sdk/models/ai-file-entry-dto-all-of-share-settings.rb +187 -0
  182. data/lib/docspace-api-sdk/models/ai-file-entry-dto.rb +562 -0
  183. data/lib/docspace-api-sdk/models/ai-file-entry-type.rb +43 -0
  184. data/lib/docspace-api-sdk/models/ai-file-operation-dto.rb +331 -0
  185. data/lib/docspace-api-sdk/models/ai-file-operation-type.rb +50 -0
  186. data/lib/docspace-api-sdk/models/ai-file-operation-wrapper.rb +194 -0
  187. data/lib/docspace-api-sdk/models/ai-file-share.rb +53 -0
  188. data/lib/docspace-api-sdk/models/ai-folder-array-wrapper.rb +196 -0
  189. data/lib/docspace-api-sdk/models/ai-folder-content-dto.rb +247 -0
  190. data/lib/docspace-api-sdk/models/ai-folder-content-wrapper.rb +194 -0
  191. data/lib/docspace-api-sdk/models/ai-folder-dto.rb +838 -0
  192. data/lib/docspace-api-sdk/models/ai-folder-mutation-result.rb +189 -0
  193. data/lib/docspace-api-sdk/models/ai-folder-type.rb +72 -0
  194. data/lib/docspace-api-sdk/models/ai-folder-wrapper.rb +194 -0
  195. data/lib/docspace-api-sdk/models/ai-image-price-dto.rb +172 -0
  196. data/lib/docspace-api-sdk/models/ai-import-error.rb +247 -0
  197. data/lib/docspace-api-sdk/models/ai-import-mode.rb +43 -0
  198. data/lib/docspace-api-sdk/models/ai-import-result-imported.rb +194 -0
  199. data/lib/docspace-api-sdk/models/ai-import-result.rb +190 -0
  200. data/lib/docspace-api-sdk/models/ai-logo-cover-dto.rb +168 -0
  201. data/lib/docspace-api-sdk/models/ai-logo-dto.rb +215 -0
  202. data/lib/docspace-api-sdk/models/ai-mcp-item.rb +263 -0
  203. data/lib/docspace-api-sdk/models/ai-metadata-match-dto.rb +186 -0
  204. data/lib/docspace-api-sdk/models/ai-model.rb +263 -0
  205. data/lib/docspace-api-sdk/models/ai-new-items-agent-new-items-array-wrapper.rb +196 -0
  206. data/lib/docspace-api-sdk/models/ai-new-items-dto-agent-new-items-dto.rb +184 -0
  207. data/lib/docspace-api-sdk/models/ai-open-ai-chat-completion-chunk.rb +303 -0
  208. data/lib/docspace-api-sdk/models/ai-open-ai-choice-delta.rb +209 -0
  209. data/lib/docspace-api-sdk/models/ai-open-ai-chunk-choice.rb +231 -0
  210. data/lib/docspace-api-sdk/models/ai-open-ai-finish-reason.rb +45 -0
  211. data/lib/docspace-api-sdk/models/ai-open-ai-stream-chunk.rb +107 -0
  212. data/lib/docspace-api-sdk/models/ai-open-ai-stream-error-error.rb +218 -0
  213. data/lib/docspace-api-sdk/models/ai-open-ai-stream-error.rb +168 -0
  214. data/lib/docspace-api-sdk/models/ai-open-ai-tool-call-delta-function.rb +160 -0
  215. data/lib/docspace-api-sdk/models/ai-open-ai-tool-call-delta.rb +232 -0
  216. data/lib/docspace-api-sdk/models/ai-open-or-create-result.rb +225 -0
  217. data/lib/docspace-api-sdk/models/ai-openai-chat-completions403-response-error.rb +217 -0
  218. data/lib/docspace-api-sdk/models/ai-openai-chat-completions403-response.rb +167 -0
  219. data/lib/docspace-api-sdk/models/ai-openai-images-generations403-response-error.rb +217 -0
  220. data/lib/docspace-api-sdk/models/ai-openai-images-generations403-response.rb +167 -0
  221. data/lib/docspace-api-sdk/models/ai-preferences-set-deep-mode-request.rb +177 -0
  222. data/lib/docspace-api-sdk/models/ai-preferences-set-reasoning-level-request.rb +199 -0
  223. data/lib/docspace-api-sdk/models/ai-preferences-set-tool-permission-mode-request.rb +199 -0
  224. data/lib/docspace-api-sdk/models/ai-price-currency-dto.rb +168 -0
  225. data/lib/docspace-api-sdk/models/ai-prices-dto.rb +229 -0
  226. data/lib/docspace-api-sdk/models/ai-prices-wrapper.rb +194 -0
  227. data/lib/docspace-api-sdk/models/ai-profile-mutation-result.rb +189 -0
  228. data/lib/docspace-api-sdk/models/ai-profile.rb +411 -0
  229. data/lib/docspace-api-sdk/models/ai-profiles-create400-response.rb +106 -0
  230. data/lib/docspace-api-sdk/models/ai-profiles-get-by-id200-response.rb +388 -0
  231. data/lib/docspace-api-sdk/models/ai-profiles-list-provider-models-request.rb +205 -0
  232. data/lib/docspace-api-sdk/models/ai-profiles-list-provider-models400-response-any-of.rb +195 -0
  233. data/lib/docspace-api-sdk/models/ai-profiles-list-provider-models400-response.rb +106 -0
  234. data/lib/docspace-api-sdk/models/ai-profiles-test-connection200-response-any-of.rb +150 -0
  235. data/lib/docspace-api-sdk/models/ai-profiles-test-connection200-response.rb +106 -0
  236. data/lib/docspace-api-sdk/models/ai-prompt-bundle.rb +251 -0
  237. data/lib/docspace-api-sdk/models/ai-prompt-folder.rb +250 -0
  238. data/lib/docspace-api-sdk/models/ai-prompt-mutation-result.rb +189 -0
  239. data/lib/docspace-api-sdk/models/ai-prompt.rb +287 -0
  240. data/lib/docspace-api-sdk/models/ai-prompts-import-bundle-request-options.rb +173 -0
  241. data/lib/docspace-api-sdk/models/ai-prompts-import-bundle-request.rb +177 -0
  242. data/lib/docspace-api-sdk/models/ai-prompts-move-request.rb +181 -0
  243. data/lib/docspace-api-sdk/models/ai-prompts-rename-folder-request.rb +195 -0
  244. data/lib/docspace-api-sdk/models/ai-prompts-update-request-updates.rb +170 -0
  245. data/lib/docspace-api-sdk/models/ai-prompts-update-request.rb +194 -0
  246. data/lib/docspace-api-sdk/models/ai-provider-type.rb +107 -0
  247. data/lib/docspace-api-sdk/models/ai-provider.rb +233 -0
  248. data/lib/docspace-api-sdk/models/ai-reasoning-depth.rb +45 -0
  249. data/lib/docspace-api-sdk/models/ai-reasoning-level.rb +46 -0
  250. data/lib/docspace-api-sdk/models/ai-reasoning-support.rb +257 -0
  251. data/lib/docspace-api-sdk/models/ai-regenerate-stream-request.rb +198 -0
  252. data/lib/docspace-api-sdk/models/ai-resolved-assignment.rb +196 -0
  253. data/lib/docspace-api-sdk/models/ai-room-data-lifetime-dto.rb +230 -0
  254. data/lib/docspace-api-sdk/models/ai-room-data-lifetime-period.rb +44 -0
  255. data/lib/docspace-api-sdk/models/ai-room-type.rb +47 -0
  256. data/lib/docspace-api-sdk/models/ai-send-custom-request.rb +231 -0
  257. data/lib/docspace-api-sdk/models/ai-send-request.rb +237 -0
  258. data/lib/docspace-api-sdk/models/ai-send-stream-body.rb +209 -0
  259. data/lib/docspace-api-sdk/models/ai-settings-dto.rb +238 -0
  260. data/lib/docspace-api-sdk/models/ai-settings-wrapper.rb +194 -0
  261. data/lib/docspace-api-sdk/models/ai-success-response.rb +169 -0
  262. data/lib/docspace-api-sdk/models/ai-thread-message-like-content-any-of-inner.rb +176 -0
  263. data/lib/docspace-api-sdk/models/ai-thread-message-like-content.rb +107 -0
  264. data/lib/docspace-api-sdk/models/ai-thread-message-like-status.rb +168 -0
  265. data/lib/docspace-api-sdk/models/ai-thread-message-like.rb +270 -0
  266. data/lib/docspace-api-sdk/models/ai-thread.rb +219 -0
  267. data/lib/docspace-api-sdk/models/ai-threads-append-user-message-request.rb +203 -0
  268. data/lib/docspace-api-sdk/models/ai-threads-append-user-message200-response.rb +168 -0
  269. data/lib/docspace-api-sdk/models/ai-threads-create-request.rb +188 -0
  270. data/lib/docspace-api-sdk/models/ai-threads-open-or-create-request-entity-meta.rb +160 -0
  271. data/lib/docspace-api-sdk/models/ai-threads-open-or-create-request.rb +249 -0
  272. data/lib/docspace-api-sdk/models/ai-threads-regenerate-title-request.rb +203 -0
  273. data/lib/docspace-api-sdk/models/ai-threads-regenerate-title200-response.rb +168 -0
  274. data/lib/docspace-api-sdk/models/ai-threads-rename-request.rb +194 -0
  275. data/lib/docspace-api-sdk/models/ai-threads-touch-request.rb +176 -0
  276. data/lib/docspace-api-sdk/models/ai-threads-update-message-request.rb +194 -0
  277. data/lib/docspace-api-sdk/models/ai-tool-annotations.rb +187 -0
  278. data/lib/docspace-api-sdk/models/ai-tool-call-data.rb +280 -0
  279. data/lib/docspace-api-sdk/models/ai-tool-permission-mode.rb +44 -0
  280. data/lib/docspace-api-sdk/models/ai-tools-add-custom-server-request.rb +204 -0
  281. data/lib/docspace-api-sdk/models/ai-tools-bulk-result-errors-inner.rb +193 -0
  282. data/lib/docspace-api-sdk/models/ai-tools-bulk-result.rb +181 -0
  283. data/lib/docspace-api-sdk/models/ai-tools-list-system-tools200-response.rb +228 -0
  284. data/lib/docspace-api-sdk/models/ai-tools-mutation-result.rb +179 -0
  285. data/lib/docspace-api-sdk/models/ai-tools-remove-custom-server-request.rb +176 -0
  286. data/lib/docspace-api-sdk/models/ai-tools-replace-all-custom-servers-request.rb +179 -0
  287. data/lib/docspace-api-sdk/models/ai-tools-set-allow-always-request.rb +229 -0
  288. data/lib/docspace-api-sdk/models/ai-tools-set-disabled-request.rb +237 -0
  289. data/lib/docspace-api-sdk/models/ai-tools-update-custom-server-request.rb +203 -0
  290. data/lib/docspace-api-sdk/models/ai-user-settings-dto.rb +184 -0
  291. data/lib/docspace-api-sdk/models/ai-user-settings-wrapper.rb +194 -0
  292. data/lib/docspace-api-sdk/models/ai-vectorization-settings-dto.rb +184 -0
  293. data/lib/docspace-api-sdk/models/ai-vectorization-settings-wrapper.rb +194 -0
  294. data/lib/docspace-api-sdk/models/ai-vectorization-start-task-request.rb +170 -0
  295. data/lib/docspace-api-sdk/models/ai-vectorization-start-task200-response.rb +222 -0
  296. data/lib/docspace-api-sdk/models/ai-watermark-additions.rb +46 -0
  297. data/lib/docspace-api-sdk/models/ai-watermark-dto.rb +321 -0
  298. data/lib/docspace-api-sdk/models/ai-web-search-config.rb +211 -0
  299. data/lib/docspace-api-sdk/models/ai-web-search-configure-request.rb +176 -0
  300. data/lib/docspace-api-sdk/models/ai-web-search-configure400-response.rb +106 -0
  301. data/lib/docspace-api-sdk/models/ai-web-search-mutation-result.rb +189 -0
  302. data/lib/docspace-api-sdk/models/ai-web-search-set-active-config-request.rb +176 -0
  303. data/lib/docspace-api-sdk/models/amazon-s3-region-array-wrapper.rb +196 -0
  304. data/lib/docspace-api-sdk/models/amazon-s3-region-dto.rb +208 -0
  305. data/lib/docspace-api-sdk/models/anonymous-config-dto.rb +169 -0
  306. data/lib/docspace-api-sdk/models/api-date-time.rb +162 -0
  307. data/lib/docspace-api-sdk/models/api-key-response-array-wrapper.rb +196 -0
  308. data/lib/docspace-api-sdk/models/api-key-response-dto.rb +288 -0
  309. data/lib/docspace-api-sdk/models/api-key-response-wrapper.rb +194 -0
  310. data/lib/docspace-api-sdk/models/app-array-wrapper.rb +196 -0
  311. data/lib/docspace-api-sdk/models/app-dto.rb +173 -0
  312. data/lib/docspace-api-sdk/models/app-wrapper.rb +194 -0
  313. data/lib/docspace-api-sdk/models/apply-filter-option.rb +44 -0
  314. data/lib/docspace-api-sdk/models/archive-room-request.rb +152 -0
  315. data/lib/docspace-api-sdk/models/array-array-wrapper.rb +196 -0
  316. data/lib/docspace-api-sdk/models/assign-metadata-templates.rb +199 -0
  317. data/lib/docspace-api-sdk/models/audit-event-array-wrapper.rb +196 -0
  318. data/lib/docspace-api-sdk/models/audit-event-dto.rb +359 -0
  319. data/lib/docspace-api-sdk/models/audit-report-format.rb +43 -0
  320. data/lib/docspace-api-sdk/models/audit-trail-action-dto.rb +175 -0
  321. data/lib/docspace-api-sdk/models/audit-trail-module-dto.rb +166 -0
  322. data/lib/docspace-api-sdk/models/audit-trail-product-array-wrapper.rb +196 -0
  323. data/lib/docspace-api-sdk/models/audit-trail-product-dto.rb +166 -0
  324. data/lib/docspace-api-sdk/models/audit-trail-types-dto.rb +207 -0
  325. data/lib/docspace-api-sdk/models/audit-trail-types-wrapper.rb +194 -0
  326. data/lib/docspace-api-sdk/models/auth-key-dto.rb +249 -0
  327. data/lib/docspace-api-sdk/models/auth-key-request.rb +249 -0
  328. data/lib/docspace-api-sdk/models/auth-request-dto.rb +293 -0
  329. data/lib/docspace-api-sdk/models/auth-service-array-wrapper.rb +196 -0
  330. data/lib/docspace-api-sdk/models/auth-service-dto.rb +219 -0
  331. data/lib/docspace-api-sdk/models/auth-with-code-request-dto.rb +302 -0
  332. data/lib/docspace-api-sdk/models/authentication-token-dto.rb +216 -0
  333. data/lib/docspace-api-sdk/models/authentication-token-wrapper.rb +194 -0
  334. data/lib/docspace-api-sdk/models/auto-clean-up-data-dto.rb +184 -0
  335. data/lib/docspace-api-sdk/models/auto-clean-up-data-wrapper.rb +194 -0
  336. data/lib/docspace-api-sdk/models/auto-cleanup-request-dto.rb +184 -0
  337. data/lib/docspace-api-sdk/models/backup-cron-request.rb +195 -0
  338. data/lib/docspace-api-sdk/models/backup-history-record-array-wrapper.rb +196 -0
  339. data/lib/docspace-api-sdk/models/backup-history-record-dto.rb +285 -0
  340. data/lib/docspace-api-sdk/models/backup-period.rb +44 -0
  341. data/lib/docspace-api-sdk/models/backup-progress-dto.rb +258 -0
  342. data/lib/docspace-api-sdk/models/backup-progress-enum.rb +44 -0
  343. data/lib/docspace-api-sdk/models/backup-progress-wrapper.rb +194 -0
  344. data/lib/docspace-api-sdk/models/backup-service-state-dto.rb +152 -0
  345. data/lib/docspace-api-sdk/models/backup-service-state-wrapper.rb +194 -0
  346. data/lib/docspace-api-sdk/models/backup-storage-type.rb +47 -0
  347. data/lib/docspace-api-sdk/models/backups-count-result-dto.rb +162 -0
  348. data/lib/docspace-api-sdk/models/backups-count-result-wrapper.rb +194 -0
  349. data/lib/docspace-api-sdk/models/balance-dto.rb +207 -0
  350. data/lib/docspace-api-sdk/models/balance-wrapper.rb +194 -0
  351. data/lib/docspace-api-sdk/models/base-batch-request-dto-all-of-file-ids.rb +106 -0
  352. data/lib/docspace-api-sdk/models/base-batch-request-dto-all-of-folder-ids.rb +106 -0
  353. data/lib/docspace-api-sdk/models/base-batch-request-dto.rb +185 -0
  354. data/lib/docspace-api-sdk/models/batch-request-dto-all-of-dest-folder-id.rb +108 -0
  355. data/lib/docspace-api-sdk/models/batch-request-dto-all-of-file-ids.rb +106 -0
  356. data/lib/docspace-api-sdk/models/batch-request-dto-all-of-folder-ids.rb +106 -0
  357. data/lib/docspace-api-sdk/models/batch-request-dto.rb +256 -0
  358. data/lib/docspace-api-sdk/models/batch-tags-request-dto.rb +171 -0
  359. data/lib/docspace-api-sdk/models/boolean-wrapper.rb +194 -0
  360. data/lib/docspace-api-sdk/models/capabilities-dto.rb +275 -0
  361. data/lib/docspace-api-sdk/models/capabilities-wrapper.rb +194 -0
  362. data/lib/docspace-api-sdk/models/change-client-activation-request.rb +169 -0
  363. data/lib/docspace-api-sdk/models/change-email-request.rb +188 -0
  364. data/lib/docspace-api-sdk/models/change-history-request.rb +179 -0
  365. data/lib/docspace-api-sdk/models/change-owner-request-dto.rb +195 -0
  366. data/lib/docspace-api-sdk/models/change-password-request.rb +164 -0
  367. data/lib/docspace-api-sdk/models/change-wallet-service-state-request-dto.rb +184 -0
  368. data/lib/docspace-api-sdk/models/chat-settings-dto.rb +153 -0
  369. data/lib/docspace-api-sdk/models/chat-settings.rb +184 -0
  370. data/lib/docspace-api-sdk/models/check-confirm-request-dto.rb +250 -0
  371. data/lib/docspace-api-sdk/models/check-conversion-request-dto.rb +214 -0
  372. data/lib/docspace-api-sdk/models/check-dest-folder-dto.rb +187 -0
  373. data/lib/docspace-api-sdk/models/check-dest-folder-result.rb +44 -0
  374. data/lib/docspace-api-sdk/models/check-dest-folder-wrapper.rb +194 -0
  375. data/lib/docspace-api-sdk/models/check-doc-service-url-request-dto.rb +210 -0
  376. data/lib/docspace-api-sdk/models/check-fill-form-draft-request.rb +200 -0
  377. data/lib/docspace-api-sdk/models/check-move-or-copy-batch-items-dest-folder-id-parameter.rb +108 -0
  378. data/lib/docspace-api-sdk/models/check-move-or-copy-batch-items-folder-ids-parameter-inner.rb +106 -0
  379. data/lib/docspace-api-sdk/models/check-upload-request.rb +155 -0
  380. data/lib/docspace-api-sdk/models/chunked-upload-session-dto.rb +207 -0
  381. data/lib/docspace-api-sdk/models/chunked-upload-session-result-dto.rb +162 -0
  382. data/lib/docspace-api-sdk/models/chunked-upload-session-result-wrapper.rb +194 -0
  383. data/lib/docspace-api-sdk/models/chunked-upload-session-wrapper.rb +194 -0
  384. data/lib/docspace-api-sdk/models/client-info-response.rb +306 -0
  385. data/lib/docspace-api-sdk/models/client-response.rb +402 -0
  386. data/lib/docspace-api-sdk/models/client-secret-response.rb +152 -0
  387. data/lib/docspace-api-sdk/models/co-editing-config-dto.rb +194 -0
  388. data/lib/docspace-api-sdk/models/co-editing-config-mode.rb +43 -0
  389. data/lib/docspace-api-sdk/models/color-theme-colors-dto.rb +164 -0
  390. data/lib/docspace-api-sdk/models/color-theme-colors-request-dto.rb +164 -0
  391. data/lib/docspace-api-sdk/models/company-white-label-settings-dto.rb +288 -0
  392. data/lib/docspace-api-sdk/models/company-white-label-settings-request-dto.rb +152 -0
  393. data/lib/docspace-api-sdk/models/company-white-label-settings-wrapper.rb +194 -0
  394. data/lib/docspace-api-sdk/models/configuration-dto.rb +394 -0
  395. data/lib/docspace-api-sdk/models/configuration-wrapper.rb +194 -0
  396. data/lib/docspace-api-sdk/models/confirm-data.rb +175 -0
  397. data/lib/docspace-api-sdk/models/confirm-dto.rb +234 -0
  398. data/lib/docspace-api-sdk/models/confirm-type.rb +61 -0
  399. data/lib/docspace-api-sdk/models/confirm-wrapper.rb +194 -0
  400. data/lib/docspace-api-sdk/models/connection-test-result-dto.rb +163 -0
  401. data/lib/docspace-api-sdk/models/connection-test-result-wrapper.rb +194 -0
  402. data/lib/docspace-api-sdk/models/contact.rb +164 -0
  403. data/lib/docspace-api-sdk/models/conversation-result-array-wrapper.rb +196 -0
  404. data/lib/docspace-api-sdk/models/conversation-result-dto.rb +274 -0
  405. data/lib/docspace-api-sdk/models/convert-document-layout-request.rb +175 -0
  406. data/lib/docspace-api-sdk/models/convert-document-renderer-request.rb +153 -0
  407. data/lib/docspace-api-sdk/models/convert-file-request-dto.rb +287 -0
  408. data/lib/docspace-api-sdk/models/convert-pdf-request.rb +152 -0
  409. data/lib/docspace-api-sdk/models/convert-spreadsheet-layout-request.rb +239 -0
  410. data/lib/docspace-api-sdk/models/convert-spreadsheet-margins-request.rb +186 -0
  411. data/lib/docspace-api-sdk/models/convert-spreadsheet-page-size-request.rb +164 -0
  412. data/lib/docspace-api-sdk/models/convert-thumbnail-request.rb +186 -0
  413. data/lib/docspace-api-sdk/models/cookie-settings-dto.rb +196 -0
  414. data/lib/docspace-api-sdk/models/cookie-settings-request-dto.rb +162 -0
  415. data/lib/docspace-api-sdk/models/cookie-settings-wrapper.rb +194 -0
  416. data/lib/docspace-api-sdk/models/copy-as-request-dest-folder-id.rb +108 -0
  417. data/lib/docspace-api-sdk/models/copy-as-request.rb +212 -0
  418. data/lib/docspace-api-sdk/models/cover-request-dto.rb +181 -0
  419. data/lib/docspace-api-sdk/models/covers-result-array-wrapper.rb +196 -0
  420. data/lib/docspace-api-sdk/models/covers-result-dto.rb +168 -0
  421. data/lib/docspace-api-sdk/models/create-api-key-request-dto.rb +235 -0
  422. data/lib/docspace-api-sdk/models/create-backup-schedule-request-dto.rb +218 -0
  423. data/lib/docspace-api-sdk/models/create-client-request.rb +612 -0
  424. data/lib/docspace-api-sdk/models/create-file-request-template-id.rb +108 -0
  425. data/lib/docspace-api-sdk/models/create-file-request.rb +208 -0
  426. data/lib/docspace-api-sdk/models/create-folder-request.rb +179 -0
  427. data/lib/docspace-api-sdk/models/create-metadata-template-request-dto.rb +178 -0
  428. data/lib/docspace-api-sdk/models/create-room-from-template-dto.rb +373 -0
  429. data/lib/docspace-api-sdk/models/create-room-request-dto.rb +422 -0
  430. data/lib/docspace-api-sdk/models/create-tag-request-dto.rb +179 -0
  431. data/lib/docspace-api-sdk/models/create-text-or-html-file-request.rb +200 -0
  432. data/lib/docspace-api-sdk/models/create-third-party-room-request.rb +289 -0
  433. data/lib/docspace-api-sdk/models/create-webhooks-config-request-dto.rb +345 -0
  434. data/lib/docspace-api-sdk/models/cron-params-dto.rb +194 -0
  435. data/lib/docspace-api-sdk/models/csp-dto.rb +170 -0
  436. data/lib/docspace-api-sdk/models/csp-request-dto.rb +155 -0
  437. data/lib/docspace-api-sdk/models/csp-wrapper.rb +194 -0
  438. data/lib/docspace-api-sdk/models/currencies-array-wrapper.rb +196 -0
  439. data/lib/docspace-api-sdk/models/currencies-dto.rb +175 -0
  440. data/lib/docspace-api-sdk/models/current-license-info.rb +196 -0
  441. data/lib/docspace-api-sdk/models/custom-color-theme-dto.rb +183 -0
  442. data/lib/docspace-api-sdk/models/custom-color-theme-request-dto.rb +183 -0
  443. data/lib/docspace-api-sdk/models/custom-color-themes-settings-dto.rb +175 -0
  444. data/lib/docspace-api-sdk/models/custom-color-themes-settings-request-dto.rb +163 -0
  445. data/lib/docspace-api-sdk/models/custom-color-themes-settings-wrapper.rb +194 -0
  446. data/lib/docspace-api-sdk/models/custom-field-request.rb +166 -0
  447. data/lib/docspace-api-sdk/models/custom-field-value-array-wrapper.rb +196 -0
  448. data/lib/docspace-api-sdk/models/custom-field-value-dto.rb +164 -0
  449. data/lib/docspace-api-sdk/models/custom-filter-request.rb +152 -0
  450. data/lib/docspace-api-sdk/models/customer-config-dto.rb +208 -0
  451. data/lib/docspace-api-sdk/models/customer-info-dto.rb +227 -0
  452. data/lib/docspace-api-sdk/models/customer-info-wrapper.rb +194 -0
  453. data/lib/docspace-api-sdk/models/customer-monthly-usage-array-wrapper.rb +196 -0
  454. data/lib/docspace-api-sdk/models/customer-monthly-usage-dto.rb +193 -0
  455. data/lib/docspace-api-sdk/models/customer-monthly-usage-report-request-dto.rb +164 -0
  456. data/lib/docspace-api-sdk/models/customer-operations-report-request-dto.rb +273 -0
  457. data/lib/docspace-api-sdk/models/customer-service-usage-dto.rb +236 -0
  458. data/lib/docspace-api-sdk/models/customer-service-usage-report-dto.rb +205 -0
  459. data/lib/docspace-api-sdk/models/customer-service-usage-report-request-dto.rb +253 -0
  460. data/lib/docspace-api-sdk/models/customer-service-usage-report-wrapper.rb +194 -0
  461. data/lib/docspace-api-sdk/models/customization-config-dto.rb +263 -0
  462. data/lib/docspace-api-sdk/models/dark-theme-settings-dto.rb +184 -0
  463. data/lib/docspace-api-sdk/models/dark-theme-settings-request-dto.rb +191 -0
  464. data/lib/docspace-api-sdk/models/dark-theme-settings-type.rb +44 -0
  465. data/lib/docspace-api-sdk/models/dark-theme-settings-wrapper.rb +194 -0
  466. data/lib/docspace-api-sdk/models/date-to-auto-clean-up.rb +47 -0
  467. data/lib/docspace-api-sdk/models/deep-link-configuration-request-dto.rb +152 -0
  468. data/lib/docspace-api-sdk/models/deep-link-dto.rb +181 -0
  469. data/lib/docspace-api-sdk/models/deep-link-handling-mode.rb +44 -0
  470. data/lib/docspace-api-sdk/models/deep-link-settings-request-dto.rb +184 -0
  471. data/lib/docspace-api-sdk/models/default-product-request-dto.rb +191 -0
  472. data/lib/docspace-api-sdk/models/default-template-item-dto.rb +210 -0
  473. data/lib/docspace-api-sdk/models/default-template-settings-dto.rb +157 -0
  474. data/lib/docspace-api-sdk/models/default-template-settings-request-dto-selected-file.rb +108 -0
  475. data/lib/docspace-api-sdk/models/default-template-settings-request-dto.rb +181 -0
  476. data/lib/docspace-api-sdk/models/default-template-settings-reset-request-dto.rb +155 -0
  477. data/lib/docspace-api-sdk/models/default-template-settings-wrapper.rb +194 -0
  478. data/lib/docspace-api-sdk/models/delete-batch-request-dto-all-of-file-ids.rb +106 -0
  479. data/lib/docspace-api-sdk/models/delete-batch-request-dto-all-of-folder-ids.rb +106 -0
  480. data/lib/docspace-api-sdk/models/delete-batch-request-dto.rb +205 -0
  481. data/lib/docspace-api-sdk/models/delete-file-request.rb +162 -0
  482. data/lib/docspace-api-sdk/models/delete-folder-request.rb +162 -0
  483. data/lib/docspace-api-sdk/models/delete-room-request.rb +152 -0
  484. data/lib/docspace-api-sdk/models/delete-version-batch-request-dto.rb +211 -0
  485. data/lib/docspace-api-sdk/models/discount-category-dto.rb +183 -0
  486. data/lib/docspace-api-sdk/models/display-request-dto.rb +152 -0
  487. data/lib/docspace-api-sdk/models/distributed-task-status.rb +46 -0
  488. data/lib/docspace-api-sdk/models/dns-settings-request-dto.rb +163 -0
  489. data/lib/docspace-api-sdk/models/doc-service-url-dto.rb +287 -0
  490. data/lib/docspace-api-sdk/models/doc-service-url-wrapper.rb +194 -0
  491. data/lib/docspace-api-sdk/models/docs-cloud-config-dto.rb +217 -0
  492. data/lib/docspace-api-sdk/models/docs-cloud-config-request-dto.rb +217 -0
  493. data/lib/docspace-api-sdk/models/docs-cloud-config-wrapper.rb +194 -0
  494. data/lib/docspace-api-sdk/models/docs-cloud-dev-pack-request-dto.rb +180 -0
  495. data/lib/docspace-api-sdk/models/docs-cloud-ip-filter-config-dto.rb +155 -0
  496. data/lib/docspace-api-sdk/models/docs-cloud-ip-filter-config-request.rb +155 -0
  497. data/lib/docspace-api-sdk/models/docs-cloud-ip-filter-rule-dto.rb +187 -0
  498. data/lib/docspace-api-sdk/models/docs-cloud-ip-filter-rule-request.rb +187 -0
  499. data/lib/docspace-api-sdk/models/docs-cloud-license-info-dto.rb +172 -0
  500. data/lib/docspace-api-sdk/models/docs-cloud-payment-dto.rb +224 -0
  501. data/lib/docspace-api-sdk/models/docs-cloud-quota-dto.rb +168 -0
  502. data/lib/docspace-api-sdk/models/docs-cloud-quota-user-dto.rb +164 -0
  503. data/lib/docspace-api-sdk/models/docs-cloud-quota-wrapper.rb +194 -0
  504. data/lib/docspace-api-sdk/models/docs-cloud-security-config-dto.rb +212 -0
  505. data/lib/docspace-api-sdk/models/docs-cloud-security-config-request.rb +212 -0
  506. data/lib/docspace-api-sdk/models/docs-cloud-server-config-dto.rb +190 -0
  507. data/lib/docspace-api-sdk/models/docs-cloud-server-config-request.rb +190 -0
  508. data/lib/docspace-api-sdk/models/docs-cloud-server-info-dto.rb +174 -0
  509. data/lib/docspace-api-sdk/models/docs-cloud-stats-dto.rb +172 -0
  510. data/lib/docspace-api-sdk/models/docs-cloud-tenant-dto.rb +257 -0
  511. data/lib/docspace-api-sdk/models/docs-cloud-tenant-info-dto.rb +182 -0
  512. data/lib/docspace-api-sdk/models/docs-cloud-tenant-info-wrapper.rb +194 -0
  513. data/lib/docspace-api-sdk/models/docs-cloud-tenant-wrapper.rb +194 -0
  514. data/lib/docspace-api-sdk/models/docs-cloud-usage-dto.rb +162 -0
  515. data/lib/docspace-api-sdk/models/docs-cloud-usage-wrapper.rb +194 -0
  516. data/lib/docspace-api-sdk/models/docs-cloud-user-stats-dto.rb +192 -0
  517. data/lib/docspace-api-sdk/models/docs-cloud-users-limit-dto.rb +162 -0
  518. data/lib/docspace-api-sdk/models/docs-cloud-wopi-config-dto.rb +152 -0
  519. data/lib/docspace-api-sdk/models/docs-cloud-wopi-config-request.rb +152 -0
  520. data/lib/docspace-api-sdk/models/document-builder-task-dto.rb +309 -0
  521. data/lib/docspace-api-sdk/models/document-builder-task-wrapper.rb +194 -0
  522. data/lib/docspace-api-sdk/models/document-config-dto.rb +268 -0
  523. data/lib/docspace-api-sdk/models/document-options-dto.rb +152 -0
  524. data/lib/docspace-api-sdk/models/domain-name-rules-dto.rb +173 -0
  525. data/lib/docspace-api-sdk/models/double-nullable-wrapper.rb +195 -0
  526. data/lib/docspace-api-sdk/models/double-wrapper.rb +194 -0
  527. data/lib/docspace-api-sdk/models/download-request-dto-all-of-file-ids.rb +106 -0
  528. data/lib/docspace-api-sdk/models/download-request-dto-all-of-folder-ids.rb +106 -0
  529. data/lib/docspace-api-sdk/models/download-request-dto.rb +198 -0
  530. data/lib/docspace-api-sdk/models/download-request-item-dto-key.rb +108 -0
  531. data/lib/docspace-api-sdk/models/download-request-item-dto.rb +192 -0
  532. data/lib/docspace-api-sdk/models/draft-location.rb +184 -0
  533. data/lib/docspace-api-sdk/models/duplicate-request-dto-all-of-file-ids.rb +106 -0
  534. data/lib/docspace-api-sdk/models/duplicate-request-dto-all-of-folder-ids.rb +106 -0
  535. data/lib/docspace-api-sdk/models/duplicate-request-dto.rb +185 -0
  536. data/lib/docspace-api-sdk/models/edit-history-array-wrapper.rb +196 -0
  537. data/lib/docspace-api-sdk/models/edit-history-author-dto.rb +166 -0
  538. data/lib/docspace-api-sdk/models/edit-history-changes-dto.rb +173 -0
  539. data/lib/docspace-api-sdk/models/edit-history-data-dto.rb +240 -0
  540. data/lib/docspace-api-sdk/models/edit-history-data-wrapper.rb +194 -0
  541. data/lib/docspace-api-sdk/models/edit-history-dto.rb +238 -0
  542. data/lib/docspace-api-sdk/models/edit-history-url-dto.rb +175 -0
  543. data/lib/docspace-api-sdk/models/editor-configuration-dto.rb +289 -0
  544. data/lib/docspace-api-sdk/models/editor-tool-call-parameters-dto.rb +109 -0
  545. data/lib/docspace-api-sdk/models/editor-tool-call-state-dto.rb +182 -0
  546. data/lib/docspace-api-sdk/models/editor-type.rb +44 -0
  547. data/lib/docspace-api-sdk/models/email-activation-settings-dto.rb +162 -0
  548. data/lib/docspace-api-sdk/models/email-activation-settings-request-dto.rb +162 -0
  549. data/lib/docspace-api-sdk/models/email-activation-settings-wrapper.rb +194 -0
  550. data/lib/docspace-api-sdk/models/email-invitation-dto.rb +168 -0
  551. data/lib/docspace-api-sdk/models/email-member-request-dto.rb +230 -0
  552. data/lib/docspace-api-sdk/models/embedded-config-dto.rb +197 -0
  553. data/lib/docspace-api-sdk/models/employee-activation-status.rb +45 -0
  554. data/lib/docspace-api-sdk/models/employee-array-wrapper.rb +196 -0
  555. data/lib/docspace-api-sdk/models/employee-dto.rb +249 -0
  556. data/lib/docspace-api-sdk/models/employee-full-array-wrapper.rb +196 -0
  557. data/lib/docspace-api-sdk/models/employee-full-dto.rb +637 -0
  558. data/lib/docspace-api-sdk/models/employee-full-wrapper.rb +194 -0
  559. data/lib/docspace-api-sdk/models/employee-status.rb +46 -0
  560. data/lib/docspace-api-sdk/models/employee-type.rb +46 -0
  561. data/lib/docspace-api-sdk/models/employee-wrapper.rb +194 -0
  562. data/lib/docspace-api-sdk/models/enabled-module-array-wrapper.rb +196 -0
  563. data/lib/docspace-api-sdk/models/enabled-module-dto.rb +164 -0
  564. data/lib/docspace-api-sdk/models/encryption-key-array-wrapper.rb +196 -0
  565. data/lib/docspace-api-sdk/models/encryption-key-dto.rb +205 -0
  566. data/lib/docspace-api-sdk/models/encryption-key-request-dto.rb +174 -0
  567. data/lib/docspace-api-sdk/models/encryption-settings-dto.rb +195 -0
  568. data/lib/docspace-api-sdk/models/encryption-settings-wrapper.rb +194 -0
  569. data/lib/docspace-api-sdk/models/encryption-status.rb +45 -0
  570. data/lib/docspace-api-sdk/models/entity-quota-dto.rb +173 -0
  571. data/lib/docspace-api-sdk/models/entity-quota-settings-dto.rb +189 -0
  572. data/lib/docspace-api-sdk/models/entity-quota-settings-wrapper.rb +194 -0
  573. data/lib/docspace-api-sdk/models/entry-field-dto.rb +228 -0
  574. data/lib/docspace-api-sdk/models/entry-metadata-dto.rb +168 -0
  575. data/lib/docspace-api-sdk/models/entry-metadata-wrapper.rb +194 -0
  576. data/lib/docspace-api-sdk/models/entry-template-dto.rb +228 -0
  577. data/lib/docspace-api-sdk/models/entry-type.rb +49 -0
  578. data/lib/docspace-api-sdk/models/error-api-response-error.rb +182 -0
  579. data/lib/docspace-api-sdk/models/error-api-response.rb +171 -0
  580. data/lib/docspace-api-sdk/models/exchange-token200-response.rb +181 -0
  581. data/lib/docspace-api-sdk/models/external-database-connection-request-dto.rb +260 -0
  582. data/lib/docspace-api-sdk/models/external-database-type.rb +43 -0
  583. data/lib/docspace-api-sdk/models/external-db-sync-form-result-dto.rb +184 -0
  584. data/lib/docspace-api-sdk/models/external-db-sync-task-dto.rb +284 -0
  585. data/lib/docspace-api-sdk/models/external-db-sync-task-wrapper.rb +194 -0
  586. data/lib/docspace-api-sdk/models/external-resource-dto.rb +165 -0
  587. data/lib/docspace-api-sdk/models/external-resources-dto.rb +242 -0
  588. data/lib/docspace-api-sdk/models/external-share-dto.rb +384 -0
  589. data/lib/docspace-api-sdk/models/external-share-request-param.rb +153 -0
  590. data/lib/docspace-api-sdk/models/external-share-status.rb +47 -0
  591. data/lib/docspace-api-sdk/models/external-share-wrapper.rb +194 -0
  592. data/lib/docspace-api-sdk/models/external-sharing-settings-dto.rb +192 -0
  593. data/lib/docspace-api-sdk/models/external-sharing-settings-request-dto.rb +192 -0
  594. data/lib/docspace-api-sdk/models/external-sharing-settings-wrapper.rb +194 -0
  595. data/lib/docspace-api-sdk/models/feature-used-dto.rb +165 -0
  596. data/lib/docspace-api-sdk/models/feedback-config-dto.rb +163 -0
  597. data/lib/docspace-api-sdk/models/field-error.rb +172 -0
  598. data/lib/docspace-api-sdk/models/file-array-wrapper.rb +196 -0
  599. data/lib/docspace-api-sdk/models/file-conflict-resolve-type.rb +44 -0
  600. data/lib/docspace-api-sdk/models/file-dto-all-of-view-accessibility.rb +232 -0
  601. data/lib/docspace-api-sdk/models/file-dto.rb +927 -0
  602. data/lib/docspace-api-sdk/models/file-encryption-info-dto.rb +168 -0
  603. data/lib/docspace-api-sdk/models/file-encryption-info-wrapper.rb +194 -0
  604. data/lib/docspace-api-sdk/models/file-entry-array-wrapper.rb +196 -0
  605. data/lib/docspace-api-sdk/models/file-entry-base-array-wrapper.rb +196 -0
  606. data/lib/docspace-api-sdk/models/file-entry-base-dto.rb +391 -0
  607. data/lib/docspace-api-sdk/models/file-entry-base-wrapper.rb +194 -0
  608. data/lib/docspace-api-sdk/models/file-entry-dto.rb +562 -0
  609. data/lib/docspace-api-sdk/models/file-entry-type.rb +43 -0
  610. data/lib/docspace-api-sdk/models/file-keys-dto.rb +203 -0
  611. data/lib/docspace-api-sdk/models/file-link-dto.rb +179 -0
  612. data/lib/docspace-api-sdk/models/file-link-request.rb +294 -0
  613. data/lib/docspace-api-sdk/models/file-link-wrapper.rb +194 -0
  614. data/lib/docspace-api-sdk/models/file-operation-array-wrapper.rb +196 -0
  615. data/lib/docspace-api-sdk/models/file-operation-dto.rb +331 -0
  616. data/lib/docspace-api-sdk/models/file-operation-request-base-dto.rb +152 -0
  617. data/lib/docspace-api-sdk/models/file-operation-type.rb +50 -0
  618. data/lib/docspace-api-sdk/models/file-operation-wrapper.rb +194 -0
  619. data/lib/docspace-api-sdk/models/file-reference-data-dto.rb +185 -0
  620. data/lib/docspace-api-sdk/models/file-reference-dto.rb +229 -0
  621. data/lib/docspace-api-sdk/models/file-reference-wrapper.rb +194 -0
  622. data/lib/docspace-api-sdk/models/file-share-array-wrapper.rb +196 -0
  623. data/lib/docspace-api-sdk/models/file-share-dto.rb +430 -0
  624. data/lib/docspace-api-sdk/models/file-share-link.rb +303 -0
  625. data/lib/docspace-api-sdk/models/file-share-params.rb +220 -0
  626. data/lib/docspace-api-sdk/models/file-share-response-array-wrapper.rb +196 -0
  627. data/lib/docspace-api-sdk/models/file-share-wrapper.rb +194 -0
  628. data/lib/docspace-api-sdk/models/file-share.rb +53 -0
  629. data/lib/docspace-api-sdk/models/file-status.rb +51 -0
  630. data/lib/docspace-api-sdk/models/file-type.rb +51 -0
  631. data/lib/docspace-api-sdk/models/file-upload-result-dto.rb +173 -0
  632. data/lib/docspace-api-sdk/models/file-upload-result-wrapper.rb +194 -0
  633. data/lib/docspace-api-sdk/models/file-wrapper.rb +194 -0
  634. data/lib/docspace-api-sdk/models/files-settings-dto-internal-formats.rb +232 -0
  635. data/lib/docspace-api-sdk/models/files-settings-dto.rb +892 -0
  636. data/lib/docspace-api-sdk/models/files-settings-wrapper.rb +194 -0
  637. data/lib/docspace-api-sdk/models/files-statistics-folder.rb +163 -0
  638. data/lib/docspace-api-sdk/models/files-statistics-result-dto.rb +202 -0
  639. data/lib/docspace-api-sdk/models/files-statistics-result-wrapper.rb +194 -0
  640. data/lib/docspace-api-sdk/models/filling-form-result-dto.rb +236 -0
  641. data/lib/docspace-api-sdk/models/filling-form-result-wrapper.rb +194 -0
  642. data/lib/docspace-api-sdk/models/filter-type.rb +62 -0
  643. data/lib/docspace-api-sdk/models/finish-dto.rb +169 -0
  644. data/lib/docspace-api-sdk/models/firebase-device-dto.rb +205 -0
  645. data/lib/docspace-api-sdk/models/firebase-device-wrapper.rb +194 -0
  646. data/lib/docspace-api-sdk/models/firebase-dto.rb +246 -0
  647. data/lib/docspace-api-sdk/models/firebase-request-dto.rb +163 -0
  648. data/lib/docspace-api-sdk/models/folder-array-wrapper.rb +196 -0
  649. data/lib/docspace-api-sdk/models/folder-content-array-wrapper.rb +196 -0
  650. data/lib/docspace-api-sdk/models/folder-content-dto.rb +247 -0
  651. data/lib/docspace-api-sdk/models/folder-content-wrapper.rb +194 -0
  652. data/lib/docspace-api-sdk/models/folder-dto.rb +838 -0
  653. data/lib/docspace-api-sdk/models/folder-link-request.rb +294 -0
  654. data/lib/docspace-api-sdk/models/folder-metadata-search.rb +328 -0
  655. data/lib/docspace-api-sdk/models/folder-type.rb +72 -0
  656. data/lib/docspace-api-sdk/models/folder-wrapper.rb +194 -0
  657. data/lib/docspace-api-sdk/models/form-filling-manage-action.rb +45 -0
  658. data/lib/docspace-api-sdk/models/form-filling-status.rb +47 -0
  659. data/lib/docspace-api-sdk/models/form-gallery-dto.rb +233 -0
  660. data/lib/docspace-api-sdk/models/form-metadata-dto.rb +188 -0
  661. data/lib/docspace-api-sdk/models/form-results-dto.rb +165 -0
  662. data/lib/docspace-api-sdk/models/form-role-array-wrapper.rb +196 -0
  663. data/lib/docspace-api-sdk/models/form-role-dto.rb +284 -0
  664. data/lib/docspace-api-sdk/models/form-role-request.rb +224 -0
  665. data/lib/docspace-api-sdk/models/form-submissions-dto.rb +168 -0
  666. data/lib/docspace-api-sdk/models/form-submissions-wrapper.rb +194 -0
  667. data/lib/docspace-api-sdk/models/forms-item-array-wrapper.rb +196 -0
  668. data/lib/docspace-api-sdk/models/forms-item-data-dto.rb +186 -0
  669. data/lib/docspace-api-sdk/models/forms-item-dto.rb +164 -0
  670. data/lib/docspace-api-sdk/models/generate-docx-tool-call-parameters-dto.rb +155 -0
  671. data/lib/docspace-api-sdk/models/generate-form-tool-call-parameters-dto.rb +155 -0
  672. data/lib/docspace-api-sdk/models/generate-presentation-tool-call-parameters-dto.rb +175 -0
  673. data/lib/docspace-api-sdk/models/get-portal-prices200-response-links-inner.rb +161 -0
  674. data/lib/docspace-api-sdk/models/get-portal-prices200-response.rb +196 -0
  675. data/lib/docspace-api-sdk/models/get-reference-data-dto.rb +200 -0
  676. data/lib/docspace-api-sdk/models/goback-config-dto.rb +153 -0
  677. data/lib/docspace-api-sdk/models/greeting-settings-request-dto.rb +179 -0
  678. data/lib/docspace-api-sdk/models/group-array-wrapper.rb +196 -0
  679. data/lib/docspace-api-sdk/models/group-dto.rb +302 -0
  680. data/lib/docspace-api-sdk/models/group-member-security-array-wrapper.rb +196 -0
  681. data/lib/docspace-api-sdk/models/group-member-security-dto.rb +309 -0
  682. data/lib/docspace-api-sdk/models/group-request-dto.rb +202 -0
  683. data/lib/docspace-api-sdk/models/group-summary-array-wrapper.rb +196 -0
  684. data/lib/docspace-api-sdk/models/group-summary-dto.rb +204 -0
  685. data/lib/docspace-api-sdk/models/group-wrapper.rb +194 -0
  686. data/lib/docspace-api-sdk/models/hide-confirm-convert-request-dto.rb +152 -0
  687. data/lib/docspace-api-sdk/models/history-action-dto.rb +185 -0
  688. data/lib/docspace-api-sdk/models/history-array-wrapper.rb +196 -0
  689. data/lib/docspace-api-sdk/models/history-data-dto.rb +153 -0
  690. data/lib/docspace-api-sdk/models/history-dto.rb +273 -0
  691. data/lib/docspace-api-sdk/models/i-compress-wrapper.rb +194 -0
  692. data/lib/docspace-api-sdk/models/icon-request.rb +153 -0
  693. data/lib/docspace-api-sdk/models/image-size-dto.rb +162 -0
  694. data/lib/docspace-api-sdk/models/importable-api-entity.rb +152 -0
  695. data/lib/docspace-api-sdk/models/info-config-dto.rb +231 -0
  696. data/lib/docspace-api-sdk/models/int32-wrapper.rb +194 -0
  697. data/lib/docspace-api-sdk/models/int64-wrapper.rb +194 -0
  698. data/lib/docspace-api-sdk/models/invitation-link-create-request-dto.rb +237 -0
  699. data/lib/docspace-api-sdk/models/invitation-link-delete-request-dto.rb +169 -0
  700. data/lib/docspace-api-sdk/models/invitation-link-dto.rb +253 -0
  701. data/lib/docspace-api-sdk/models/invitation-link-update-request-dto.rb +215 -0
  702. data/lib/docspace-api-sdk/models/invitation-link-wrapper.rb +194 -0
  703. data/lib/docspace-api-sdk/models/invite-users-request-dto.rb +182 -0
  704. data/lib/docspace-api-sdk/models/ip-restriction-array-wrapper.rb +196 -0
  705. data/lib/docspace-api-sdk/models/ip-restriction-dto.rb +185 -0
  706. data/lib/docspace-api-sdk/models/ip-restriction-entry-dto.rb +165 -0
  707. data/lib/docspace-api-sdk/models/ip-restrictions-dto.rb +168 -0
  708. data/lib/docspace-api-sdk/models/ip-restrictions-settings-dto.rb +162 -0
  709. data/lib/docspace-api-sdk/models/ip-restrictions-settings-wrapper.rb +194 -0
  710. data/lib/docspace-api-sdk/models/ip-restrictions-wrapper.rb +194 -0
  711. data/lib/docspace-api-sdk/models/is-default-white-label-logos-array-wrapper.rb +196 -0
  712. data/lib/docspace-api-sdk/models/is-default-white-label-logos-dto.rb +182 -0
  713. data/lib/docspace-api-sdk/models/is-default-white-label-logos-wrapper.rb +194 -0
  714. data/lib/docspace-api-sdk/models/item-key-value-pair-boolean-string-wrapper.rb +194 -0
  715. data/lib/docspace-api-sdk/models/item-key-value-pair-boolean-string.rb +163 -0
  716. data/lib/docspace-api-sdk/models/item-key-value-pair-object-object.rb +162 -0
  717. data/lib/docspace-api-sdk/models/item-key-value-pair-string-boolean.rb +163 -0
  718. data/lib/docspace-api-sdk/models/item-key-value-pair-string-logo-request-dto.rb +163 -0
  719. data/lib/docspace-api-sdk/models/item-key-value-pair-string-string.rb +164 -0
  720. data/lib/docspace-api-sdk/models/json-value-wrapper.rb +194 -0
  721. data/lib/docspace-api-sdk/models/licensor-details-array-wrapper.rb +196 -0
  722. data/lib/docspace-api-sdk/models/licensor-details-dto.rb +347 -0
  723. data/lib/docspace-api-sdk/models/licensor-details-wrapper.rb +194 -0
  724. data/lib/docspace-api-sdk/models/link-account-request-dto.rb +153 -0
  725. data/lib/docspace-api-sdk/models/link-type.rb +43 -0
  726. data/lib/docspace-api-sdk/models/location-type.rb +49 -0
  727. data/lib/docspace-api-sdk/models/lock-file-request.rb +152 -0
  728. data/lib/docspace-api-sdk/models/login-event-array-wrapper.rb +196 -0
  729. data/lib/docspace-api-sdk/models/login-event-dto.rb +303 -0
  730. data/lib/docspace-api-sdk/models/login-provider.rb +56 -0
  731. data/lib/docspace-api-sdk/models/login-settings-dto.rb +250 -0
  732. data/lib/docspace-api-sdk/models/login-settings-request-dto.rb +256 -0
  733. data/lib/docspace-api-sdk/models/login-settings-wrapper.rb +194 -0
  734. data/lib/docspace-api-sdk/models/logo-config-dto.rb +207 -0
  735. data/lib/docspace-api-sdk/models/logo-cover-dto.rb +168 -0
  736. data/lib/docspace-api-sdk/models/logo-dto.rb +215 -0
  737. data/lib/docspace-api-sdk/models/logo-request-dto.rb +164 -0
  738. data/lib/docspace-api-sdk/models/logo-request.rb +330 -0
  739. data/lib/docspace-api-sdk/models/mail-domain-settings-request-dto.rb +233 -0
  740. data/lib/docspace-api-sdk/models/manage-form-filling-dto.rb +201 -0
  741. data/lib/docspace-api-sdk/models/member-request-dto.rb +424 -0
  742. data/lib/docspace-api-sdk/models/members-request.rb +155 -0
  743. data/lib/docspace-api-sdk/models/mention-array-wrapper.rb +196 -0
  744. data/lib/docspace-api-sdk/models/mention-dto.rb +206 -0
  745. data/lib/docspace-api-sdk/models/mention-message-request.rb +200 -0
  746. data/lib/docspace-api-sdk/models/message-action.rb +403 -0
  747. data/lib/docspace-api-sdk/models/metadata-conflict-resolve-type.rb +43 -0
  748. data/lib/docspace-api-sdk/models/metadata-field-dto.rb +228 -0
  749. data/lib/docspace-api-sdk/models/metadata-field-option-dto.rb +163 -0
  750. data/lib/docspace-api-sdk/models/metadata-field-option-request.rb +164 -0
  751. data/lib/docspace-api-sdk/models/metadata-field-request.rb +209 -0
  752. data/lib/docspace-api-sdk/models/metadata-field-type.rb +46 -0
  753. data/lib/docspace-api-sdk/models/metadata-field-wrapper.rb +194 -0
  754. data/lib/docspace-api-sdk/models/metadata-filter-condition-request.rb +220 -0
  755. data/lib/docspace-api-sdk/models/metadata-match-dto.rb +186 -0
  756. data/lib/docspace-api-sdk/models/metadata-operation-dto.rb +197 -0
  757. data/lib/docspace-api-sdk/models/metadata-operation-wrapper.rb +194 -0
  758. data/lib/docspace-api-sdk/models/metadata-template-array-wrapper.rb +196 -0
  759. data/lib/docspace-api-sdk/models/metadata-template-dto.rb +226 -0
  760. data/lib/docspace-api-sdk/models/metadata-template-wrapper.rb +194 -0
  761. data/lib/docspace-api-sdk/models/metadata-value-dto.rb +187 -0
  762. data/lib/docspace-api-sdk/models/metadata-value-request.rb +215 -0
  763. data/lib/docspace-api-sdk/models/migrating-api-files.rb +172 -0
  764. data/lib/docspace-api-sdk/models/migrating-api-group.rb +194 -0
  765. data/lib/docspace-api-sdk/models/migrating-api-user.rb +256 -0
  766. data/lib/docspace-api-sdk/models/migration-api-info.rb +335 -0
  767. data/lib/docspace-api-sdk/models/migration-status-dto.rb +183 -0
  768. data/lib/docspace-api-sdk/models/migration-status-wrapper.rb +194 -0
  769. data/lib/docspace-api-sdk/models/mobile-phone-activation-status.rb +43 -0
  770. data/lib/docspace-api-sdk/models/mobile-request-dto.rb +153 -0
  771. data/lib/docspace-api-sdk/models/model-module.rb +239 -0
  772. data/lib/docspace-api-sdk/models/module-wrapper.rb +194 -0
  773. data/lib/docspace-api-sdk/models/multi-size-logo-cover-dto.rb +184 -0
  774. data/lib/docspace-api-sdk/models/new-items-dto-file-entry-base-dto.rb +184 -0
  775. data/lib/docspace-api-sdk/models/new-items-dto-room-new-items-dto.rb +184 -0
  776. data/lib/docspace-api-sdk/models/new-items-file-entry-base-array-wrapper.rb +196 -0
  777. data/lib/docspace-api-sdk/models/new-items-room-new-items-array-wrapper.rb +196 -0
  778. data/lib/docspace-api-sdk/models/notification-channel-dto.rb +182 -0
  779. data/lib/docspace-api-sdk/models/notification-channel-status-dto.rb +155 -0
  780. data/lib/docspace-api-sdk/models/notification-channel-status-wrapper.rb +194 -0
  781. data/lib/docspace-api-sdk/models/notification-settings-dto.rb +184 -0
  782. data/lib/docspace-api-sdk/models/notification-settings-request-dto.rb +201 -0
  783. data/lib/docspace-api-sdk/models/notification-settings-wrapper.rb +194 -0
  784. data/lib/docspace-api-sdk/models/notification-type.rb +45 -0
  785. data/lib/docspace-api-sdk/models/object-array-wrapper.rb +196 -0
  786. data/lib/docspace-api-sdk/models/operation-dto.rb +345 -0
  787. data/lib/docspace-api-sdk/models/operation-order-type.rb +43 -0
  788. data/lib/docspace-api-sdk/models/operation-status.rb +45 -0
  789. data/lib/docspace-api-sdk/models/operation-token-usage-dto.rb +212 -0
  790. data/lib/docspace-api-sdk/models/operation-type.rb +61 -0
  791. data/lib/docspace-api-sdk/models/order-by-dto.rb +184 -0
  792. data/lib/docspace-api-sdk/models/order-request-dto.rb +180 -0
  793. data/lib/docspace-api-sdk/models/orders-item-request-dto.rb +263 -0
  794. data/lib/docspace-api-sdk/models/orders-request-dto.rb +157 -0
  795. data/lib/docspace-api-sdk/models/owner-change-instructions-dto.rb +163 -0
  796. data/lib/docspace-api-sdk/models/owner-change-instructions-wrapper.rb +194 -0
  797. data/lib/docspace-api-sdk/models/owner-id-settings-request-dto.rb +169 -0
  798. data/lib/docspace-api-sdk/models/pageable-client-info-response.rb +184 -0
  799. data/lib/docspace-api-sdk/models/pageable-client-response.rb +184 -0
  800. data/lib/docspace-api-sdk/models/pageable-modification-response.rb +172 -0
  801. data/lib/docspace-api-sdk/models/pageable-response.rb +182 -0
  802. data/lib/docspace-api-sdk/models/password-hash-settings-dto.rb +173 -0
  803. data/lib/docspace-api-sdk/models/password-settings-dto.rb +302 -0
  804. data/lib/docspace-api-sdk/models/password-settings-request-dto.rb +199 -0
  805. data/lib/docspace-api-sdk/models/password-settings-wrapper.rb +194 -0
  806. data/lib/docspace-api-sdk/models/payment-calculation-dto.rb +183 -0
  807. data/lib/docspace-api-sdk/models/payment-calculation-wrapper.rb +194 -0
  808. data/lib/docspace-api-sdk/models/payment-method-status.rb +44 -0
  809. data/lib/docspace-api-sdk/models/payment-settings-dto.rb +260 -0
  810. data/lib/docspace-api-sdk/models/payment-settings-wrapper.rb +194 -0
  811. data/lib/docspace-api-sdk/models/payment-url-request-dto.rb +279 -0
  812. data/lib/docspace-api-sdk/models/payments.rb +43 -0
  813. data/lib/docspace-api-sdk/models/permissions-config-dto.rb +242 -0
  814. data/lib/docspace-api-sdk/models/plugins-config-dto.rb +155 -0
  815. data/lib/docspace-api-sdk/models/plugins-dto.rb +172 -0
  816. data/lib/docspace-api-sdk/models/portal-user-dto.rb +496 -0
  817. data/lib/docspace-api-sdk/models/portal-user-wrapper.rb +194 -0
  818. data/lib/docspace-api-sdk/models/price-dto.rb +175 -0
  819. data/lib/docspace-api-sdk/models/price-status.rb +44 -0
  820. data/lib/docspace-api-sdk/models/price-time-unit.rb +48 -0
  821. data/lib/docspace-api-sdk/models/problem-detail.rb +216 -0
  822. data/lib/docspace-api-sdk/models/product-administrator-dto.rb +223 -0
  823. data/lib/docspace-api-sdk/models/product-administrator-wrapper.rb +194 -0
  824. data/lib/docspace-api-sdk/models/product-quantity-type.rb +45 -0
  825. data/lib/docspace-api-sdk/models/product-type.rb +45 -0
  826. data/lib/docspace-api-sdk/models/provider-array-wrapper.rb +196 -0
  827. data/lib/docspace-api-sdk/models/provider-dto.rb +216 -0
  828. data/lib/docspace-api-sdk/models/provider-filter.rb +51 -0
  829. data/lib/docspace-api-sdk/models/quantity-request-dto.rb +189 -0
  830. data/lib/docspace-api-sdk/models/quota-array-wrapper.rb +196 -0
  831. data/lib/docspace-api-sdk/models/quota-dto.rb +354 -0
  832. data/lib/docspace-api-sdk/models/quota-filter.rb +44 -0
  833. data/lib/docspace-api-sdk/models/quota-scope.rb +44 -0
  834. data/lib/docspace-api-sdk/models/quota-settings-request-dto-default-quota.rb +108 -0
  835. data/lib/docspace-api-sdk/models/quota-settings-request-dto.rb +178 -0
  836. data/lib/docspace-api-sdk/models/quota-state.rb +43 -0
  837. data/lib/docspace-api-sdk/models/quota-wrapper.rb +194 -0
  838. data/lib/docspace-api-sdk/models/recaptcha-type.rb +45 -0
  839. data/lib/docspace-api-sdk/models/recent-config-dto.rb +175 -0
  840. data/lib/docspace-api-sdk/models/reg-status.rb +44 -0
  841. data/lib/docspace-api-sdk/models/report-dto.rb +205 -0
  842. data/lib/docspace-api-sdk/models/report-wrapper.rb +194 -0
  843. data/lib/docspace-api-sdk/models/request-location.rb +44 -0
  844. data/lib/docspace-api-sdk/models/restricted-ai-models-dto.rb +157 -0
  845. data/lib/docspace-api-sdk/models/restricted-ai-models-wrapper.rb +194 -0
  846. data/lib/docspace-api-sdk/models/review-config-dto.rb +153 -0
  847. data/lib/docspace-api-sdk/models/room-data-lifetime-dto.rb +230 -0
  848. data/lib/docspace-api-sdk/models/room-data-lifetime-period.rb +44 -0
  849. data/lib/docspace-api-sdk/models/room-from-template-status-dto.rb +236 -0
  850. data/lib/docspace-api-sdk/models/room-from-template-status-wrapper.rb +194 -0
  851. data/lib/docspace-api-sdk/models/room-group-array-wrapper.rb +196 -0
  852. data/lib/docspace-api-sdk/models/room-group-dto.rb +238 -0
  853. data/lib/docspace-api-sdk/models/room-group-request-dto.rb +293 -0
  854. data/lib/docspace-api-sdk/models/room-group-wrapper.rb +194 -0
  855. data/lib/docspace-api-sdk/models/room-invitation-request.rb +197 -0
  856. data/lib/docspace-api-sdk/models/room-invitation.rb +220 -0
  857. data/lib/docspace-api-sdk/models/room-link-request.rb +339 -0
  858. data/lib/docspace-api-sdk/models/room-new-items-dto.rb +165 -0
  859. data/lib/docspace-api-sdk/models/room-privacy-filter.rb +44 -0
  860. data/lib/docspace-api-sdk/models/room-security-dto.rb +198 -0
  861. data/lib/docspace-api-sdk/models/room-security-error.rb +43 -0
  862. data/lib/docspace-api-sdk/models/room-security-wrapper.rb +194 -0
  863. data/lib/docspace-api-sdk/models/room-template-dto.rb +364 -0
  864. data/lib/docspace-api-sdk/models/room-template-status-dto.rb +234 -0
  865. data/lib/docspace-api-sdk/models/room-template-status-wrapper.rb +194 -0
  866. data/lib/docspace-api-sdk/models/room-type.rb +47 -0
  867. data/lib/docspace-api-sdk/models/rooms-metadata-search-request-dto.rb +330 -0
  868. data/lib/docspace-api-sdk/models/rooms-notification-settings-dto.rb +155 -0
  869. data/lib/docspace-api-sdk/models/rooms-notification-settings-wrapper.rb +194 -0
  870. data/lib/docspace-api-sdk/models/rooms-notifications-settings-request-dto.rb +162 -0
  871. data/lib/docspace-api-sdk/models/run-builder-script-output-request.rb +175 -0
  872. data/lib/docspace-api-sdk/models/run-builder-script-request-dto-argument.rb +108 -0
  873. data/lib/docspace-api-sdk/models/run-builder-script-request-dto.rb +211 -0
  874. data/lib/docspace-api-sdk/models/sales-request-dto.rb +277 -0
  875. data/lib/docspace-api-sdk/models/save-additional-resources-request.rb +212 -0
  876. data/lib/docspace-api-sdk/models/save-as-pdf-request.rb +182 -0
  877. data/lib/docspace-api-sdk/models/save-auth-keys-request-dto.rb +219 -0
  878. data/lib/docspace-api-sdk/models/save-company-info-request.rb +347 -0
  879. data/lib/docspace-api-sdk/models/save-form-role-mapping-dto.rb +184 -0
  880. data/lib/docspace-api-sdk/models/schedule-dto.rb +312 -0
  881. data/lib/docspace-api-sdk/models/schedule-wrapper.rb +194 -0
  882. data/lib/docspace-api-sdk/models/scope-response.rb +172 -0
  883. data/lib/docspace-api-sdk/models/search-area.rb +51 -0
  884. data/lib/docspace-api-sdk/models/security-array-wrapper.rb +196 -0
  885. data/lib/docspace-api-sdk/models/security-dto.rb +199 -0
  886. data/lib/docspace-api-sdk/models/security-info-request-dto.rb +226 -0
  887. data/lib/docspace-api-sdk/models/security-info-simple-request-dto.rb +200 -0
  888. data/lib/docspace-api-sdk/models/security-request-dto.rb +206 -0
  889. data/lib/docspace-api-sdk/models/service-price-array-wrapper.rb +196 -0
  890. data/lib/docspace-api-sdk/models/service-price-dto.rb +296 -0
  891. data/lib/docspace-api-sdk/models/session-request.rb +206 -0
  892. data/lib/docspace-api-sdk/models/set-app-enabled-request.rb +169 -0
  893. data/lib/docspace-api-sdk/models/set-app-settings-request.rb +152 -0
  894. data/lib/docspace-api-sdk/models/set-audit-lifetime-settings-request.rb +172 -0
  895. data/lib/docspace-api-sdk/models/set-custom-fields.rb +171 -0
  896. data/lib/docspace-api-sdk/models/set-manager-request.rb +169 -0
  897. data/lib/docspace-api-sdk/models/set-metadata-values.rb +171 -0
  898. data/lib/docspace-api-sdk/models/set-public-dto.rb +197 -0
  899. data/lib/docspace-api-sdk/models/set-restricted-ai-models-request-dto.rb +171 -0
  900. data/lib/docspace-api-sdk/models/set-wallet-top-up-settings-request.rb +269 -0
  901. data/lib/docspace-api-sdk/models/settings-dto.rb +684 -0
  902. data/lib/docspace-api-sdk/models/settings-request-dto.rb +152 -0
  903. data/lib/docspace-api-sdk/models/settings-wrapper.rb +194 -0
  904. data/lib/docspace-api-sdk/models/share-filter-type.rb +49 -0
  905. data/lib/docspace-api-sdk/models/signup-account-request-dto.rb +211 -0
  906. data/lib/docspace-api-sdk/models/smtp-operation-status-dto.rb +195 -0
  907. data/lib/docspace-api-sdk/models/smtp-operation-status-wrapper.rb +194 -0
  908. data/lib/docspace-api-sdk/models/smtp-settings-dto.rb +368 -0
  909. data/lib/docspace-api-sdk/models/smtp-settings-wrapper.rb +194 -0
  910. data/lib/docspace-api-sdk/models/socket-settings-dto.rb +153 -0
  911. data/lib/docspace-api-sdk/models/socket-settings-wrapper.rb +194 -0
  912. data/lib/docspace-api-sdk/models/sort-order.rb +43 -0
  913. data/lib/docspace-api-sdk/models/sorted-by-type.rb +54 -0
  914. data/lib/docspace-api-sdk/models/sso-binding-type-dto.rb +164 -0
  915. data/lib/docspace-api-sdk/models/sso-certificate-dto.rb +216 -0
  916. data/lib/docspace-api-sdk/models/sso-encrypt-algorithm-type-dto.rb +175 -0
  917. data/lib/docspace-api-sdk/models/sso-field-mapping-dto.rb +208 -0
  918. data/lib/docspace-api-sdk/models/sso-idp-certificate-action-type-dto.rb +175 -0
  919. data/lib/docspace-api-sdk/models/sso-idp-certificate-advanced-dto.rb +204 -0
  920. data/lib/docspace-api-sdk/models/sso-idp-settings-dto.rb +208 -0
  921. data/lib/docspace-api-sdk/models/sso-name-id-format-type-dto.rb +252 -0
  922. data/lib/docspace-api-sdk/models/sso-settings-constants-dto.rb +202 -0
  923. data/lib/docspace-api-sdk/models/sso-settings-constants-wrapper.rb +194 -0
  924. data/lib/docspace-api-sdk/models/sso-settings-dto.rb +270 -0
  925. data/lib/docspace-api-sdk/models/sso-settings-request-dto.rb +155 -0
  926. data/lib/docspace-api-sdk/models/sso-settings-wrapper.rb +194 -0
  927. data/lib/docspace-api-sdk/models/sso-signing-algorithm-type-dto.rb +175 -0
  928. data/lib/docspace-api-sdk/models/sso-sp-certificate-action-type-dto.rb +175 -0
  929. data/lib/docspace-api-sdk/models/sso-sp-certificate-advanced-dto.rb +215 -0
  930. data/lib/docspace-api-sdk/models/start-backup-request-dto.rb +197 -0
  931. data/lib/docspace-api-sdk/models/start-backup-restore-request-dto.rb +220 -0
  932. data/lib/docspace-api-sdk/models/start-edit-request.rb +152 -0
  933. data/lib/docspace-api-sdk/models/start-filling-form.rb +153 -0
  934. data/lib/docspace-api-sdk/models/start-filling-mode.rb +45 -0
  935. data/lib/docspace-api-sdk/models/start-reassign-request-dto.rb +206 -0
  936. data/lib/docspace-api-sdk/models/start-update-user-type-dto.rb +195 -0
  937. data/lib/docspace-api-sdk/models/storage-array-wrapper.rb +196 -0
  938. data/lib/docspace-api-sdk/models/storage-dto.rb +235 -0
  939. data/lib/docspace-api-sdk/models/storage-encryption-request-dto.rb +152 -0
  940. data/lib/docspace-api-sdk/models/storage-filter.rb +44 -0
  941. data/lib/docspace-api-sdk/models/storage-request-dto.rb +168 -0
  942. data/lib/docspace-api-sdk/models/storage-settings-dto.rb +175 -0
  943. data/lib/docspace-api-sdk/models/storage-settings-wrapper.rb +194 -0
  944. data/lib/docspace-api-sdk/models/string-array-wrapper.rb +196 -0
  945. data/lib/docspace-api-sdk/models/string-wrapper.rb +194 -0
  946. data/lib/docspace-api-sdk/models/studio-default-page-settings-dto.rb +184 -0
  947. data/lib/docspace-api-sdk/models/studio-default-page-settings-wrapper.rb +194 -0
  948. data/lib/docspace-api-sdk/models/sub-account-dto.rb +163 -0
  949. data/lib/docspace-api-sdk/models/subject-type.rb +46 -0
  950. data/lib/docspace-api-sdk/models/submit-form-dto.rb +163 -0
  951. data/lib/docspace-api-sdk/models/subscription-balance-dto.rb +234 -0
  952. data/lib/docspace-api-sdk/models/subscription-balance-wrapper.rb +194 -0
  953. data/lib/docspace-api-sdk/models/tariff-dto.rb +271 -0
  954. data/lib/docspace-api-sdk/models/tariff-quota-dto.rb +246 -0
  955. data/lib/docspace-api-sdk/models/tariff-state.rb +45 -0
  956. data/lib/docspace-api-sdk/models/tariff-wrapper.rb +194 -0
  957. data/lib/docspace-api-sdk/models/task-progress-response-dto.rb +269 -0
  958. data/lib/docspace-api-sdk/models/task-progress-response-wrapper.rb +194 -0
  959. data/lib/docspace-api-sdk/models/telegram-status-dto.rb +202 -0
  960. data/lib/docspace-api-sdk/models/telegram-status-wrapper.rb +194 -0
  961. data/lib/docspace-api-sdk/models/templates-config-dto.rb +175 -0
  962. data/lib/docspace-api-sdk/models/templates-request-dto.rb +155 -0
  963. data/lib/docspace-api-sdk/models/tenant-ai-access-settings-dto.rb +162 -0
  964. data/lib/docspace-api-sdk/models/tenant-ai-access-settings-request-dto.rb +152 -0
  965. data/lib/docspace-api-sdk/models/tenant-ai-access-settings-wrapper.rb +194 -0
  966. data/lib/docspace-api-sdk/models/tenant-audit-settings-dto.rb +172 -0
  967. data/lib/docspace-api-sdk/models/tenant-audit-settings-request-dto.rb +152 -0
  968. data/lib/docspace-api-sdk/models/tenant-audit-settings-wrapper.rb +194 -0
  969. data/lib/docspace-api-sdk/models/tenant-banner-settings-dto.rb +162 -0
  970. data/lib/docspace-api-sdk/models/tenant-banner-settings-request-dto.rb +152 -0
  971. data/lib/docspace-api-sdk/models/tenant-banner-settings-wrapper.rb +194 -0
  972. data/lib/docspace-api-sdk/models/tenant-deep-link-settings-dto.rb +184 -0
  973. data/lib/docspace-api-sdk/models/tenant-deep-link-settings-wrapper.rb +194 -0
  974. data/lib/docspace-api-sdk/models/tenant-dev-tools-access-settings-dto.rb +162 -0
  975. data/lib/docspace-api-sdk/models/tenant-dev-tools-access-settings-request-dto.rb +152 -0
  976. data/lib/docspace-api-sdk/models/tenant-dev-tools-access-settings-wrapper.rb +194 -0
  977. data/lib/docspace-api-sdk/models/tenant-dto.rb +418 -0
  978. data/lib/docspace-api-sdk/models/tenant-industry.rb +58 -0
  979. data/lib/docspace-api-sdk/models/tenant-quota-dto.rb +610 -0
  980. data/lib/docspace-api-sdk/models/tenant-quota-feature-dto.rb +217 -0
  981. data/lib/docspace-api-sdk/models/tenant-quota-settings-dto.rb +183 -0
  982. data/lib/docspace-api-sdk/models/tenant-quota-settings-request-dto.rb +179 -0
  983. data/lib/docspace-api-sdk/models/tenant-quota-settings-wrapper.rb +194 -0
  984. data/lib/docspace-api-sdk/models/tenant-quota-wrapper.rb +194 -0
  985. data/lib/docspace-api-sdk/models/tenant-status.rb +49 -0
  986. data/lib/docspace-api-sdk/models/tenant-trusted-domains-type.rb +44 -0
  987. data/lib/docspace-api-sdk/models/tenant-user-invitation-settings-dto.rb +196 -0
  988. data/lib/docspace-api-sdk/models/tenant-user-invitation-settings-request-dto.rb +162 -0
  989. data/lib/docspace-api-sdk/models/tenant-user-invitation-settings-wrapper.rb +194 -0
  990. data/lib/docspace-api-sdk/models/tenant-wallet-service-settings-dto.rb +187 -0
  991. data/lib/docspace-api-sdk/models/tenant-wallet-service-settings-wrapper.rb +194 -0
  992. data/lib/docspace-api-sdk/models/tenant-wallet-service.rb +48 -0
  993. data/lib/docspace-api-sdk/models/tenant-wallet-settings-dto.rb +213 -0
  994. data/lib/docspace-api-sdk/models/tenant-wallet-settings-request-dto.rb +152 -0
  995. data/lib/docspace-api-sdk/models/tenant-wallet-settings-wrapper.rb +194 -0
  996. data/lib/docspace-api-sdk/models/tenant-wrapper.rb +194 -0
  997. data/lib/docspace-api-sdk/models/terminate-request-dto.rb +169 -0
  998. data/lib/docspace-api-sdk/models/tfa-app-code-array-wrapper.rb +196 -0
  999. data/lib/docspace-api-sdk/models/tfa-app-code-dto.rb +163 -0
  1000. data/lib/docspace-api-sdk/models/tfa-confirm-data-dto.rb +175 -0
  1001. data/lib/docspace-api-sdk/models/tfa-confirm-data-wrapper.rb +194 -0
  1002. data/lib/docspace-api-sdk/models/tfa-request-dto.rb +223 -0
  1003. data/lib/docspace-api-sdk/models/tfa-settings-array-wrapper.rb +196 -0
  1004. data/lib/docspace-api-sdk/models/tfa-settings-dto.rb +261 -0
  1005. data/lib/docspace-api-sdk/models/tfa-setup-code-dto.rb +175 -0
  1006. data/lib/docspace-api-sdk/models/tfa-setup-code-wrapper.rb +194 -0
  1007. data/lib/docspace-api-sdk/models/tfa-type.rb +44 -0
  1008. data/lib/docspace-api-sdk/models/tfa-validate-request-dto.rb +165 -0
  1009. data/lib/docspace-api-sdk/models/third-party-account-array-wrapper.rb +196 -0
  1010. data/lib/docspace-api-sdk/models/third-party-account-dto.rb +195 -0
  1011. data/lib/docspace-api-sdk/models/third-party-backup-request-dto.rb +208 -0
  1012. data/lib/docspace-api-sdk/models/third-party-check-conversion-request-dto.rb +215 -0
  1013. data/lib/docspace-api-sdk/models/third-party-chunked-upload-session-dto.rb +207 -0
  1014. data/lib/docspace-api-sdk/models/third-party-chunked-upload-session-result-dto.rb +162 -0
  1015. data/lib/docspace-api-sdk/models/third-party-chunked-upload-session-result-wrapper.rb +194 -0
  1016. data/lib/docspace-api-sdk/models/third-party-chunked-upload-session-wrapper.rb +194 -0
  1017. data/lib/docspace-api-sdk/models/third-party-configuration-dto.rb +394 -0
  1018. data/lib/docspace-api-sdk/models/third-party-configuration-wrapper.rb +194 -0
  1019. data/lib/docspace-api-sdk/models/third-party-draft-location.rb +186 -0
  1020. data/lib/docspace-api-sdk/models/third-party-file-array-wrapper.rb +196 -0
  1021. data/lib/docspace-api-sdk/models/third-party-file-dto.rb +928 -0
  1022. data/lib/docspace-api-sdk/models/third-party-file-entry-dto.rb +566 -0
  1023. data/lib/docspace-api-sdk/models/third-party-file-wrapper.rb +194 -0
  1024. data/lib/docspace-api-sdk/models/third-party-folder-array-wrapper.rb +196 -0
  1025. data/lib/docspace-api-sdk/models/third-party-folder-content-dto.rb +247 -0
  1026. data/lib/docspace-api-sdk/models/third-party-folder-content-wrapper.rb +194 -0
  1027. data/lib/docspace-api-sdk/models/third-party-folder-dto.rb +839 -0
  1028. data/lib/docspace-api-sdk/models/third-party-folder-wrapper.rb +194 -0
  1029. data/lib/docspace-api-sdk/models/third-party-request-dto.rb +223 -0
  1030. data/lib/docspace-api-sdk/models/third-party-save-as-pdf-request.rb +168 -0
  1031. data/lib/docspace-api-sdk/models/third-party-upload-session-response-dto.rb +216 -0
  1032. data/lib/docspace-api-sdk/models/third-party-upload-session-response-wrapper.rb +194 -0
  1033. data/lib/docspace-api-sdk/models/thumbnail.rb +46 -0
  1034. data/lib/docspace-api-sdk/models/thumbnails-data-dto.rb +208 -0
  1035. data/lib/docspace-api-sdk/models/thumbnails-data-wrapper.rb +194 -0
  1036. data/lib/docspace-api-sdk/models/thumbnails-request.rb +193 -0
  1037. data/lib/docspace-api-sdk/models/time-bound-dto.rb +163 -0
  1038. data/lib/docspace-api-sdk/models/timezone-array-wrapper.rb +196 -0
  1039. data/lib/docspace-api-sdk/models/timezone-dto.rb +168 -0
  1040. data/lib/docspace-api-sdk/models/token-diagnostics-dto.rb +166 -0
  1041. data/lib/docspace-api-sdk/models/token-diagnostics-wrapper.rb +194 -0
  1042. data/lib/docspace-api-sdk/models/top-up-deposit-request-dto.rb +215 -0
  1043. data/lib/docspace-api-sdk/models/transaction-info-dto.rb +173 -0
  1044. data/lib/docspace-api-sdk/models/turn-on-admin-message-settings-request-dto.rb +152 -0
  1045. data/lib/docspace-api-sdk/models/upcoming-payment-array-wrapper.rb +196 -0
  1046. data/lib/docspace-api-sdk/models/upcoming-payment-dto.rb +236 -0
  1047. data/lib/docspace-api-sdk/models/update-api-key-request.rb +212 -0
  1048. data/lib/docspace-api-sdk/models/update-client-request.rb +424 -0
  1049. data/lib/docspace-api-sdk/models/update-comment-request.rb +222 -0
  1050. data/lib/docspace-api-sdk/models/update-file-request.rb +187 -0
  1051. data/lib/docspace-api-sdk/models/update-folder-metadata-template-request.rb +184 -0
  1052. data/lib/docspace-api-sdk/models/update-group-request.rb +213 -0
  1053. data/lib/docspace-api-sdk/models/update-member-culture-request.rb +187 -0
  1054. data/lib/docspace-api-sdk/models/update-member-request-dto.rb +350 -0
  1055. data/lib/docspace-api-sdk/models/update-members-quota-request-dto-quota.rb +108 -0
  1056. data/lib/docspace-api-sdk/models/update-members-quota-request-dto.rb +164 -0
  1057. data/lib/docspace-api-sdk/models/update-members-request-dto.rb +165 -0
  1058. data/lib/docspace-api-sdk/models/update-metadata-field-request.rb +209 -0
  1059. data/lib/docspace-api-sdk/models/update-metadata-template.rb +164 -0
  1060. data/lib/docspace-api-sdk/models/update-photo-member-request.rb +153 -0
  1061. data/lib/docspace-api-sdk/models/update-room-group-request.rb +203 -0
  1062. data/lib/docspace-api-sdk/models/update-room-request.rb +348 -0
  1063. data/lib/docspace-api-sdk/models/update-rooms-quota-request-dto.rb +165 -0
  1064. data/lib/docspace-api-sdk/models/update-rooms-room-ids-request-dto.rb +155 -0
  1065. data/lib/docspace-api-sdk/models/update-tag-request-dto.rb +216 -0
  1066. data/lib/docspace-api-sdk/models/update-webhooks-config-request-dto.rb +385 -0
  1067. data/lib/docspace-api-sdk/models/upload-result-dto.rb +173 -0
  1068. data/lib/docspace-api-sdk/models/upload-result-wrapper.rb +194 -0
  1069. data/lib/docspace-api-sdk/models/upload-session-response-dto.rb +214 -0
  1070. data/lib/docspace-api-sdk/models/upload-session-response-wrapper.rb +194 -0
  1071. data/lib/docspace-api-sdk/models/usage-space-stat-item-array-wrapper.rb +196 -0
  1072. data/lib/docspace-api-sdk/models/usage-space-stat-item-dto.rb +196 -0
  1073. data/lib/docspace-api-sdk/models/user-config-dto.rb +199 -0
  1074. data/lib/docspace-api-sdk/models/user-exists-response-dto.rb +201 -0
  1075. data/lib/docspace-api-sdk/models/user-exists-response-wrapper.rb +194 -0
  1076. data/lib/docspace-api-sdk/models/user-invitation-request-dto.rb +210 -0
  1077. data/lib/docspace-api-sdk/models/user-invitation.rb +165 -0
  1078. data/lib/docspace-api-sdk/models/validation-error-response.rb +174 -0
  1079. data/lib/docspace-api-sdk/models/validation-result.rb +48 -0
  1080. data/lib/docspace-api-sdk/models/vectorization-status.rb +44 -0
  1081. data/lib/docspace-api-sdk/models/wallet-quantity-request-dto.rb +221 -0
  1082. data/lib/docspace-api-sdk/models/wallet-service-array-wrapper.rb +196 -0
  1083. data/lib/docspace-api-sdk/models/wallet-service-dto.rb +397 -0
  1084. data/lib/docspace-api-sdk/models/wallet-service-wrapper.rb +194 -0
  1085. data/lib/docspace-api-sdk/models/watermark-additions.rb +46 -0
  1086. data/lib/docspace-api-sdk/models/watermark-dto.rb +321 -0
  1087. data/lib/docspace-api-sdk/models/watermark-on-draw-dto.rb +219 -0
  1088. data/lib/docspace-api-sdk/models/watermark-paragraph-dto.rb +165 -0
  1089. data/lib/docspace-api-sdk/models/watermark-request-dto.rb +271 -0
  1090. data/lib/docspace-api-sdk/models/watermark-text-run-dto.rb +177 -0
  1091. data/lib/docspace-api-sdk/models/web-item-security-request-dto.rb +178 -0
  1092. data/lib/docspace-api-sdk/models/web-items-security-request-dto.rb +155 -0
  1093. data/lib/docspace-api-sdk/models/web-plugin-array-wrapper.rb +196 -0
  1094. data/lib/docspace-api-sdk/models/web-plugin-dto.rb +452 -0
  1095. data/lib/docspace-api-sdk/models/web-plugin-request.rb +189 -0
  1096. data/lib/docspace-api-sdk/models/web-plugin-wrapper.rb +194 -0
  1097. data/lib/docspace-api-sdk/models/webhook-group-status.rb +47 -0
  1098. data/lib/docspace-api-sdk/models/webhook-retry-request-dto.rb +155 -0
  1099. data/lib/docspace-api-sdk/models/webhook-trigger-array-wrapper.rb +196 -0
  1100. data/lib/docspace-api-sdk/models/webhook-trigger-dto.rb +173 -0
  1101. data/lib/docspace-api-sdk/models/webhook-trigger.rb +73 -0
  1102. data/lib/docspace-api-sdk/models/webhooks-config-dto.rb +329 -0
  1103. data/lib/docspace-api-sdk/models/webhooks-config-with-status-array-wrapper.rb +196 -0
  1104. data/lib/docspace-api-sdk/models/webhooks-config-with-status-dto.rb +162 -0
  1105. data/lib/docspace-api-sdk/models/webhooks-config-wrapper.rb +194 -0
  1106. data/lib/docspace-api-sdk/models/webhooks-log-array-wrapper.rb +196 -0
  1107. data/lib/docspace-api-sdk/models/webhooks-log-dto.rb +309 -0
  1108. data/lib/docspace-api-sdk/models/webhooks-log-wrapper.rb +194 -0
  1109. data/lib/docspace-api-sdk/models/white-label-item-array-wrapper.rb +196 -0
  1110. data/lib/docspace-api-sdk/models/white-label-item-dto.rb +205 -0
  1111. data/lib/docspace-api-sdk/models/white-label-item-path-dto.rb +164 -0
  1112. data/lib/docspace-api-sdk/models/white-label-item-size-dto.rb +252 -0
  1113. data/lib/docspace-api-sdk/models/white-label-logo-type.rb +57 -0
  1114. data/lib/docspace-api-sdk/models/white-label-request-dto.rb +190 -0
  1115. data/lib/docspace-api-sdk/models/wizard-request-dto.rb +211 -0
  1116. data/lib/docspace-api-sdk/models/wizard-settings-dto.rb +162 -0
  1117. data/lib/docspace-api-sdk/models/wizard-settings-wrapper.rb +194 -0
  1118. data/lib/docspace-api-sdk/models/xlsx-report-response-dto.rb +172 -0
  1119. data/lib/docspace-api-sdk/models/xlsx-report-response-wrapper.rb +194 -0
  1120. data/lib/docspace-api-sdk/version.rb +20 -0
  1121. data/lib/docspace-api-sdk.rb +1153 -0
  1122. metadata +1208 -0
@@ -0,0 +1,3121 @@
1
+ # (c) Copyright Ascensio System SIA 2026
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+
16
+ require 'cgi'
17
+
18
+ module DocspaceApiSdk
19
+ module Rooms
20
+ class RoomsApi
21
+ attr_accessor :api_client
22
+
23
+ def initialize(api_client = ApiClient.default)
24
+ @api_client = api_client
25
+ end
26
+ # Attach tags to a room
27
+ # Attaches the named tags to a room and returns the room with its whole tag set. Tags are portal-wide labels shared by every room, and a name that the catalogue does not hold yet is created there by this call, so attaching is also the short way of adding a tag to the portal. Names already attached to the room are kept as they are, and repeating the call changes nothing, which makes it safe to retry. An empty list is accepted and does nothing, while a blank or overlong name is rejected as an invalid request. The caller must be a manager of the room or an administrator of the portal, and a room in the Archive section is refused with 403. A tag has no identifier of its own and is addressed by name, so `GET api/2.0/files/tags` is what shows which names already exist. Use `DELETE api/2.0/files/rooms/{id}/tags` to detach them again, which leaves the tags themselves in the catalogue.
28
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/add-room-tags/
29
+ # @param id [Integer, String] The room whose tags are changed, named by the identifier that `GET api/2.0/files/rooms` reports for it.
30
+ # @param [Hash] opts the optional parameters
31
+ # @option opts [BatchTagsRequestDto] :batch_tags_request_dto The names to attach or to detach.
32
+ # @return [FolderWrapper, ThirdPartyFolderWrapper]
33
+ def add_room_tags(id, opts = {})
34
+ data, _status_code, _headers = add_room_tags_with_http_info(id, opts)
35
+ data
36
+ end
37
+
38
+ # Attach tags to a room
39
+ # Attaches the named tags to a room and returns the room with its whole tag set. Tags are portal-wide labels shared by every room, and a name that the catalogue does not hold yet is created there by this call, so attaching is also the short way of adding a tag to the portal. Names already attached to the room are kept as they are, and repeating the call changes nothing, which makes it safe to retry. An empty list is accepted and does nothing, while a blank or overlong name is rejected as an invalid request. The caller must be a manager of the room or an administrator of the portal, and a room in the Archive section is refused with 403. A tag has no identifier of its own and is addressed by name, so `GET api/2.0/files/tags` is what shows which names already exist. Use `DELETE api/2.0/files/rooms/{id}/tags` to detach them again, which leaves the tags themselves in the catalogue.
40
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/add-room-tags/
41
+ # @param id [Integer, String] The room whose tags are changed, named by the identifier that `GET api/2.0/files/rooms` reports for it.
42
+ # @param [Hash] opts the optional parameters
43
+ # @option opts [BatchTagsRequestDto] :batch_tags_request_dto The names to attach or to detach.
44
+ # @return [Array<(FolderWrapper, ThirdPartyFolderWrapper, Integer, Hash)>] FolderWrapper, ThirdPartyFolderWrapper data, response status code and response headers
45
+ def add_room_tags_with_http_info(id, opts = {})
46
+ if @api_client.config.debugging
47
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.add_room_tags ...'
48
+ end
49
+ # verify the required parameter 'id' is set
50
+ if @api_client.config.client_side_validation && id.nil?
51
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.add_room_tags"
52
+ end
53
+ # resource path
54
+ local_var_path = '/api/2.0/files/rooms/{id}/tags'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
55
+
56
+ # query parameters
57
+ query_params = opts[:query_params] || {}
58
+
59
+ # header parameters
60
+ header_params = opts[:header_params] || {}
61
+ # HTTP header 'Accept' (if needed)
62
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
63
+ # HTTP header 'Content-Type'
64
+ content_type = @api_client.select_header_content_type(['application/json'])
65
+ if !content_type.nil?
66
+ header_params['Content-Type'] = content_type
67
+ end
68
+
69
+ # form parameters
70
+ form_params = opts[:form_params] || {}
71
+
72
+ # http body (model)
73
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'batch_tags_request_dto'])
74
+
75
+ # return_type
76
+ return_type = opts[:debug_return_type] || (id.is_a?(String) ? 'ThirdPartyFolderWrapper' : 'FolderWrapper')
77
+
78
+ # auth_names
79
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
80
+
81
+ new_options = opts.merge(
82
+ :operation => :"Rooms::RoomsApi.add_room_tags",
83
+ :header_params => header_params,
84
+ :query_params => query_params,
85
+ :form_params => form_params,
86
+ :body => post_body,
87
+ :auth_names => auth_names,
88
+ :return_type => return_type
89
+ )
90
+
91
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
92
+ if @api_client.config.debugging
93
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#add_room_tags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
94
+ end
95
+ return data, status_code, headers
96
+ end
97
+
98
+ # Archive a room
99
+ # Queues a background job that moves one room from the Rooms section to the Archive section, and returns the operation record of that job. An archived room stays readable to its members and becomes read only: files cannot be created, renamed or edited in it, and its settings, tags, logo and links can no longer be changed, which is why many other room operations answer an archived room with a refusal. The caller must be a manager of the room; administrators of the portal cannot archive a room they were not invited to, and a room template cannot be archived at all and is answered as missing. The room is not archived when the response arrives: poll `GET api/2.0/files/fileops` until `finished` is true. Archiving an already archived room is harmless. `deleteAfter` decides only how long the finished record survives, not what happens to the room. Use `PUT api/2.0/files/rooms/{id}/unarchive` to bring the room back.
100
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/archive-room/
101
+ # @param id [Integer, String] The room to move, named by the identifier that `GET api/2.0/files/rooms` reports for it.
102
+ # @param [Hash] opts the optional parameters
103
+ # @option opts [ArchiveRoomRequest] :archive_room_request The body of the request. It carries only the lifetime of the job record, so an empty object is a normal request.
104
+ # @return [FileOperationWrapper]
105
+ def archive_room(id, opts = {})
106
+ data, _status_code, _headers = archive_room_with_http_info(id, opts)
107
+ data
108
+ end
109
+
110
+ # Archive a room
111
+ # Queues a background job that moves one room from the Rooms section to the Archive section, and returns the operation record of that job. An archived room stays readable to its members and becomes read only: files cannot be created, renamed or edited in it, and its settings, tags, logo and links can no longer be changed, which is why many other room operations answer an archived room with a refusal. The caller must be a manager of the room; administrators of the portal cannot archive a room they were not invited to, and a room template cannot be archived at all and is answered as missing. The room is not archived when the response arrives: poll `GET api/2.0/files/fileops` until `finished` is true. Archiving an already archived room is harmless. `deleteAfter` decides only how long the finished record survives, not what happens to the room. Use `PUT api/2.0/files/rooms/{id}/unarchive` to bring the room back.
112
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/archive-room/
113
+ # @param id [Integer, String] The room to move, named by the identifier that `GET api/2.0/files/rooms` reports for it.
114
+ # @param [Hash] opts the optional parameters
115
+ # @option opts [ArchiveRoomRequest] :archive_room_request The body of the request. It carries only the lifetime of the job record, so an empty object is a normal request.
116
+ # @return [Array<(FileOperationWrapper, Integer, Hash)>] FileOperationWrapper data, response status code and response headers
117
+ def archive_room_with_http_info(id, opts = {})
118
+ if @api_client.config.debugging
119
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.archive_room ...'
120
+ end
121
+ # verify the required parameter 'id' is set
122
+ if @api_client.config.client_side_validation && id.nil?
123
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.archive_room"
124
+ end
125
+ # resource path
126
+ local_var_path = '/api/2.0/files/rooms/{id}/archive'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
127
+
128
+ # query parameters
129
+ query_params = opts[:query_params] || {}
130
+
131
+ # header parameters
132
+ header_params = opts[:header_params] || {}
133
+ # HTTP header 'Accept' (if needed)
134
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
135
+ # HTTP header 'Content-Type'
136
+ content_type = @api_client.select_header_content_type(['application/json'])
137
+ if !content_type.nil?
138
+ header_params['Content-Type'] = content_type
139
+ end
140
+
141
+ # form parameters
142
+ form_params = opts[:form_params] || {}
143
+
144
+ # http body (model)
145
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'archive_room_request'])
146
+
147
+ # return_type
148
+ return_type = opts[:debug_return_type] || 'FileOperationWrapper'
149
+
150
+ # auth_names
151
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
152
+
153
+ new_options = opts.merge(
154
+ :operation => :"Rooms::RoomsApi.archive_room",
155
+ :header_params => header_params,
156
+ :query_params => query_params,
157
+ :form_params => form_params,
158
+ :body => post_body,
159
+ :auth_names => auth_names,
160
+ :return_type => return_type
161
+ )
162
+
163
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
164
+ if @api_client.config.debugging
165
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#archive_room\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
166
+ end
167
+ return data, status_code, headers
168
+ end
169
+
170
+ # Change the room cover
171
+ # Sets the cover picture and the background colour a room is shown with, and returns the whole room afterwards. `cover` accepts only an identifier listed by `GET api/2.0/files/rooms/covers`, and `color` only six hexadecimal digits with no leading number sign, so anything else is rejected as an invalid request. Either field may be sent on its own, an empty `cover` clears the picture, an empty `color` restores the default one, and an empty body leaves the room untouched. The cover is what the room shows while it has no uploaded logo: setting a logo with `POST api/2.0/files/rooms/{id}/logo` hides the cover without erasing it, and deleting that logo brings it back. The caller must be a manager of the room, an archived room is refused with 403, and an unknown or deleted room is answered with 404. Repeating the same request is harmless, and the cover survives archiving and unarchiving.
172
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/change-room-cover/
173
+ # @param id [Integer, String] The room to change, named by the identifier that `GET api/2.0/files/rooms` reports for it.
174
+ # @param cover_request_dto [CoverRequestDto] The cover and the colour to apply. Either half may be sent on its own, and an empty object leaves the room as it is.
175
+ # @param [Hash] opts the optional parameters
176
+ # @return [FolderWrapper, ThirdPartyFolderWrapper]
177
+ def change_room_cover(id, cover_request_dto, opts = {})
178
+ data, _status_code, _headers = change_room_cover_with_http_info(id, cover_request_dto, opts)
179
+ data
180
+ end
181
+
182
+ # Change the room cover
183
+ # Sets the cover picture and the background colour a room is shown with, and returns the whole room afterwards. `cover` accepts only an identifier listed by `GET api/2.0/files/rooms/covers`, and `color` only six hexadecimal digits with no leading number sign, so anything else is rejected as an invalid request. Either field may be sent on its own, an empty `cover` clears the picture, an empty `color` restores the default one, and an empty body leaves the room untouched. The cover is what the room shows while it has no uploaded logo: setting a logo with `POST api/2.0/files/rooms/{id}/logo` hides the cover without erasing it, and deleting that logo brings it back. The caller must be a manager of the room, an archived room is refused with 403, and an unknown or deleted room is answered with 404. Repeating the same request is harmless, and the cover survives archiving and unarchiving.
184
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/change-room-cover/
185
+ # @param id [Integer, String] The room to change, named by the identifier that `GET api/2.0/files/rooms` reports for it.
186
+ # @param cover_request_dto [CoverRequestDto] The cover and the colour to apply. Either half may be sent on its own, and an empty object leaves the room as it is.
187
+ # @param [Hash] opts the optional parameters
188
+ # @return [Array<(FolderWrapper, ThirdPartyFolderWrapper, Integer, Hash)>] FolderWrapper, ThirdPartyFolderWrapper data, response status code and response headers
189
+ def change_room_cover_with_http_info(id, cover_request_dto, opts = {})
190
+ if @api_client.config.debugging
191
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.change_room_cover ...'
192
+ end
193
+ # verify the required parameter 'id' is set
194
+ if @api_client.config.client_side_validation && id.nil?
195
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.change_room_cover"
196
+ end
197
+ # verify the required parameter 'cover_request_dto' is set
198
+ if @api_client.config.client_side_validation && cover_request_dto.nil?
199
+ fail ArgumentError, "Missing the required parameter 'cover_request_dto' when calling Rooms::RoomsApi.change_room_cover"
200
+ end
201
+ # resource path
202
+ local_var_path = '/api/2.0/files/rooms/{id}/cover'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
203
+
204
+ # query parameters
205
+ query_params = opts[:query_params] || {}
206
+
207
+ # header parameters
208
+ header_params = opts[:header_params] || {}
209
+ # HTTP header 'Accept' (if needed)
210
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
211
+ # HTTP header 'Content-Type'
212
+ content_type = @api_client.select_header_content_type(['application/json'])
213
+ if !content_type.nil?
214
+ header_params['Content-Type'] = content_type
215
+ end
216
+
217
+ # form parameters
218
+ form_params = opts[:form_params] || {}
219
+
220
+ # http body (model)
221
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(cover_request_dto)
222
+
223
+ # return_type
224
+ return_type = opts[:debug_return_type] || (id.is_a?(String) ? 'ThirdPartyFolderWrapper' : 'FolderWrapper')
225
+
226
+ # auth_names
227
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
228
+
229
+ new_options = opts.merge(
230
+ :operation => :"Rooms::RoomsApi.change_room_cover",
231
+ :header_params => header_params,
232
+ :query_params => query_params,
233
+ :form_params => form_params,
234
+ :body => post_body,
235
+ :auth_names => auth_names,
236
+ :return_type => return_type
237
+ )
238
+
239
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
240
+ if @api_client.config.debugging
241
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#change_room_cover\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
242
+ end
243
+ return data, status_code, headers
244
+ end
245
+
246
+ # Create a room
247
+ # Creates a room in the portal Rooms section and returns it. `roomType` decides which sharing links, member roles and form features the room offers, and it cannot be changed afterwards, so a room of the wrong kind has to be recreated. The caller must be the portal owner, a portal administrator or a room administrator; a user or a guest is refused, and so is a public room while the portal forbids external sharing. `title` is required and must not be blank: characters a folder name cannot hold are replaced with underscores and the rest is truncated, so the stored title can differ from the one sent and two rooms can share it. `quota` is accepted only while the per-room quota feature is on and must stay within the portal quota, `cover` only for an id returned by `GET api/2.0/files/rooms/covers`, and `color` as six hexadecimal digits with no leading number sign. Tag names the portal does not know yet are added to the tag catalogue. `share` is not implemented and any non-empty value is rejected, so invite members afterwards with `PUT api/2.0/files/rooms/{id}/share`. Passing the portal room limit ends the call as a billing refusal and creates nothing.
248
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/create-room/
249
+ # @param [Hash] opts the optional parameters
250
+ # @option opts [CreateRoomRequestDto] :create_room_request_dto
251
+ # @return [FolderWrapper]
252
+ def create_room(opts = {})
253
+ data, _status_code, _headers = create_room_with_http_info(opts)
254
+ data
255
+ end
256
+
257
+ # Create a room
258
+ # Creates a room in the portal Rooms section and returns it. `roomType` decides which sharing links, member roles and form features the room offers, and it cannot be changed afterwards, so a room of the wrong kind has to be recreated. The caller must be the portal owner, a portal administrator or a room administrator; a user or a guest is refused, and so is a public room while the portal forbids external sharing. `title` is required and must not be blank: characters a folder name cannot hold are replaced with underscores and the rest is truncated, so the stored title can differ from the one sent and two rooms can share it. `quota` is accepted only while the per-room quota feature is on and must stay within the portal quota, `cover` only for an id returned by `GET api/2.0/files/rooms/covers`, and `color` as six hexadecimal digits with no leading number sign. Tag names the portal does not know yet are added to the tag catalogue. `share` is not implemented and any non-empty value is rejected, so invite members afterwards with `PUT api/2.0/files/rooms/{id}/share`. Passing the portal room limit ends the call as a billing refusal and creates nothing.
259
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/create-room/
260
+ # @param [Hash] opts the optional parameters
261
+ # @option opts [CreateRoomRequestDto] :create_room_request_dto
262
+ # @return [Array<(FolderWrapper, Integer, Hash)>] FolderWrapper data, response status code and response headers
263
+ def create_room_with_http_info(opts = {})
264
+ if @api_client.config.debugging
265
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.create_room ...'
266
+ end
267
+ # resource path
268
+ local_var_path = '/api/2.0/files/rooms'
269
+
270
+ # query parameters
271
+ query_params = opts[:query_params] || {}
272
+
273
+ # header parameters
274
+ header_params = opts[:header_params] || {}
275
+ # HTTP header 'Accept' (if needed)
276
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
277
+ # HTTP header 'Content-Type'
278
+ content_type = @api_client.select_header_content_type(['application/json'])
279
+ if !content_type.nil?
280
+ header_params['Content-Type'] = content_type
281
+ end
282
+
283
+ # form parameters
284
+ form_params = opts[:form_params] || {}
285
+
286
+ # http body (model)
287
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'create_room_request_dto'])
288
+
289
+ # return_type
290
+ return_type = opts[:debug_return_type] || 'FolderWrapper'
291
+
292
+ # auth_names
293
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
294
+
295
+ new_options = opts.merge(
296
+ :operation => :"Rooms::RoomsApi.create_room",
297
+ :header_params => header_params,
298
+ :query_params => query_params,
299
+ :form_params => form_params,
300
+ :body => post_body,
301
+ :auth_names => auth_names,
302
+ :return_type => return_type
303
+ )
304
+
305
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
306
+ if @api_client.config.debugging
307
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#create_room\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
308
+ end
309
+ return data, status_code, headers
310
+ end
311
+
312
+ # Create a room from the template
313
+ # Starts a background job that copies a room template into a new room of the Rooms section, and answers with the same progress record that `GET api/2.0/files/rooms/fromtemplate/status` returns. The caller must be able to read the template and to create rooms at all, so a user or a guest is refused, and the checks run before the job is queued. The room does not exist when the response arrives: poll the status operation until `isCompleted` is true, then take `roomId` from it, and treat a non-empty `error` as a failed job. Only one such job is kept per account, and a finished one is discarded when the next is started, so a second creation loses the record of the first. Anything not sent is inherited from the template, and `copyLogo` keeps the template logo and makes `logo` pointless. `quota` is accepted only while the per-room quota feature is on, and a template of a public room cannot be instantiated while the portal forbids external sharing. A template that does not exist or cannot be read is answered as missing.
314
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/create-room-from-template/
315
+ # @param [Hash] opts the optional parameters
316
+ # @option opts [CreateRoomFromTemplateDto] :create_room_from_template_dto
317
+ # @return [RoomFromTemplateStatusWrapper]
318
+ def create_room_from_template(opts = {})
319
+ data, _status_code, _headers = create_room_from_template_with_http_info(opts)
320
+ data
321
+ end
322
+
323
+ # Create a room from the template
324
+ # Starts a background job that copies a room template into a new room of the Rooms section, and answers with the same progress record that `GET api/2.0/files/rooms/fromtemplate/status` returns. The caller must be able to read the template and to create rooms at all, so a user or a guest is refused, and the checks run before the job is queued. The room does not exist when the response arrives: poll the status operation until `isCompleted` is true, then take `roomId` from it, and treat a non-empty `error` as a failed job. Only one such job is kept per account, and a finished one is discarded when the next is started, so a second creation loses the record of the first. Anything not sent is inherited from the template, and `copyLogo` keeps the template logo and makes `logo` pointless. `quota` is accepted only while the per-room quota feature is on, and a template of a public room cannot be instantiated while the portal forbids external sharing. A template that does not exist or cannot be read is answered as missing.
325
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/create-room-from-template/
326
+ # @param [Hash] opts the optional parameters
327
+ # @option opts [CreateRoomFromTemplateDto] :create_room_from_template_dto
328
+ # @return [Array<(RoomFromTemplateStatusWrapper, Integer, Hash)>] RoomFromTemplateStatusWrapper data, response status code and response headers
329
+ def create_room_from_template_with_http_info(opts = {})
330
+ if @api_client.config.debugging
331
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.create_room_from_template ...'
332
+ end
333
+ # resource path
334
+ local_var_path = '/api/2.0/files/rooms/fromtemplate'
335
+
336
+ # query parameters
337
+ query_params = opts[:query_params] || {}
338
+
339
+ # header parameters
340
+ header_params = opts[:header_params] || {}
341
+ # HTTP header 'Accept' (if needed)
342
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
343
+ # HTTP header 'Content-Type'
344
+ content_type = @api_client.select_header_content_type(['application/json'])
345
+ if !content_type.nil?
346
+ header_params['Content-Type'] = content_type
347
+ end
348
+
349
+ # form parameters
350
+ form_params = opts[:form_params] || {}
351
+
352
+ # http body (model)
353
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'create_room_from_template_dto'])
354
+
355
+ # return_type
356
+ return_type = opts[:debug_return_type] || 'RoomFromTemplateStatusWrapper'
357
+
358
+ # auth_names
359
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
360
+
361
+ new_options = opts.merge(
362
+ :operation => :"Rooms::RoomsApi.create_room_from_template",
363
+ :header_params => header_params,
364
+ :query_params => query_params,
365
+ :form_params => form_params,
366
+ :body => post_body,
367
+ :auth_names => auth_names,
368
+ :return_type => return_type
369
+ )
370
+
371
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
372
+ if @api_client.config.debugging
373
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#create_room_from_template\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
374
+ end
375
+ return data, status_code, headers
376
+ end
377
+
378
+ # Set the room logo
379
+ # Turns an image already uploaded to the portal into the logo of a room and returns the room with the addresses of the four logo sizes. This is the second half of a two-step flow: upload the picture with `POST api/2.0/files/logos` first and pass the path it returns as `tmpFile`, because the image itself is never sent here. The temporary file belongs to the account that uploaded it and is consumed by this call, so it cannot be reused for a second room and a path somebody else uploaded is refused. `x`, `y`, `width` and `height` crop the picture; sending a position without a size is rejected as an invalid request, while a size without a position is accepted. An empty `tmpFile` leaves the room as it is. A logo replaces the cover in the interface without erasing it, and removing the logo brings the cover back. The caller must be a manager of the room, an archived room is refused, and an unknown room is answered with 404.
380
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/create-room-logo/
381
+ # @param id [Integer, String] The room the logo is set on.
382
+ # @param logo_request [LogoRequest] The uploaded picture and the piece of it to use.
383
+ # @param [Hash] opts the optional parameters
384
+ # @return [FolderWrapper, ThirdPartyFolderWrapper]
385
+ def create_room_logo(id, logo_request, opts = {})
386
+ data, _status_code, _headers = create_room_logo_with_http_info(id, logo_request, opts)
387
+ data
388
+ end
389
+
390
+ # Set the room logo
391
+ # Turns an image already uploaded to the portal into the logo of a room and returns the room with the addresses of the four logo sizes. This is the second half of a two-step flow: upload the picture with `POST api/2.0/files/logos` first and pass the path it returns as `tmpFile`, because the image itself is never sent here. The temporary file belongs to the account that uploaded it and is consumed by this call, so it cannot be reused for a second room and a path somebody else uploaded is refused. `x`, `y`, `width` and `height` crop the picture; sending a position without a size is rejected as an invalid request, while a size without a position is accepted. An empty `tmpFile` leaves the room as it is. A logo replaces the cover in the interface without erasing it, and removing the logo brings the cover back. The caller must be a manager of the room, an archived room is refused, and an unknown room is answered with 404.
392
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/create-room-logo/
393
+ # @param id [Integer, String] The room the logo is set on.
394
+ # @param logo_request [LogoRequest] The uploaded picture and the piece of it to use.
395
+ # @param [Hash] opts the optional parameters
396
+ # @return [Array<(FolderWrapper, ThirdPartyFolderWrapper, Integer, Hash)>] FolderWrapper, ThirdPartyFolderWrapper data, response status code and response headers
397
+ def create_room_logo_with_http_info(id, logo_request, opts = {})
398
+ if @api_client.config.debugging
399
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.create_room_logo ...'
400
+ end
401
+ # verify the required parameter 'id' is set
402
+ if @api_client.config.client_side_validation && id.nil?
403
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.create_room_logo"
404
+ end
405
+ # verify the required parameter 'logo_request' is set
406
+ if @api_client.config.client_side_validation && logo_request.nil?
407
+ fail ArgumentError, "Missing the required parameter 'logo_request' when calling Rooms::RoomsApi.create_room_logo"
408
+ end
409
+ # resource path
410
+ local_var_path = '/api/2.0/files/rooms/{id}/logo'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
411
+
412
+ # query parameters
413
+ query_params = opts[:query_params] || {}
414
+
415
+ # header parameters
416
+ header_params = opts[:header_params] || {}
417
+ # HTTP header 'Accept' (if needed)
418
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
419
+ # HTTP header 'Content-Type'
420
+ content_type = @api_client.select_header_content_type(['application/json'])
421
+ if !content_type.nil?
422
+ header_params['Content-Type'] = content_type
423
+ end
424
+
425
+ # form parameters
426
+ form_params = opts[:form_params] || {}
427
+
428
+ # http body (model)
429
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(logo_request)
430
+
431
+ # return_type
432
+ return_type = opts[:debug_return_type] || (id.is_a?(String) ? 'ThirdPartyFolderWrapper' : 'FolderWrapper')
433
+
434
+ # auth_names
435
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
436
+
437
+ new_options = opts.merge(
438
+ :operation => :"Rooms::RoomsApi.create_room_logo",
439
+ :header_params => header_params,
440
+ :query_params => query_params,
441
+ :form_params => form_params,
442
+ :body => post_body,
443
+ :auth_names => auth_names,
444
+ :return_type => return_type
445
+ )
446
+
447
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
448
+ if @api_client.config.debugging
449
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#create_room_logo\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
450
+ end
451
+ return data, status_code, headers
452
+ end
453
+
454
+ # Create a room tag
455
+ # Adds a custom tag to the portal-wide catalog of room tags and answers with the stored name. Tags are shared by the whole portal instead of belonging to the caller: once the tag exists, every room manager can attach it to their own rooms with `PUT api/2.0/files/rooms/{id}/tags`, and that call also creates a tag it does not find. Creating a name that is already in the catalog returns the existing tag unchanged rather than a duplicate or an error, so repeating the call after a timeout is safe. A blank name, or one longer than the published limit, is rejected as an invalid request. Only a room manager or a portal administrator may create a tag, and a user or a guest is refused. The answer is the name as stored, and that name is the value to send in the `tags` filter of `GET api/2.0/files/rooms` and in the room tag calls. The catalog itself is read with `GET api/2.0/files/tags`.
456
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/create-room-tag/
457
+ # @param [Hash] opts the optional parameters
458
+ # @option opts [CreateTagRequestDto] :create_tag_request_dto
459
+ # @return [StringWrapper]
460
+ def create_room_tag(opts = {})
461
+ data, _status_code, _headers = create_room_tag_with_http_info(opts)
462
+ data
463
+ end
464
+
465
+ # Create a room tag
466
+ # Adds a custom tag to the portal-wide catalog of room tags and answers with the stored name. Tags are shared by the whole portal instead of belonging to the caller: once the tag exists, every room manager can attach it to their own rooms with `PUT api/2.0/files/rooms/{id}/tags`, and that call also creates a tag it does not find. Creating a name that is already in the catalog returns the existing tag unchanged rather than a duplicate or an error, so repeating the call after a timeout is safe. A blank name, or one longer than the published limit, is rejected as an invalid request. Only a room manager or a portal administrator may create a tag, and a user or a guest is refused. The answer is the name as stored, and that name is the value to send in the `tags` filter of `GET api/2.0/files/rooms` and in the room tag calls. The catalog itself is read with `GET api/2.0/files/tags`.
467
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/create-room-tag/
468
+ # @param [Hash] opts the optional parameters
469
+ # @option opts [CreateTagRequestDto] :create_tag_request_dto
470
+ # @return [Array<(StringWrapper, Integer, Hash)>] StringWrapper data, response status code and response headers
471
+ def create_room_tag_with_http_info(opts = {})
472
+ if @api_client.config.debugging
473
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.create_room_tag ...'
474
+ end
475
+ # resource path
476
+ local_var_path = '/api/2.0/files/tags'
477
+
478
+ # query parameters
479
+ query_params = opts[:query_params] || {}
480
+
481
+ # header parameters
482
+ header_params = opts[:header_params] || {}
483
+ # HTTP header 'Accept' (if needed)
484
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
485
+ # HTTP header 'Content-Type'
486
+ content_type = @api_client.select_header_content_type(['application/json'])
487
+ if !content_type.nil?
488
+ header_params['Content-Type'] = content_type
489
+ end
490
+
491
+ # form parameters
492
+ form_params = opts[:form_params] || {}
493
+
494
+ # http body (model)
495
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'create_tag_request_dto'])
496
+
497
+ # return_type
498
+ return_type = opts[:debug_return_type] || 'StringWrapper'
499
+
500
+ # auth_names
501
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
502
+
503
+ new_options = opts.merge(
504
+ :operation => :"Rooms::RoomsApi.create_room_tag",
505
+ :header_params => header_params,
506
+ :query_params => query_params,
507
+ :form_params => form_params,
508
+ :body => post_body,
509
+ :auth_names => auth_names,
510
+ :return_type => return_type
511
+ )
512
+
513
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
514
+ if @api_client.config.debugging
515
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#create_room_tag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
516
+ end
517
+ return data, status_code, headers
518
+ end
519
+
520
+ # Create a room template
521
+ # Queues a background job that turns an existing room into a reusable room template, and returns the state of that job right away. The template lands in the portal's Templates section, inherits the source room's type, privacy, indexing, storage limit, lifetime, download and watermark settings, and receives copies of the room's files together with its ordinary subfolders and everything inside them; the service subfolders a room keeps for its own workflows are left out. The caller needs room-manager rights on the source room, and the room must not be archived: a room that cannot be found under Rooms is answered as missing, and every other refusal comes back as a rejection. The template is not ready when the response arrives, so poll `GET api/2.0/files/roomtemplate/status` until `isCompleted` is true, then read `templateId`; a non-empty `error` there means the job failed and the half-built template was removed. Only one template creation is tracked per caller, and starting another replaces the previous record. Setting `public` to true discards `share` and `groups` and shares the finished template with everyone instead, while `copyLogo` reuses the source room's own picture and makes `logo` irrelevant.
522
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/create-room-template/
523
+ # @param [Hash] opts the optional parameters
524
+ # @option opts [RoomTemplateDto] :room_template_dto
525
+ # @return [RoomTemplateStatusWrapper]
526
+ def create_room_template(opts = {})
527
+ data, _status_code, _headers = create_room_template_with_http_info(opts)
528
+ data
529
+ end
530
+
531
+ # Create a room template
532
+ # Queues a background job that turns an existing room into a reusable room template, and returns the state of that job right away. The template lands in the portal's Templates section, inherits the source room's type, privacy, indexing, storage limit, lifetime, download and watermark settings, and receives copies of the room's files together with its ordinary subfolders and everything inside them; the service subfolders a room keeps for its own workflows are left out. The caller needs room-manager rights on the source room, and the room must not be archived: a room that cannot be found under Rooms is answered as missing, and every other refusal comes back as a rejection. The template is not ready when the response arrives, so poll `GET api/2.0/files/roomtemplate/status` until `isCompleted` is true, then read `templateId`; a non-empty `error` there means the job failed and the half-built template was removed. Only one template creation is tracked per caller, and starting another replaces the previous record. Setting `public` to true discards `share` and `groups` and shares the finished template with everyone instead, while `copyLogo` reuses the source room's own picture and makes `logo` irrelevant.
533
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/create-room-template/
534
+ # @param [Hash] opts the optional parameters
535
+ # @option opts [RoomTemplateDto] :room_template_dto
536
+ # @return [Array<(RoomTemplateStatusWrapper, Integer, Hash)>] RoomTemplateStatusWrapper data, response status code and response headers
537
+ def create_room_template_with_http_info(opts = {})
538
+ if @api_client.config.debugging
539
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.create_room_template ...'
540
+ end
541
+ # resource path
542
+ local_var_path = '/api/2.0/files/roomtemplate'
543
+
544
+ # query parameters
545
+ query_params = opts[:query_params] || {}
546
+
547
+ # header parameters
548
+ header_params = opts[:header_params] || {}
549
+ # HTTP header 'Accept' (if needed)
550
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
551
+ # HTTP header 'Content-Type'
552
+ content_type = @api_client.select_header_content_type(['application/json'])
553
+ if !content_type.nil?
554
+ header_params['Content-Type'] = content_type
555
+ end
556
+
557
+ # form parameters
558
+ form_params = opts[:form_params] || {}
559
+
560
+ # http body (model)
561
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'room_template_dto'])
562
+
563
+ # return_type
564
+ return_type = opts[:debug_return_type] || 'RoomTemplateStatusWrapper'
565
+
566
+ # auth_names
567
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
568
+
569
+ new_options = opts.merge(
570
+ :operation => :"Rooms::RoomsApi.create_room_template",
571
+ :header_params => header_params,
572
+ :query_params => query_params,
573
+ :form_params => form_params,
574
+ :body => post_body,
575
+ :auth_names => auth_names,
576
+ :return_type => return_type
577
+ )
578
+
579
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
580
+ if @api_client.config.debugging
581
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#create_room_template\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
582
+ end
583
+ return data, status_code, headers
584
+ end
585
+
586
+ # Create a third-party room
587
+ # Turns a folder of a connected third-party storage account into a room of the `Rooms` section, so that the files of the room keep living in that storage instead of the portal. Connect the account first with `POST api/2.0/files/thirdparty` and take the path parameter from a folder listing of that account: it is the identifier of a folder in the storage, not of a room. One connected account can back one room only, so a second call over the same account is refused, and so is an account that was not connected for room storage. The caller needs the right to create rooms, which a portal user and a guest do not have; a public room is refused while the administrator restricts external access, and reaching the room limit of the tariff is refused too. With `createAsNewFolder` the room is a new subfolder named after `title`, otherwise the folder from the path becomes the room itself and `tags` and `logo` are then dropped. A third-party room keeps neither `indexing` nor `denyDownload` in either mode: both are accepted and ignored, and the room reads back with them off. The answer is the new room, whose identifiers are strings; a public or a form-filling room already has its primary link, readable with `GET api/2.0/files/rooms/{id}/link`.
588
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/create-room-third-party/
589
+ # @param id [String] The identifier of the folder in the connected third-party storage that becomes the room, or receives it as a subfolder. Folder identifiers of a connected account are strings and are returned by the folder listings of that account.
590
+ # @param create_third_party_room_request [CreateThirdPartyRoomRequest] The settings of the room to be created out of the folder.
591
+ # @param [Hash] opts the optional parameters
592
+ # @return [ThirdPartyFolderWrapper]
593
+ def create_room_third_party(id, create_third_party_room_request, opts = {})
594
+ data, _status_code, _headers = create_room_third_party_with_http_info(id, create_third_party_room_request, opts)
595
+ data
596
+ end
597
+
598
+ # Create a third-party room
599
+ # Turns a folder of a connected third-party storage account into a room of the `Rooms` section, so that the files of the room keep living in that storage instead of the portal. Connect the account first with `POST api/2.0/files/thirdparty` and take the path parameter from a folder listing of that account: it is the identifier of a folder in the storage, not of a room. One connected account can back one room only, so a second call over the same account is refused, and so is an account that was not connected for room storage. The caller needs the right to create rooms, which a portal user and a guest do not have; a public room is refused while the administrator restricts external access, and reaching the room limit of the tariff is refused too. With `createAsNewFolder` the room is a new subfolder named after `title`, otherwise the folder from the path becomes the room itself and `tags` and `logo` are then dropped. A third-party room keeps neither `indexing` nor `denyDownload` in either mode: both are accepted and ignored, and the room reads back with them off. The answer is the new room, whose identifiers are strings; a public or a form-filling room already has its primary link, readable with `GET api/2.0/files/rooms/{id}/link`.
600
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/create-room-third-party/
601
+ # @param id [String] The identifier of the folder in the connected third-party storage that becomes the room, or receives it as a subfolder. Folder identifiers of a connected account are strings and are returned by the folder listings of that account.
602
+ # @param create_third_party_room_request [CreateThirdPartyRoomRequest] The settings of the room to be created out of the folder.
603
+ # @param [Hash] opts the optional parameters
604
+ # @return [Array<(ThirdPartyFolderWrapper, Integer, Hash)>] ThirdPartyFolderWrapper data, response status code and response headers
605
+ def create_room_third_party_with_http_info(id, create_third_party_room_request, opts = {})
606
+ if @api_client.config.debugging
607
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.create_room_third_party ...'
608
+ end
609
+ # verify the required parameter 'id' is set
610
+ if @api_client.config.client_side_validation && id.nil?
611
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.create_room_third_party"
612
+ end
613
+ # verify the required parameter 'create_third_party_room_request' is set
614
+ if @api_client.config.client_side_validation && create_third_party_room_request.nil?
615
+ fail ArgumentError, "Missing the required parameter 'create_third_party_room_request' when calling Rooms::RoomsApi.create_room_third_party"
616
+ end
617
+ # resource path
618
+ local_var_path = '/api/2.0/files/rooms/thirdparty/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
619
+
620
+ # query parameters
621
+ query_params = opts[:query_params] || {}
622
+
623
+ # header parameters
624
+ header_params = opts[:header_params] || {}
625
+ # HTTP header 'Accept' (if needed)
626
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
627
+ # HTTP header 'Content-Type'
628
+ content_type = @api_client.select_header_content_type(['application/json'])
629
+ if !content_type.nil?
630
+ header_params['Content-Type'] = content_type
631
+ end
632
+
633
+ # form parameters
634
+ form_params = opts[:form_params] || {}
635
+
636
+ # http body (model)
637
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(create_third_party_room_request)
638
+
639
+ # return_type
640
+ return_type = opts[:debug_return_type] || 'ThirdPartyFolderWrapper'
641
+
642
+ # auth_names
643
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
644
+
645
+ new_options = opts.merge(
646
+ :operation => :"Rooms::RoomsApi.create_room_third_party",
647
+ :header_params => header_params,
648
+ :query_params => query_params,
649
+ :form_params => form_params,
650
+ :body => post_body,
651
+ :auth_names => auth_names,
652
+ :return_type => return_type
653
+ )
654
+
655
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
656
+ if @api_client.config.debugging
657
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#create_room_third_party\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
658
+ end
659
+ return data, status_code, headers
660
+ end
661
+
662
+ # Delete the custom room tags
663
+ # Deletes custom room tags from the portal catalog by name and detaches them from every room that carries them; the rooms themselves and their content are untouched, and only the tag disappears from their tag lists. Only a portal administrator may call it, and a room manager who is allowed to create tags is refused. The names are matched exactly as they are stored: names that are not in the catalog are skipped in silence and an empty list is accepted as a no-op, so a successful answer does not prove that anything was deleted; check a name with `GET api/2.0/files/tags/{tagName}/haslinks` first when that matters. The call cannot be undone: creating the name again with `POST api/2.0/files/tags` brings back the tag but not its links, which have to be attached to each room once more. The answer carries no body. To take a tag off one room and leave it in the catalog for the others, use `DELETE api/2.0/files/rooms/{id}/tags` instead.
664
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/delete-custom-tags/
665
+ # @param [Hash] opts the optional parameters
666
+ # @option opts [BatchTagsRequestDto] :batch_tags_request_dto
667
+ # @return [nil]
668
+ def delete_custom_tags(opts = {})
669
+ delete_custom_tags_with_http_info(opts)
670
+ nil
671
+ end
672
+
673
+ # Delete the custom room tags
674
+ # Deletes custom room tags from the portal catalog by name and detaches them from every room that carries them; the rooms themselves and their content are untouched, and only the tag disappears from their tag lists. Only a portal administrator may call it, and a room manager who is allowed to create tags is refused. The names are matched exactly as they are stored: names that are not in the catalog are skipped in silence and an empty list is accepted as a no-op, so a successful answer does not prove that anything was deleted; check a name with `GET api/2.0/files/tags/{tagName}/haslinks` first when that matters. The call cannot be undone: creating the name again with `POST api/2.0/files/tags` brings back the tag but not its links, which have to be attached to each room once more. The answer carries no body. To take a tag off one room and leave it in the catalog for the others, use `DELETE api/2.0/files/rooms/{id}/tags` instead.
675
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/delete-custom-tags/
676
+ # @param [Hash] opts the optional parameters
677
+ # @option opts [BatchTagsRequestDto] :batch_tags_request_dto
678
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
679
+ def delete_custom_tags_with_http_info(opts = {})
680
+ if @api_client.config.debugging
681
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.delete_custom_tags ...'
682
+ end
683
+ # resource path
684
+ local_var_path = '/api/2.0/files/tags'
685
+
686
+ # query parameters
687
+ query_params = opts[:query_params] || {}
688
+
689
+ # header parameters
690
+ header_params = opts[:header_params] || {}
691
+ # HTTP header 'Accept' (if needed)
692
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
693
+ # HTTP header 'Content-Type'
694
+ content_type = @api_client.select_header_content_type(['application/json'])
695
+ if !content_type.nil?
696
+ header_params['Content-Type'] = content_type
697
+ end
698
+
699
+ # form parameters
700
+ form_params = opts[:form_params] || {}
701
+
702
+ # http body (model)
703
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'batch_tags_request_dto'])
704
+
705
+ # return_type
706
+ return_type = opts[:debug_return_type]
707
+
708
+ # auth_names
709
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
710
+
711
+ new_options = opts.merge(
712
+ :operation => :"Rooms::RoomsApi.delete_custom_tags",
713
+ :header_params => header_params,
714
+ :query_params => query_params,
715
+ :form_params => form_params,
716
+ :body => post_body,
717
+ :auth_names => auth_names,
718
+ :return_type => return_type
719
+ )
720
+
721
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
722
+ if @api_client.config.debugging
723
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#delete_custom_tags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
724
+ end
725
+ return data, status_code, headers
726
+ end
727
+
728
+ # Remove a room
729
+ # Queues a background job that deletes one room with everything inside it, and returns the operation record of that job. Deleting a room is destructive and has no trash step: the room and its files are gone once the job finishes, unlike a file or a folder, which is moved to the trash first. The right to delete is checked before the job is queued, so a caller who may not delete the room is refused straight away and an unknown room is answered as missing; the same checks run again when the job starts, which is why the `error` of the finished operation still has to be read. Poll `GET api/2.0/files/fileops` until `finished` is true, or read the returned record again by its `id`. The record is kept until it is read once, so one poll after completion still sees it. `deleteAfter` in the body is required by the contract but has no effect on the job. An archived room is deleted the same way, and a second delete of the same id reports that the room is missing.
730
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/delete-room/
731
+ # @param id [Integer, String] The room to delete, named by the identifier that `GET api/2.0/files/rooms` reports for it.
732
+ # @param delete_room_request [DeleteRoomRequest] The body of the request. It is required even though the deletion does not depend on what it holds.
733
+ # @param [Hash] opts the optional parameters
734
+ # @return [FileOperationWrapper]
735
+ def delete_room(id, delete_room_request, opts = {})
736
+ data, _status_code, _headers = delete_room_with_http_info(id, delete_room_request, opts)
737
+ data
738
+ end
739
+
740
+ # Remove a room
741
+ # Queues a background job that deletes one room with everything inside it, and returns the operation record of that job. Deleting a room is destructive and has no trash step: the room and its files are gone once the job finishes, unlike a file or a folder, which is moved to the trash first. The right to delete is checked before the job is queued, so a caller who may not delete the room is refused straight away and an unknown room is answered as missing; the same checks run again when the job starts, which is why the `error` of the finished operation still has to be read. Poll `GET api/2.0/files/fileops` until `finished` is true, or read the returned record again by its `id`. The record is kept until it is read once, so one poll after completion still sees it. `deleteAfter` in the body is required by the contract but has no effect on the job. An archived room is deleted the same way, and a second delete of the same id reports that the room is missing.
742
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/delete-room/
743
+ # @param id [Integer, String] The room to delete, named by the identifier that `GET api/2.0/files/rooms` reports for it.
744
+ # @param delete_room_request [DeleteRoomRequest] The body of the request. It is required even though the deletion does not depend on what it holds.
745
+ # @param [Hash] opts the optional parameters
746
+ # @return [Array<(FileOperationWrapper, Integer, Hash)>] FileOperationWrapper data, response status code and response headers
747
+ def delete_room_with_http_info(id, delete_room_request, opts = {})
748
+ if @api_client.config.debugging
749
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.delete_room ...'
750
+ end
751
+ # verify the required parameter 'id' is set
752
+ if @api_client.config.client_side_validation && id.nil?
753
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.delete_room"
754
+ end
755
+ # verify the required parameter 'delete_room_request' is set
756
+ if @api_client.config.client_side_validation && delete_room_request.nil?
757
+ fail ArgumentError, "Missing the required parameter 'delete_room_request' when calling Rooms::RoomsApi.delete_room"
758
+ end
759
+ # resource path
760
+ local_var_path = '/api/2.0/files/rooms/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
761
+
762
+ # query parameters
763
+ query_params = opts[:query_params] || {}
764
+
765
+ # header parameters
766
+ header_params = opts[:header_params] || {}
767
+ # HTTP header 'Accept' (if needed)
768
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
769
+ # HTTP header 'Content-Type'
770
+ content_type = @api_client.select_header_content_type(['application/json'])
771
+ if !content_type.nil?
772
+ header_params['Content-Type'] = content_type
773
+ end
774
+
775
+ # form parameters
776
+ form_params = opts[:form_params] || {}
777
+
778
+ # http body (model)
779
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(delete_room_request)
780
+
781
+ # return_type
782
+ return_type = opts[:debug_return_type] || 'FileOperationWrapper'
783
+
784
+ # auth_names
785
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
786
+
787
+ new_options = opts.merge(
788
+ :operation => :"Rooms::RoomsApi.delete_room",
789
+ :header_params => header_params,
790
+ :query_params => query_params,
791
+ :form_params => form_params,
792
+ :body => post_body,
793
+ :auth_names => auth_names,
794
+ :return_type => return_type
795
+ )
796
+
797
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
798
+ if @api_client.config.debugging
799
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#delete_room\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
800
+ end
801
+ return data, status_code, headers
802
+ end
803
+
804
+ # Remove a room logo
805
+ # Removes the uploaded logo of a room and returns the room with empty logo addresses. What the room falls back to is its cover and colour, which the logo only hid: if a cover was set before the logo, it is shown again, and `POST api/2.0/files/rooms/{id}/cover` is what changes it. Nothing else about the room is touched, so membership, tags, links and settings are preserved. A room that has no logo is accepted and answered with 200, and repeating the call is therefore harmless. The caller must be a manager of the room; a member invited even with editing rights is refused, and so is a room in the Archive section. A room that does not exist or was deleted is answered as missing. After the logo is removed a new one can be set again through `POST api/2.0/files/logos` followed by `POST api/2.0/files/rooms/{id}/logo`.
806
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/delete-room-logo/
807
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
808
+ # @param [Hash] opts the optional parameters
809
+ # @return [FolderWrapper, ThirdPartyFolderWrapper]
810
+ def delete_room_logo(id, opts = {})
811
+ data, _status_code, _headers = delete_room_logo_with_http_info(id, opts)
812
+ data
813
+ end
814
+
815
+ # Remove a room logo
816
+ # Removes the uploaded logo of a room and returns the room with empty logo addresses. What the room falls back to is its cover and colour, which the logo only hid: if a cover was set before the logo, it is shown again, and `POST api/2.0/files/rooms/{id}/cover` is what changes it. Nothing else about the room is touched, so membership, tags, links and settings are preserved. A room that has no logo is accepted and answered with 200, and repeating the call is therefore harmless. The caller must be a manager of the room; a member invited even with editing rights is refused, and so is a room in the Archive section. A room that does not exist or was deleted is answered as missing. After the logo is removed a new one can be set again through `POST api/2.0/files/logos` followed by `POST api/2.0/files/rooms/{id}/logo`.
817
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/delete-room-logo/
818
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
819
+ # @param [Hash] opts the optional parameters
820
+ # @return [Array<(FolderWrapper, ThirdPartyFolderWrapper, Integer, Hash)>] FolderWrapper, ThirdPartyFolderWrapper data, response status code and response headers
821
+ def delete_room_logo_with_http_info(id, opts = {})
822
+ if @api_client.config.debugging
823
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.delete_room_logo ...'
824
+ end
825
+ # verify the required parameter 'id' is set
826
+ if @api_client.config.client_side_validation && id.nil?
827
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.delete_room_logo"
828
+ end
829
+ # resource path
830
+ local_var_path = '/api/2.0/files/rooms/{id}/logo'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
831
+
832
+ # query parameters
833
+ query_params = opts[:query_params] || {}
834
+
835
+ # header parameters
836
+ header_params = opts[:header_params] || {}
837
+ # HTTP header 'Accept' (if needed)
838
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
839
+
840
+ # form parameters
841
+ form_params = opts[:form_params] || {}
842
+
843
+ # http body (model)
844
+ post_body = opts[:debug_body]
845
+
846
+ # return_type
847
+ return_type = opts[:debug_return_type] || (id.is_a?(String) ? 'ThirdPartyFolderWrapper' : 'FolderWrapper')
848
+
849
+ # auth_names
850
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
851
+
852
+ new_options = opts.merge(
853
+ :operation => :"Rooms::RoomsApi.delete_room_logo",
854
+ :header_params => header_params,
855
+ :query_params => query_params,
856
+ :form_params => form_params,
857
+ :body => post_body,
858
+ :auth_names => auth_names,
859
+ :return_type => return_type
860
+ )
861
+
862
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
863
+ if @api_client.config.debugging
864
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#delete_room_logo\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
865
+ end
866
+ return data, status_code, headers
867
+ end
868
+
869
+ # Detach tags from a room
870
+ # Detaches the named tags from a room and returns the room with its remaining tag set. Only the link between the room and the tag is removed: the tag stays in the portal catalogue and keeps working for every other room, and `DELETE api/2.0/files/tags` is what removes it from the portal itself. Names that are not in the catalogue, or not attached to this room, are skipped without an error, so a successful answer does not prove that anything was detached; compare the returned tag set instead. An empty list is accepted and does nothing, while a null entry in the list is rejected as an invalid request. The caller must be a manager of the room or an administrator of the portal, and a room in the Archive section is refused with 403. A tag that loses its last room stays in the catalogue, and only deleting that room takes the tag with it.
871
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/delete-room-tags/
872
+ # @param id [Integer, String] The room whose tags are changed, named by the identifier that `GET api/2.0/files/rooms` reports for it.
873
+ # @param [Hash] opts the optional parameters
874
+ # @option opts [BatchTagsRequestDto] :batch_tags_request_dto The names to attach or to detach.
875
+ # @return [FolderWrapper, ThirdPartyFolderWrapper]
876
+ def delete_room_tags(id, opts = {})
877
+ data, _status_code, _headers = delete_room_tags_with_http_info(id, opts)
878
+ data
879
+ end
880
+
881
+ # Detach tags from a room
882
+ # Detaches the named tags from a room and returns the room with its remaining tag set. Only the link between the room and the tag is removed: the tag stays in the portal catalogue and keeps working for every other room, and `DELETE api/2.0/files/tags` is what removes it from the portal itself. Names that are not in the catalogue, or not attached to this room, are skipped without an error, so a successful answer does not prove that anything was detached; compare the returned tag set instead. An empty list is accepted and does nothing, while a null entry in the list is rejected as an invalid request. The caller must be a manager of the room or an administrator of the portal, and a room in the Archive section is refused with 403. A tag that loses its last room stays in the catalogue, and only deleting that room takes the tag with it.
883
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/delete-room-tags/
884
+ # @param id [Integer, String] The room whose tags are changed, named by the identifier that `GET api/2.0/files/rooms` reports for it.
885
+ # @param [Hash] opts the optional parameters
886
+ # @option opts [BatchTagsRequestDto] :batch_tags_request_dto The names to attach or to detach.
887
+ # @return [Array<(FolderWrapper, ThirdPartyFolderWrapper, Integer, Hash)>] FolderWrapper, ThirdPartyFolderWrapper data, response status code and response headers
888
+ def delete_room_tags_with_http_info(id, opts = {})
889
+ if @api_client.config.debugging
890
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.delete_room_tags ...'
891
+ end
892
+ # verify the required parameter 'id' is set
893
+ if @api_client.config.client_side_validation && id.nil?
894
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.delete_room_tags"
895
+ end
896
+ # resource path
897
+ local_var_path = '/api/2.0/files/rooms/{id}/tags'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
898
+
899
+ # query parameters
900
+ query_params = opts[:query_params] || {}
901
+
902
+ # header parameters
903
+ header_params = opts[:header_params] || {}
904
+ # HTTP header 'Accept' (if needed)
905
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
906
+ # HTTP header 'Content-Type'
907
+ content_type = @api_client.select_header_content_type(['application/json'])
908
+ if !content_type.nil?
909
+ header_params['Content-Type'] = content_type
910
+ end
911
+
912
+ # form parameters
913
+ form_params = opts[:form_params] || {}
914
+
915
+ # http body (model)
916
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'batch_tags_request_dto'])
917
+
918
+ # return_type
919
+ return_type = opts[:debug_return_type] || (id.is_a?(String) ? 'ThirdPartyFolderWrapper' : 'FolderWrapper')
920
+
921
+ # auth_names
922
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
923
+
924
+ new_options = opts.merge(
925
+ :operation => :"Rooms::RoomsApi.delete_room_tags",
926
+ :header_params => header_params,
927
+ :query_params => query_params,
928
+ :form_params => form_params,
929
+ :body => post_body,
930
+ :auth_names => auth_names,
931
+ :return_type => return_type
932
+ )
933
+
934
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
935
+ if @api_client.config.debugging
936
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#delete_room_tags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
937
+ end
938
+ return data, status_code, headers
939
+ end
940
+
941
+ # Get external DB sync status
942
+ # Returns the record of the external database export job of a form filling room, or an empty body when the room has no job at all. The room must be a form filling room and the caller must be able to edit it, otherwise the call is refused; an unknown room is answered with 404. This is the polling target of `POST api/2.0/files/rooms/{id}/externaldbsync`: repeat it until `isCompleted` is true, and then read `forms`, which lists one entry per original form with its own `success` and `error` and is empty while the job is still running. `percentage` advances as forms are processed, `status` distinguishes a job that is queued, running, finished or failed, and `error` carries the message of a job that stopped as a whole. The record belongs to the room rather than to the account that started the job, so any member who can edit the room sees the same answer. The call changes nothing and is safe to repeat.
943
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-external-db-sync-status/
944
+ # @param id [Integer] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
945
+ # @param [Hash] opts the optional parameters
946
+ # @return [ExternalDbSyncTaskWrapper]
947
+ def get_external_db_sync_status(id, opts = {})
948
+ data, _status_code, _headers = get_external_db_sync_status_with_http_info(id, opts)
949
+ data
950
+ end
951
+
952
+ # Get external DB sync status
953
+ # Returns the record of the external database export job of a form filling room, or an empty body when the room has no job at all. The room must be a form filling room and the caller must be able to edit it, otherwise the call is refused; an unknown room is answered with 404. This is the polling target of `POST api/2.0/files/rooms/{id}/externaldbsync`: repeat it until `isCompleted` is true, and then read `forms`, which lists one entry per original form with its own `success` and `error` and is empty while the job is still running. `percentage` advances as forms are processed, `status` distinguishes a job that is queued, running, finished or failed, and `error` carries the message of a job that stopped as a whole. The record belongs to the room rather than to the account that started the job, so any member who can edit the room sees the same answer. The call changes nothing and is safe to repeat.
954
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-external-db-sync-status/
955
+ # @param id [Integer] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
956
+ # @param [Hash] opts the optional parameters
957
+ # @return [Array<(ExternalDbSyncTaskWrapper, Integer, Hash)>] ExternalDbSyncTaskWrapper data, response status code and response headers
958
+ def get_external_db_sync_status_with_http_info(id, opts = {})
959
+ if @api_client.config.debugging
960
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_external_db_sync_status ...'
961
+ end
962
+ # verify the required parameter 'id' is set
963
+ if @api_client.config.client_side_validation && id.nil?
964
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.get_external_db_sync_status"
965
+ end
966
+ # resource path
967
+ local_var_path = '/api/2.0/files/rooms/{id}/externaldbsync'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
968
+
969
+ # query parameters
970
+ query_params = opts[:query_params] || {}
971
+
972
+ # header parameters
973
+ header_params = opts[:header_params] || {}
974
+ # HTTP header 'Accept' (if needed)
975
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
976
+
977
+ # form parameters
978
+ form_params = opts[:form_params] || {}
979
+
980
+ # http body (model)
981
+ post_body = opts[:debug_body]
982
+
983
+ # return_type
984
+ return_type = opts[:debug_return_type] || 'ExternalDbSyncTaskWrapper'
985
+
986
+ # auth_names
987
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
988
+
989
+ new_options = opts.merge(
990
+ :operation => :"Rooms::RoomsApi.get_external_db_sync_status",
991
+ :header_params => header_params,
992
+ :query_params => query_params,
993
+ :form_params => form_params,
994
+ :body => post_body,
995
+ :auth_names => auth_names,
996
+ :return_type => return_type
997
+ )
998
+
999
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1000
+ if @api_client.config.debugging
1001
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_external_db_sync_status\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1002
+ end
1003
+ return data, status_code, headers
1004
+ end
1005
+
1006
+ # Get new items in a room
1007
+ # Returns what is new for the calling account in one room, grouped by the day the entry was last changed, with the newest day first and the entries inside a day ordered from the most recent. Only files are reported: a folder somebody else created is not an entry of its own, while a file created inside it is, however deep it lies. What the caller changed is never new for the caller, and a file that was deleted afterwards disappears from the answer. Reading this list leaves the badges alone, which is what makes it the operation to call before `GET api/2.0/files/rooms/{id}`, since opening the room clears them. An empty array therefore means that there is nothing new, not that the badges were already read. The caller needs access to the room; somebody who is not a member is refused, and an unknown or deleted room is answered as missing. Use `GET api/2.0/files/rooms/news` for the same report across every room at once.
1008
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-new-room-items/
1009
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
1010
+ # @param [Hash] opts the optional parameters
1011
+ # @return [NewItemsFileEntryBaseArrayWrapper]
1012
+ def get_new_room_items(id, opts = {})
1013
+ data, _status_code, _headers = get_new_room_items_with_http_info(id, opts)
1014
+ data
1015
+ end
1016
+
1017
+ # Get new items in a room
1018
+ # Returns what is new for the calling account in one room, grouped by the day the entry was last changed, with the newest day first and the entries inside a day ordered from the most recent. Only files are reported: a folder somebody else created is not an entry of its own, while a file created inside it is, however deep it lies. What the caller changed is never new for the caller, and a file that was deleted afterwards disappears from the answer. Reading this list leaves the badges alone, which is what makes it the operation to call before `GET api/2.0/files/rooms/{id}`, since opening the room clears them. An empty array therefore means that there is nothing new, not that the badges were already read. The caller needs access to the room; somebody who is not a member is refused, and an unknown or deleted room is answered as missing. Use `GET api/2.0/files/rooms/news` for the same report across every room at once.
1019
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-new-room-items/
1020
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
1021
+ # @param [Hash] opts the optional parameters
1022
+ # @return [Array<(NewItemsFileEntryBaseArrayWrapper, Integer, Hash)>] NewItemsFileEntryBaseArrayWrapper data, response status code and response headers
1023
+ def get_new_room_items_with_http_info(id, opts = {})
1024
+ if @api_client.config.debugging
1025
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_new_room_items ...'
1026
+ end
1027
+ # verify the required parameter 'id' is set
1028
+ if @api_client.config.client_side_validation && id.nil?
1029
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.get_new_room_items"
1030
+ end
1031
+ # resource path
1032
+ local_var_path = '/api/2.0/files/rooms/{id}/news'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
1033
+
1034
+ # query parameters
1035
+ query_params = opts[:query_params] || {}
1036
+
1037
+ # header parameters
1038
+ header_params = opts[:header_params] || {}
1039
+ # HTTP header 'Accept' (if needed)
1040
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1041
+
1042
+ # form parameters
1043
+ form_params = opts[:form_params] || {}
1044
+
1045
+ # http body (model)
1046
+ post_body = opts[:debug_body]
1047
+
1048
+ # return_type
1049
+ return_type = opts[:debug_return_type] || 'NewItemsFileEntryBaseArrayWrapper'
1050
+
1051
+ # auth_names
1052
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
1053
+
1054
+ new_options = opts.merge(
1055
+ :operation => :"Rooms::RoomsApi.get_new_room_items",
1056
+ :header_params => header_params,
1057
+ :query_params => query_params,
1058
+ :form_params => form_params,
1059
+ :body => post_body,
1060
+ :auth_names => auth_names,
1061
+ :return_type => return_type
1062
+ )
1063
+
1064
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1065
+ if @api_client.config.debugging
1066
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_new_room_items\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1067
+ end
1068
+ return data, status_code, headers
1069
+ end
1070
+
1071
+ # Get room template public access
1072
+ # Reports whether the room template addressed by `id` is shared with everyone or is reachable only by the accounts it was explicitly shared with. True means the Everyone group holds read access, so any member allowed to create rooms can build one from the template with `POST api/2.0/files/rooms/fromtemplate`; false means only the owner and the named recipients can. The identifier has to belong to a room template — take it from `templateId` of `GET api/2.0/files/roomtemplate/status`, or from the folder list of `GET api/2.0/files/rooms` called with `searchArea` set to 4 — while an ordinary room, a deleted template or an unknown value is answered as missing. The caller needs read access to the template, so somebody else's private template is refused even for a portal administrator, and members who cannot reach the Templates section at all are refused whatever the template's state. The call only reads state; use `PUT api/2.0/files/roomtemplate/public` to change it.
1073
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-public-settings/
1074
+ # @param id [Integer] The identifier of the room template. Take it from `templateId` of `GET api/2.0/files/roomtemplate/status`, or from the folder list of `GET api/2.0/files/rooms` called with `searchArea` set to 4; an identifier of an ordinary room is not accepted.
1075
+ # @param [Hash] opts the optional parameters
1076
+ # @return [BooleanWrapper]
1077
+ def get_public_settings(id, opts = {})
1078
+ data, _status_code, _headers = get_public_settings_with_http_info(id, opts)
1079
+ data
1080
+ end
1081
+
1082
+ # Get room template public access
1083
+ # Reports whether the room template addressed by `id` is shared with everyone or is reachable only by the accounts it was explicitly shared with. True means the Everyone group holds read access, so any member allowed to create rooms can build one from the template with `POST api/2.0/files/rooms/fromtemplate`; false means only the owner and the named recipients can. The identifier has to belong to a room template — take it from `templateId` of `GET api/2.0/files/roomtemplate/status`, or from the folder list of `GET api/2.0/files/rooms` called with `searchArea` set to 4 — while an ordinary room, a deleted template or an unknown value is answered as missing. The caller needs read access to the template, so somebody else's private template is refused even for a portal administrator, and members who cannot reach the Templates section at all are refused whatever the template's state. The call only reads state; use `PUT api/2.0/files/roomtemplate/public` to change it.
1084
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-public-settings/
1085
+ # @param id [Integer] The identifier of the room template. Take it from `templateId` of `GET api/2.0/files/roomtemplate/status`, or from the folder list of `GET api/2.0/files/rooms` called with `searchArea` set to 4; an identifier of an ordinary room is not accepted.
1086
+ # @param [Hash] opts the optional parameters
1087
+ # @return [Array<(BooleanWrapper, Integer, Hash)>] BooleanWrapper data, response status code and response headers
1088
+ def get_public_settings_with_http_info(id, opts = {})
1089
+ if @api_client.config.debugging
1090
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_public_settings ...'
1091
+ end
1092
+ # verify the required parameter 'id' is set
1093
+ if @api_client.config.client_side_validation && id.nil?
1094
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.get_public_settings"
1095
+ end
1096
+ if @api_client.config.client_side_validation && id > 2147483647
1097
+ fail ArgumentError, 'invalid value for "id" when calling Rooms::RoomsApi.get_public_settings, must be smaller than or equal to 2147483647.'
1098
+ end
1099
+
1100
+ if @api_client.config.client_side_validation && id < 1
1101
+ fail ArgumentError, 'invalid value for "id" when calling Rooms::RoomsApi.get_public_settings, must be greater than or equal to 1.'
1102
+ end
1103
+
1104
+ # resource path
1105
+ local_var_path = '/api/2.0/files/roomtemplate/{id}/public'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
1106
+
1107
+ # query parameters
1108
+ query_params = opts[:query_params] || {}
1109
+
1110
+ # header parameters
1111
+ header_params = opts[:header_params] || {}
1112
+ # HTTP header 'Accept' (if needed)
1113
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1114
+
1115
+ # form parameters
1116
+ form_params = opts[:form_params] || {}
1117
+
1118
+ # http body (model)
1119
+ post_body = opts[:debug_body]
1120
+
1121
+ # return_type
1122
+ return_type = opts[:debug_return_type] || 'BooleanWrapper'
1123
+
1124
+ # auth_names
1125
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
1126
+
1127
+ new_options = opts.merge(
1128
+ :operation => :"Rooms::RoomsApi.get_public_settings",
1129
+ :header_params => header_params,
1130
+ :query_params => query_params,
1131
+ :form_params => form_params,
1132
+ :body => post_body,
1133
+ :auth_names => auth_names,
1134
+ :return_type => return_type
1135
+ )
1136
+
1137
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1138
+ if @api_client.config.debugging
1139
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_public_settings\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1140
+ end
1141
+ return data, status_code, headers
1142
+ end
1143
+
1144
+ # Get the .ai folder of a room
1145
+ # Returns one page of the contents of the .ai folder that lies in the root of a room, in the same shape as `GET api/2.0/files/{folderId}` returns for any other folder. The rooms that hold such a folder are listed with `GET api/2.0/files/rooms?withAiFolder=true`. Any member who can read the room may call it; somebody who cannot is refused, and a room that does not exist is answered as not found. A room that holds no .ai folder is answered with an empty page: no files and folders, a zero `total`, no `current` folder and empty `pathParts`.
1146
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-ai-folder/
1147
+ # @param id [Integer] The room whose .ai folder is listed, named by the identifier that `GET api/2.0/files/rooms` reports for it.
1148
+ # @param [Hash] opts the optional parameters
1149
+ # @option opts [FilterType] :filter_type Narrows the listing to a single kind of entry, such as documents, spreadsheets or images. Omit it to list every kind the folder holds.
1150
+ # @option opts [Integer] :count The size of one page of the listing. Pair it with `startIndex` to walk through the result, and compare the two with `total` in the response to see when the last page has been read.
1151
+ # @option opts [Integer] :start_index The number of matching entries to skip before the returned page begins; add `count` to it to ask for the next page.
1152
+ # @option opts [String] :sort_by The name of the field the entries are ordered by, matched case-insensitively against the file sort fields, such as `DateAndTime`, `AZ`, `Size` or `Type`.
1153
+ # @option opts [SortOrder] :sort_order The direction in which the `sortBy` field is ordered.
1154
+ # @option opts [String] :filter_value The search string the listing is filtered by: it is matched as a substring of entry titles. Omit it to list the folder unfiltered.
1155
+ # @return [FolderContentWrapper]
1156
+ def get_room_ai_folder(id, opts = {})
1157
+ data, _status_code, _headers = get_room_ai_folder_with_http_info(id, opts)
1158
+ data
1159
+ end
1160
+
1161
+ # Get the .ai folder of a room
1162
+ # Returns one page of the contents of the .ai folder that lies in the root of a room, in the same shape as `GET api/2.0/files/{folderId}` returns for any other folder. The rooms that hold such a folder are listed with `GET api/2.0/files/rooms?withAiFolder=true`. Any member who can read the room may call it; somebody who cannot is refused, and a room that does not exist is answered as not found. A room that holds no .ai folder is answered with an empty page: no files and folders, a zero `total`, no `current` folder and empty `pathParts`.
1163
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-ai-folder/
1164
+ # @param id [Integer] The room whose .ai folder is listed, named by the identifier that `GET api/2.0/files/rooms` reports for it.
1165
+ # @param [Hash] opts the optional parameters
1166
+ # @option opts [FilterType] :filter_type Narrows the listing to a single kind of entry, such as documents, spreadsheets or images. Omit it to list every kind the folder holds.
1167
+ # @option opts [Integer] :count The size of one page of the listing. Pair it with `startIndex` to walk through the result, and compare the two with `total` in the response to see when the last page has been read.
1168
+ # @option opts [Integer] :start_index The number of matching entries to skip before the returned page begins; add `count` to it to ask for the next page.
1169
+ # @option opts [String] :sort_by The name of the field the entries are ordered by, matched case-insensitively against the file sort fields, such as `DateAndTime`, `AZ`, `Size` or `Type`.
1170
+ # @option opts [SortOrder] :sort_order The direction in which the `sortBy` field is ordered.
1171
+ # @option opts [String] :filter_value The search string the listing is filtered by: it is matched as a substring of entry titles. Omit it to list the folder unfiltered.
1172
+ # @return [Array<(FolderContentWrapper, Integer, Hash)>] FolderContentWrapper data, response status code and response headers
1173
+ def get_room_ai_folder_with_http_info(id, opts = {})
1174
+ if @api_client.config.debugging
1175
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_room_ai_folder ...'
1176
+ end
1177
+ # verify the required parameter 'id' is set
1178
+ if @api_client.config.client_side_validation && id.nil?
1179
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.get_room_ai_folder"
1180
+ end
1181
+ if @api_client.config.client_side_validation && !opts[:'count'].nil? && opts[:'count'] > 100
1182
+ fail ArgumentError, 'invalid value for "opts[:"count"]" when calling Rooms::RoomsApi.get_room_ai_folder, must be smaller than or equal to 100.'
1183
+ end
1184
+
1185
+ if @api_client.config.client_side_validation && !opts[:'count'].nil? && opts[:'count'] < 1
1186
+ fail ArgumentError, 'invalid value for "opts[:"count"]" when calling Rooms::RoomsApi.get_room_ai_folder, must be greater than or equal to 1.'
1187
+ end
1188
+
1189
+ # resource path
1190
+ local_var_path = '/api/2.0/files/rooms/{id}/ai'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
1191
+
1192
+ # query parameters
1193
+ query_params = opts[:query_params] || {}
1194
+ query_params[:'filterType'] = opts[:'filter_type'] if !opts[:'filter_type'].nil?
1195
+ query_params[:'count'] = opts[:'count'] if !opts[:'count'].nil?
1196
+ query_params[:'startIndex'] = opts[:'start_index'] if !opts[:'start_index'].nil?
1197
+ query_params[:'sortBy'] = opts[:'sort_by'] if !opts[:'sort_by'].nil?
1198
+ query_params[:'sortOrder'] = opts[:'sort_order'] if !opts[:'sort_order'].nil?
1199
+ query_params[:'filterValue'] = opts[:'filter_value'] if !opts[:'filter_value'].nil?
1200
+
1201
+ # header parameters
1202
+ header_params = opts[:header_params] || {}
1203
+ # HTTP header 'Accept' (if needed)
1204
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1205
+
1206
+ # form parameters
1207
+ form_params = opts[:form_params] || {}
1208
+
1209
+ # http body (model)
1210
+ post_body = opts[:debug_body]
1211
+
1212
+ # return_type
1213
+ return_type = opts[:debug_return_type] || 'FolderContentWrapper'
1214
+
1215
+ # auth_names
1216
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
1217
+
1218
+ new_options = opts.merge(
1219
+ :operation => :"Rooms::RoomsApi.get_room_ai_folder",
1220
+ :header_params => header_params,
1221
+ :query_params => query_params,
1222
+ :form_params => form_params,
1223
+ :body => post_body,
1224
+ :auth_names => auth_names,
1225
+ :return_type => return_type
1226
+ )
1227
+
1228
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1229
+ if @api_client.config.debugging
1230
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_room_ai_folder\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1231
+ end
1232
+ return data, status_code, headers
1233
+ end
1234
+
1235
+ # Get room cover gallery
1236
+ # Returns the gallery of cover pictures a room can be given: every entry pairs the identifier to send to `POST api/2.0/files/rooms/{id}/cover` with the drawing itself as inline vector markup ready to be rendered. The gallery is built into the product rather than stored per portal, so it is the same for every account and every room, does not depend on what rooms exist, and its identifiers do not change with the language of the request. The identifiers are unique and stable, which makes them safe to keep in a client, while the drawings behind them may change between product versions. Any account of the portal may read the gallery, but a guest is refused. The list is the only source of valid cover identifiers: a value that is not in it is rejected wherever a cover is set, including room creation and room update. The call changes nothing and is safe to repeat.
1237
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-covers/
1238
+ # @param [Hash] opts the optional parameters
1239
+ # @return [CoversResultArrayWrapper]
1240
+ def get_room_covers(opts = {})
1241
+ data, _status_code, _headers = get_room_covers_with_http_info(opts)
1242
+ data
1243
+ end
1244
+
1245
+ # Get room cover gallery
1246
+ # Returns the gallery of cover pictures a room can be given: every entry pairs the identifier to send to `POST api/2.0/files/rooms/{id}/cover` with the drawing itself as inline vector markup ready to be rendered. The gallery is built into the product rather than stored per portal, so it is the same for every account and every room, does not depend on what rooms exist, and its identifiers do not change with the language of the request. The identifiers are unique and stable, which makes them safe to keep in a client, while the drawings behind them may change between product versions. Any account of the portal may read the gallery, but a guest is refused. The list is the only source of valid cover identifiers: a value that is not in it is rejected wherever a cover is set, including room creation and room update. The call changes nothing and is safe to repeat.
1247
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-covers/
1248
+ # @param [Hash] opts the optional parameters
1249
+ # @return [Array<(CoversResultArrayWrapper, Integer, Hash)>] CoversResultArrayWrapper data, response status code and response headers
1250
+ def get_room_covers_with_http_info(opts = {})
1251
+ if @api_client.config.debugging
1252
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_room_covers ...'
1253
+ end
1254
+ # resource path
1255
+ local_var_path = '/api/2.0/files/rooms/covers'
1256
+
1257
+ # query parameters
1258
+ query_params = opts[:query_params] || {}
1259
+
1260
+ # header parameters
1261
+ header_params = opts[:header_params] || {}
1262
+ # HTTP header 'Accept' (if needed)
1263
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1264
+
1265
+ # form parameters
1266
+ form_params = opts[:form_params] || {}
1267
+
1268
+ # http body (model)
1269
+ post_body = opts[:debug_body]
1270
+
1271
+ # return_type
1272
+ return_type = opts[:debug_return_type] || 'CoversResultArrayWrapper'
1273
+
1274
+ # auth_names
1275
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
1276
+
1277
+ new_options = opts.merge(
1278
+ :operation => :"Rooms::RoomsApi.get_room_covers",
1279
+ :header_params => header_params,
1280
+ :query_params => query_params,
1281
+ :form_params => form_params,
1282
+ :body => post_body,
1283
+ :auth_names => auth_names,
1284
+ :return_type => return_type
1285
+ )
1286
+
1287
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1288
+ if @api_client.config.debugging
1289
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_room_covers\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1290
+ end
1291
+ return data, status_code, headers
1292
+ end
1293
+
1294
+ # Get the room creation progress
1295
+ # Returns the progress of the room-from-template job started by the calling account with `POST api/2.0/files/rooms/fromtemplate`. The record is private to the account that started the job: jobs of other members are never reported, and only one record is kept per account. The body is empty when the account has no such record, and it is also empty when the job queue cannot be read, so an empty answer is not proof that nothing was started. `progress` is a percentage, `isCompleted` marks the end of the job whether it succeeded or failed, `error` carries the failure message and is empty on success, and `roomId` is meaningful only once the room exists. The record survives the end of the job and is dropped when the next creation starts, so polling after completion keeps returning the same answer. Poll this operation until `isCompleted` is true and then read the room itself with `GET api/2.0/files/rooms/{id}`. The call changes nothing and is safe to repeat.
1296
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-creating-status/
1297
+ # @param [Hash] opts the optional parameters
1298
+ # @return [RoomFromTemplateStatusWrapper]
1299
+ def get_room_creating_status(opts = {})
1300
+ data, _status_code, _headers = get_room_creating_status_with_http_info(opts)
1301
+ data
1302
+ end
1303
+
1304
+ # Get the room creation progress
1305
+ # Returns the progress of the room-from-template job started by the calling account with `POST api/2.0/files/rooms/fromtemplate`. The record is private to the account that started the job: jobs of other members are never reported, and only one record is kept per account. The body is empty when the account has no such record, and it is also empty when the job queue cannot be read, so an empty answer is not proof that nothing was started. `progress` is a percentage, `isCompleted` marks the end of the job whether it succeeded or failed, `error` carries the failure message and is empty on success, and `roomId` is meaningful only once the room exists. The record survives the end of the job and is dropped when the next creation starts, so polling after completion keeps returning the same answer. Poll this operation until `isCompleted` is true and then read the room itself with `GET api/2.0/files/rooms/{id}`. The call changes nothing and is safe to repeat.
1306
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-creating-status/
1307
+ # @param [Hash] opts the optional parameters
1308
+ # @return [Array<(RoomFromTemplateStatusWrapper, Integer, Hash)>] RoomFromTemplateStatusWrapper data, response status code and response headers
1309
+ def get_room_creating_status_with_http_info(opts = {})
1310
+ if @api_client.config.debugging
1311
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_room_creating_status ...'
1312
+ end
1313
+ # resource path
1314
+ local_var_path = '/api/2.0/files/rooms/fromtemplate/status'
1315
+
1316
+ # query parameters
1317
+ query_params = opts[:query_params] || {}
1318
+
1319
+ # header parameters
1320
+ header_params = opts[:header_params] || {}
1321
+ # HTTP header 'Accept' (if needed)
1322
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1323
+
1324
+ # form parameters
1325
+ form_params = opts[:form_params] || {}
1326
+
1327
+ # http body (model)
1328
+ post_body = opts[:debug_body]
1329
+
1330
+ # return_type
1331
+ return_type = opts[:debug_return_type] || 'RoomFromTemplateStatusWrapper'
1332
+
1333
+ # auth_names
1334
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
1335
+
1336
+ new_options = opts.merge(
1337
+ :operation => :"Rooms::RoomsApi.get_room_creating_status",
1338
+ :header_params => header_params,
1339
+ :query_params => query_params,
1340
+ :form_params => form_params,
1341
+ :body => post_body,
1342
+ :auth_names => auth_names,
1343
+ :return_type => return_type
1344
+ )
1345
+
1346
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1347
+ if @api_client.config.debugging
1348
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_room_creating_status\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1349
+ end
1350
+ return data, status_code, headers
1351
+ end
1352
+
1353
+ # Get the room index export
1354
+ # Returns the state of the index export of the calling account, the job started by `POST api/2.0/files/rooms/{id}/indexexport`. The record is not addressed by room: there is at most one per account, and the answer describes the latest export whichever room it was started for. When the account has never started one, or its record was cancelled, the body is null rather than an error, so null is the normal way of saying that there is nothing to report. While the job runs, `percentage` moves in coarse steps instead of smoothly, which makes it a rough hint rather than a measure of the remaining time; `isCompleted` is the field to wait on, and it is also set for a job that failed or was cancelled, so read `status` to tell the outcomes apart and `error` for the message. After a successful build, `resultFileId`, `resultFileName` and `resultFileUrl` point to the spreadsheet saved in the My documents section of the caller. The record survives completion and is replaced only by the next export.
1355
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-index-export/
1356
+ # @param [Hash] opts the optional parameters
1357
+ # @return [DocumentBuilderTaskWrapper]
1358
+ def get_room_index_export(opts = {})
1359
+ data, _status_code, _headers = get_room_index_export_with_http_info(opts)
1360
+ data
1361
+ end
1362
+
1363
+ # Get the room index export
1364
+ # Returns the state of the index export of the calling account, the job started by `POST api/2.0/files/rooms/{id}/indexexport`. The record is not addressed by room: there is at most one per account, and the answer describes the latest export whichever room it was started for. When the account has never started one, or its record was cancelled, the body is null rather than an error, so null is the normal way of saying that there is nothing to report. While the job runs, `percentage` moves in coarse steps instead of smoothly, which makes it a rough hint rather than a measure of the remaining time; `isCompleted` is the field to wait on, and it is also set for a job that failed or was cancelled, so read `status` to tell the outcomes apart and `error` for the message. After a successful build, `resultFileId`, `resultFileName` and `resultFileUrl` point to the spreadsheet saved in the My documents section of the caller. The record survives completion and is replaced only by the next export.
1365
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-index-export/
1366
+ # @param [Hash] opts the optional parameters
1367
+ # @return [Array<(DocumentBuilderTaskWrapper, Integer, Hash)>] DocumentBuilderTaskWrapper data, response status code and response headers
1368
+ def get_room_index_export_with_http_info(opts = {})
1369
+ if @api_client.config.debugging
1370
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_room_index_export ...'
1371
+ end
1372
+ # resource path
1373
+ local_var_path = '/api/2.0/files/rooms/indexexport'
1374
+
1375
+ # query parameters
1376
+ query_params = opts[:query_params] || {}
1377
+
1378
+ # header parameters
1379
+ header_params = opts[:header_params] || {}
1380
+ # HTTP header 'Accept' (if needed)
1381
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1382
+
1383
+ # form parameters
1384
+ form_params = opts[:form_params] || {}
1385
+
1386
+ # http body (model)
1387
+ post_body = opts[:debug_body]
1388
+
1389
+ # return_type
1390
+ return_type = opts[:debug_return_type] || 'DocumentBuilderTaskWrapper'
1391
+
1392
+ # auth_names
1393
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
1394
+
1395
+ new_options = opts.merge(
1396
+ :operation => :"Rooms::RoomsApi.get_room_index_export",
1397
+ :header_params => header_params,
1398
+ :query_params => query_params,
1399
+ :form_params => form_params,
1400
+ :body => post_body,
1401
+ :auth_names => auth_names,
1402
+ :return_type => return_type
1403
+ )
1404
+
1405
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1406
+ if @api_client.config.debugging
1407
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_room_index_export\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1408
+ end
1409
+ return data, status_code, headers
1410
+ end
1411
+
1412
+ # Get room information
1413
+ # Returns one room with its type, title, tags, logo, cover, colour, quota and virtual data room settings, together with the access level the caller has in it. Reading the room is not a side-effect-free call: it clears the caller new-item badges for that room, and `newForMe` comes back as 0, so read `GET api/2.0/files/rooms/{id}/news` first when the new items matter. The caller needs read access to the room; portal administrators can read a room they were never invited to, while a member without access is refused. The operation also answers an anonymous caller, but only in the context of a valid external share link of that room, and a plain anonymous request is rejected as unauthenticated. A room that never existed, was deleted, or lives in a section the caller cannot see is answered as missing. Archived rooms are returned as well and are recognised by their root section rather than by a separate flag. Use `GET api/2.0/files/rooms` to search and page through rooms instead of guessing ids.
1414
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-info/
1415
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
1416
+ # @param [Hash] opts the optional parameters
1417
+ # @return [FolderWrapper, ThirdPartyFolderWrapper]
1418
+ def get_room_info(id, opts = {})
1419
+ data, _status_code, _headers = get_room_info_with_http_info(id, opts)
1420
+ data
1421
+ end
1422
+
1423
+ # Get room information
1424
+ # Returns one room with its type, title, tags, logo, cover, colour, quota and virtual data room settings, together with the access level the caller has in it. Reading the room is not a side-effect-free call: it clears the caller new-item badges for that room, and `newForMe` comes back as 0, so read `GET api/2.0/files/rooms/{id}/news` first when the new items matter. The caller needs read access to the room; portal administrators can read a room they were never invited to, while a member without access is refused. The operation also answers an anonymous caller, but only in the context of a valid external share link of that room, and a plain anonymous request is rejected as unauthenticated. A room that never existed, was deleted, or lives in a section the caller cannot see is answered as missing. Archived rooms are returned as well and are recognised by their root section rather than by a separate flag. Use `GET api/2.0/files/rooms` to search and page through rooms instead of guessing ids.
1425
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-info/
1426
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
1427
+ # @param [Hash] opts the optional parameters
1428
+ # @return [Array<(FolderWrapper, ThirdPartyFolderWrapper, Integer, Hash)>] FolderWrapper, ThirdPartyFolderWrapper data, response status code and response headers
1429
+ def get_room_info_with_http_info(id, opts = {})
1430
+ if @api_client.config.debugging
1431
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_room_info ...'
1432
+ end
1433
+ # verify the required parameter 'id' is set
1434
+ if @api_client.config.client_side_validation && id.nil?
1435
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.get_room_info"
1436
+ end
1437
+ # resource path
1438
+ local_var_path = '/api/2.0/files/rooms/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
1439
+
1440
+ # query parameters
1441
+ query_params = opts[:query_params] || {}
1442
+
1443
+ # header parameters
1444
+ header_params = opts[:header_params] || {}
1445
+ # HTTP header 'Accept' (if needed)
1446
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1447
+
1448
+ # form parameters
1449
+ form_params = opts[:form_params] || {}
1450
+
1451
+ # http body (model)
1452
+ post_body = opts[:debug_body]
1453
+
1454
+ # return_type
1455
+ return_type = opts[:debug_return_type] || (id.is_a?(String) ? 'ThirdPartyFolderWrapper' : 'FolderWrapper')
1456
+
1457
+ # auth_names
1458
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
1459
+
1460
+ new_options = opts.merge(
1461
+ :operation => :"Rooms::RoomsApi.get_room_info",
1462
+ :header_params => header_params,
1463
+ :query_params => query_params,
1464
+ :form_params => form_params,
1465
+ :body => post_body,
1466
+ :auth_names => auth_names,
1467
+ :return_type => return_type
1468
+ )
1469
+
1470
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1471
+ if @api_client.config.debugging
1472
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_room_info\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1473
+ end
1474
+ return data, status_code, headers
1475
+ end
1476
+
1477
+ # Get the room links
1478
+ # Returns the sharing links of a room, with the invitation and the external links mixed together unless `type` narrows it to one kind. Each entry carries the link address, its title, access level, expiration, the flag that marks the primary external link of the room and, for invitation links, how many times it may still be used. Public and form filling rooms come with an external link created for them, so an empty answer there means that the link was revoked rather than that the room is private; rooms of the other kinds start with no links at all and only gain one when somebody creates it, which for a collaboration room and a virtual data room can be an invitation link alone. The caller needs access to the room and the right to see its links: a member invited without that right gets an empty list rather than an error, while somebody who is not in the room at all is refused. Paging parameters are not honoured here: the first hundred links are returned and the reported count is the number of entries actually sent.
1479
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-links/
1480
+ # @param id [Integer, String] The room whose links are listed, named by the identifier that `GET api/2.0/files/rooms` reports for it.
1481
+ # @param [Hash] opts the optional parameters
1482
+ # @option opts [LinkType] :type Narrows the answer to one kind of link: invitation links, which turn whoever opens them into a member, or external links, which open the room without an account. Leaving it out returns both kinds together.
1483
+ # @return [FileShareArrayWrapper]
1484
+ def get_room_links(id, opts = {})
1485
+ data, _status_code, _headers = get_room_links_with_http_info(id, opts)
1486
+ data
1487
+ end
1488
+
1489
+ # Get the room links
1490
+ # Returns the sharing links of a room, with the invitation and the external links mixed together unless `type` narrows it to one kind. Each entry carries the link address, its title, access level, expiration, the flag that marks the primary external link of the room and, for invitation links, how many times it may still be used. Public and form filling rooms come with an external link created for them, so an empty answer there means that the link was revoked rather than that the room is private; rooms of the other kinds start with no links at all and only gain one when somebody creates it, which for a collaboration room and a virtual data room can be an invitation link alone. The caller needs access to the room and the right to see its links: a member invited without that right gets an empty list rather than an error, while somebody who is not in the room at all is refused. Paging parameters are not honoured here: the first hundred links are returned and the reported count is the number of entries actually sent.
1491
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-links/
1492
+ # @param id [Integer, String] The room whose links are listed, named by the identifier that `GET api/2.0/files/rooms` reports for it.
1493
+ # @param [Hash] opts the optional parameters
1494
+ # @option opts [LinkType] :type Narrows the answer to one kind of link: invitation links, which turn whoever opens them into a member, or external links, which open the room without an account. Leaving it out returns both kinds together.
1495
+ # @return [Array<(FileShareArrayWrapper, Integer, Hash)>] FileShareArrayWrapper data, response status code and response headers
1496
+ def get_room_links_with_http_info(id, opts = {})
1497
+ if @api_client.config.debugging
1498
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_room_links ...'
1499
+ end
1500
+ # verify the required parameter 'id' is set
1501
+ if @api_client.config.client_side_validation && id.nil?
1502
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.get_room_links"
1503
+ end
1504
+ # resource path
1505
+ local_var_path = '/api/2.0/files/rooms/{id}/links'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
1506
+
1507
+ # query parameters
1508
+ query_params = opts[:query_params] || {}
1509
+ query_params[:'type'] = opts[:'type'] if !opts[:'type'].nil?
1510
+
1511
+ # header parameters
1512
+ header_params = opts[:header_params] || {}
1513
+ # HTTP header 'Accept' (if needed)
1514
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1515
+
1516
+ # form parameters
1517
+ form_params = opts[:form_params] || {}
1518
+
1519
+ # http body (model)
1520
+ post_body = opts[:debug_body]
1521
+
1522
+ # return_type
1523
+ return_type = opts[:debug_return_type] || 'FileShareArrayWrapper'
1524
+
1525
+ # auth_names
1526
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
1527
+
1528
+ new_options = opts.merge(
1529
+ :operation => :"Rooms::RoomsApi.get_room_links",
1530
+ :header_params => header_params,
1531
+ :query_params => query_params,
1532
+ :form_params => form_params,
1533
+ :body => post_body,
1534
+ :auth_names => auth_names,
1535
+ :return_type => return_type
1536
+ )
1537
+
1538
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1539
+ if @api_client.config.debugging
1540
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_room_links\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1541
+ end
1542
+ return data, status_code, headers
1543
+ end
1544
+
1545
+ # Get the room access rights
1546
+ # Returns one page of the access list of a room: the owner first, then the managers, the groups, the ordinary members, the guests and finally the invitations nobody has accepted yet, with the total in the response headers. `filterType` selects what is listed and defaults to accounts and groups, which leaves the sharing links of the room out; those are read with `GET api/2.0/files/rooms/{id}/links`. `filterValue` matches the displayed name of the subject, and an invitation that is still pending is listed under the email address it was sent to. Paging is done with `count` and `startIndex`, and the order is stable between calls. Any member who can read the room sees the accounts and the groups, so the list is not limited to the managers, and portal administrators can read the list of a room they were never invited to; somebody who is not in the room at all is refused. Asking for the link entries instead needs the right to see the links of the room, and a member without it gets an empty page rather than an error.
1547
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-security-info/
1548
+ # @param id [Integer, String] The room whose access list is read, named by the identifier that `GET api/2.0/files/rooms` reports for it.
1549
+ # @param [Hash] opts the optional parameters
1550
+ # @option opts [ShareFilterType] :filter_type What kind of access entries to list. The default covers accounts and groups and leaves the sharing links of the room out; those are read with `GET api/2.0/files/rooms/{id}/links`.
1551
+ # @option opts [Integer] :count How many entries to return in one answer. The total number of matching entries comes back in the response headers, so it is what tells the caller whether another page is needed.
1552
+ # @option opts [Integer] :start_index How many matching entries to skip before the page starts. Together with the page size it walks the list, which is ordered by role and then by name and is therefore stable between calls.
1553
+ # @option opts [String] :filter_value Keeps only the entries whose displayed name contains this text. An invitation that has not been accepted yet is listed under the email address it was sent to, so that is what has to be searched for.
1554
+ # @return [FileShareArrayWrapper]
1555
+ def get_room_security_info(id, opts = {})
1556
+ data, _status_code, _headers = get_room_security_info_with_http_info(id, opts)
1557
+ data
1558
+ end
1559
+
1560
+ # Get the room access rights
1561
+ # Returns one page of the access list of a room: the owner first, then the managers, the groups, the ordinary members, the guests and finally the invitations nobody has accepted yet, with the total in the response headers. `filterType` selects what is listed and defaults to accounts and groups, which leaves the sharing links of the room out; those are read with `GET api/2.0/files/rooms/{id}/links`. `filterValue` matches the displayed name of the subject, and an invitation that is still pending is listed under the email address it was sent to. Paging is done with `count` and `startIndex`, and the order is stable between calls. Any member who can read the room sees the accounts and the groups, so the list is not limited to the managers, and portal administrators can read the list of a room they were never invited to; somebody who is not in the room at all is refused. Asking for the link entries instead needs the right to see the links of the room, and a member without it gets an empty page rather than an error.
1562
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-security-info/
1563
+ # @param id [Integer, String] The room whose access list is read, named by the identifier that `GET api/2.0/files/rooms` reports for it.
1564
+ # @param [Hash] opts the optional parameters
1565
+ # @option opts [ShareFilterType] :filter_type What kind of access entries to list. The default covers accounts and groups and leaves the sharing links of the room out; those are read with `GET api/2.0/files/rooms/{id}/links`.
1566
+ # @option opts [Integer] :count How many entries to return in one answer. The total number of matching entries comes back in the response headers, so it is what tells the caller whether another page is needed.
1567
+ # @option opts [Integer] :start_index How many matching entries to skip before the page starts. Together with the page size it walks the list, which is ordered by role and then by name and is therefore stable between calls.
1568
+ # @option opts [String] :filter_value Keeps only the entries whose displayed name contains this text. An invitation that has not been accepted yet is listed under the email address it was sent to, so that is what has to be searched for.
1569
+ # @return [Array<(FileShareArrayWrapper, Integer, Hash)>] FileShareArrayWrapper data, response status code and response headers
1570
+ def get_room_security_info_with_http_info(id, opts = {})
1571
+ if @api_client.config.debugging
1572
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_room_security_info ...'
1573
+ end
1574
+ # verify the required parameter 'id' is set
1575
+ if @api_client.config.client_side_validation && id.nil?
1576
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.get_room_security_info"
1577
+ end
1578
+ if @api_client.config.client_side_validation && !opts[:'count'].nil? && opts[:'count'] > 100
1579
+ fail ArgumentError, 'invalid value for "opts[:"count"]" when calling Rooms::RoomsApi.get_room_security_info, must be smaller than or equal to 100.'
1580
+ end
1581
+
1582
+ if @api_client.config.client_side_validation && !opts[:'count'].nil? && opts[:'count'] < 1
1583
+ fail ArgumentError, 'invalid value for "opts[:"count"]" when calling Rooms::RoomsApi.get_room_security_info, must be greater than or equal to 1.'
1584
+ end
1585
+
1586
+ # resource path
1587
+ local_var_path = '/api/2.0/files/rooms/{id}/share'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
1588
+
1589
+ # query parameters
1590
+ query_params = opts[:query_params] || {}
1591
+ query_params[:'filterType'] = opts[:'filter_type'] if !opts[:'filter_type'].nil?
1592
+ query_params[:'count'] = opts[:'count'] if !opts[:'count'].nil?
1593
+ query_params[:'startIndex'] = opts[:'start_index'] if !opts[:'start_index'].nil?
1594
+ query_params[:'filterValue'] = opts[:'filter_value'] if !opts[:'filter_value'].nil?
1595
+
1596
+ # header parameters
1597
+ header_params = opts[:header_params] || {}
1598
+ # HTTP header 'Accept' (if needed)
1599
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1600
+
1601
+ # form parameters
1602
+ form_params = opts[:form_params] || {}
1603
+
1604
+ # http body (model)
1605
+ post_body = opts[:debug_body]
1606
+
1607
+ # return_type
1608
+ return_type = opts[:debug_return_type] || 'FileShareArrayWrapper'
1609
+
1610
+ # auth_names
1611
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
1612
+
1613
+ new_options = opts.merge(
1614
+ :operation => :"Rooms::RoomsApi.get_room_security_info",
1615
+ :header_params => header_params,
1616
+ :query_params => query_params,
1617
+ :form_params => form_params,
1618
+ :body => post_body,
1619
+ :auth_names => auth_names,
1620
+ :return_type => return_type
1621
+ )
1622
+
1623
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1624
+ if @api_client.config.debugging
1625
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_room_security_info\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1626
+ end
1627
+ return data, status_code, headers
1628
+ end
1629
+
1630
+ # Get available room tags
1631
+ # Returns the custom room tags available to the caller as a flat array of names, not of objects. What the array holds depends on the account: a portal administrator gets the whole catalog, including tags that no room uses yet, while every other account gets only the tags attached to rooms it can see, with duplicates removed. An empty answer therefore means that this caller sees no tagged room, not that the portal has no tags. `filterValue` keeps the names that contain the given text, ignoring case, while `count` and `startIndex` page the result; no total is returned, so a page shorter than `count` is the signal that the list is exhausted. The names are exactly the values accepted by the `tags` filter of `GET api/2.0/files/rooms` and by the room tag calls, which makes this the call to fill a tag picker with. Add a tag with `POST api/2.0/files/tags` and check whether one is still in use with `GET api/2.0/files/tags/{tagName}/haslinks`.
1632
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-tags-info/
1633
+ # @param [Hash] opts the optional parameters
1634
+ # @option opts [Integer] :count How many tag names one page may carry. The answer reports no total, so a page shorter than this is the sign that the list is exhausted.
1635
+ # @option opts [Integer] :start_index How many tag names to skip before the page begins. Raise it by the number of names already received to read the next page.
1636
+ # @option opts [String] :filter_value Keeps only the tag names that contain this text, ignoring case. It is a substring match, so a fragment from the middle of a name is enough.
1637
+ # @return [StringArrayWrapper]
1638
+ def get_room_tags_info(opts = {})
1639
+ data, _status_code, _headers = get_room_tags_info_with_http_info(opts)
1640
+ data
1641
+ end
1642
+
1643
+ # Get available room tags
1644
+ # Returns the custom room tags available to the caller as a flat array of names, not of objects. What the array holds depends on the account: a portal administrator gets the whole catalog, including tags that no room uses yet, while every other account gets only the tags attached to rooms it can see, with duplicates removed. An empty answer therefore means that this caller sees no tagged room, not that the portal has no tags. `filterValue` keeps the names that contain the given text, ignoring case, while `count` and `startIndex` page the result; no total is returned, so a page shorter than `count` is the signal that the list is exhausted. The names are exactly the values accepted by the `tags` filter of `GET api/2.0/files/rooms` and by the room tag calls, which makes this the call to fill a tag picker with. Add a tag with `POST api/2.0/files/tags` and check whether one is still in use with `GET api/2.0/files/tags/{tagName}/haslinks`.
1645
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-tags-info/
1646
+ # @param [Hash] opts the optional parameters
1647
+ # @option opts [Integer] :count How many tag names one page may carry. The answer reports no total, so a page shorter than this is the sign that the list is exhausted.
1648
+ # @option opts [Integer] :start_index How many tag names to skip before the page begins. Raise it by the number of names already received to read the next page.
1649
+ # @option opts [String] :filter_value Keeps only the tag names that contain this text, ignoring case. It is a substring match, so a fragment from the middle of a name is enough.
1650
+ # @return [Array<(StringArrayWrapper, Integer, Hash)>] StringArrayWrapper data, response status code and response headers
1651
+ def get_room_tags_info_with_http_info(opts = {})
1652
+ if @api_client.config.debugging
1653
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_room_tags_info ...'
1654
+ end
1655
+ if @api_client.config.client_side_validation && !opts[:'count'].nil? && opts[:'count'] > 100
1656
+ fail ArgumentError, 'invalid value for "opts[:"count"]" when calling Rooms::RoomsApi.get_room_tags_info, must be smaller than or equal to 100.'
1657
+ end
1658
+
1659
+ if @api_client.config.client_side_validation && !opts[:'count'].nil? && opts[:'count'] < 1
1660
+ fail ArgumentError, 'invalid value for "opts[:"count"]" when calling Rooms::RoomsApi.get_room_tags_info, must be greater than or equal to 1.'
1661
+ end
1662
+
1663
+ if @api_client.config.client_side_validation && !opts[:'start_index'].nil? && opts[:'start_index'] > 2147483647
1664
+ fail ArgumentError, 'invalid value for "opts[:"start_index"]" when calling Rooms::RoomsApi.get_room_tags_info, must be smaller than or equal to 2147483647.'
1665
+ end
1666
+
1667
+ if @api_client.config.client_side_validation && !opts[:'start_index'].nil? && opts[:'start_index'] < 0
1668
+ fail ArgumentError, 'invalid value for "opts[:"start_index"]" when calling Rooms::RoomsApi.get_room_tags_info, must be greater than or equal to 0.'
1669
+ end
1670
+
1671
+ # resource path
1672
+ local_var_path = '/api/2.0/files/tags'
1673
+
1674
+ # query parameters
1675
+ query_params = opts[:query_params] || {}
1676
+ query_params[:'count'] = opts[:'count'] if !opts[:'count'].nil?
1677
+ query_params[:'startIndex'] = opts[:'start_index'] if !opts[:'start_index'].nil?
1678
+ query_params[:'filterValue'] = opts[:'filter_value'] if !opts[:'filter_value'].nil?
1679
+
1680
+ # header parameters
1681
+ header_params = opts[:header_params] || {}
1682
+ # HTTP header 'Accept' (if needed)
1683
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1684
+
1685
+ # form parameters
1686
+ form_params = opts[:form_params] || {}
1687
+
1688
+ # http body (model)
1689
+ post_body = opts[:debug_body]
1690
+
1691
+ # return_type
1692
+ return_type = opts[:debug_return_type] || 'StringArrayWrapper'
1693
+
1694
+ # auth_names
1695
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
1696
+
1697
+ new_options = opts.merge(
1698
+ :operation => :"Rooms::RoomsApi.get_room_tags_info",
1699
+ :header_params => header_params,
1700
+ :query_params => query_params,
1701
+ :form_params => form_params,
1702
+ :body => post_body,
1703
+ :auth_names => auth_names,
1704
+ :return_type => return_type
1705
+ )
1706
+
1707
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1708
+ if @api_client.config.debugging
1709
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_room_tags_info\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1710
+ end
1711
+ return data, status_code, headers
1712
+ end
1713
+
1714
+ # Get room template creation status
1715
+ # Reports the state of the room template creation the caller started with `POST api/2.0/files/roomtemplate`. The record is private to the account that started the job: work started by another member is never reported, and a caller who has started none gets an empty response instead of an object. Poll until `isCompleted` turns true, then take the identifier of the finished template from `templateId`; a non-empty `error` means the job failed and no template was kept. Treat `isCompleted` as the completion signal rather than `progress`, which the background job only sets to 100 once the work is over. The record outlives the job, so a finished operation can be read again and keeps returning the same identifier until the caller starts another template creation, which replaces it. The call only reads state and needs no access to the source room or to the template, but it does require an authenticated caller.
1716
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-template-creating-status/
1717
+ # @param [Hash] opts the optional parameters
1718
+ # @return [RoomTemplateStatusWrapper]
1719
+ def get_room_template_creating_status(opts = {})
1720
+ data, _status_code, _headers = get_room_template_creating_status_with_http_info(opts)
1721
+ data
1722
+ end
1723
+
1724
+ # Get room template creation status
1725
+ # Reports the state of the room template creation the caller started with `POST api/2.0/files/roomtemplate`. The record is private to the account that started the job: work started by another member is never reported, and a caller who has started none gets an empty response instead of an object. Poll until `isCompleted` turns true, then take the identifier of the finished template from `templateId`; a non-empty `error` means the job failed and no template was kept. Treat `isCompleted` as the completion signal rather than `progress`, which the background job only sets to 100 once the work is over. The record outlives the job, so a finished operation can be read again and keeps returning the same identifier until the caller starts another template creation, which replaces it. The call only reads state and needs no access to the source room or to the template, but it does require an authenticated caller.
1726
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-room-template-creating-status/
1727
+ # @param [Hash] opts the optional parameters
1728
+ # @return [Array<(RoomTemplateStatusWrapper, Integer, Hash)>] RoomTemplateStatusWrapper data, response status code and response headers
1729
+ def get_room_template_creating_status_with_http_info(opts = {})
1730
+ if @api_client.config.debugging
1731
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_room_template_creating_status ...'
1732
+ end
1733
+ # resource path
1734
+ local_var_path = '/api/2.0/files/roomtemplate/status'
1735
+
1736
+ # query parameters
1737
+ query_params = opts[:query_params] || {}
1738
+
1739
+ # header parameters
1740
+ header_params = opts[:header_params] || {}
1741
+ # HTTP header 'Accept' (if needed)
1742
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1743
+
1744
+ # form parameters
1745
+ form_params = opts[:form_params] || {}
1746
+
1747
+ # http body (model)
1748
+ post_body = opts[:debug_body]
1749
+
1750
+ # return_type
1751
+ return_type = opts[:debug_return_type] || 'RoomTemplateStatusWrapper'
1752
+
1753
+ # auth_names
1754
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
1755
+
1756
+ new_options = opts.merge(
1757
+ :operation => :"Rooms::RoomsApi.get_room_template_creating_status",
1758
+ :header_params => header_params,
1759
+ :query_params => query_params,
1760
+ :form_params => form_params,
1761
+ :body => post_body,
1762
+ :auth_names => auth_names,
1763
+ :return_type => return_type
1764
+ )
1765
+
1766
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1767
+ if @api_client.config.debugging
1768
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_room_template_creating_status\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1769
+ end
1770
+ return data, status_code, headers
1771
+ end
1772
+
1773
+ # Get rooms
1774
+ # Lists the rooms of one section of the portal: the active rooms by default, or the archive, the form-filling section or the room templates, chosen with `searchArea`. The rooms arrive in `folders` while `files` stays empty, `current` describes the section itself, and `total` counts every room that matched the filters before paging. A caller sees only the rooms they created or were invited to, while a portal administrator sees all of them, so an empty answer means nothing is visible to this account rather than nothing exists. The remaining parameters narrow the same set, by room type, title, tags, member, owner, storage, quota and privacy, and they combine with each other. Sorting is not free of side effects: a `sortBy` value is also stored as this account's default order for later listings, and omitting it reuses the stored order. Page the result with `count` and `startIndex`. Read a single room with `GET api/2.0/files/rooms/{id}`, and create one with `POST api/2.0/files/rooms`.
1775
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-rooms-folder/
1776
+ # @param [Hash] opts the optional parameters
1777
+ # @option opts [Array<RoomType>] :type Keeps only the rooms of the listed kinds. Repeat the parameter to pass more than one value; they are combined with OR, and omitting it returns the rooms of every kind.
1778
+ # @option opts [String] :subject_id Keeps only the rooms this account or group has access to, which is how the rooms of one member are listed. The identifier comes from the portal people and group listings, and the exclude flag turns the filter into its opposite.
1779
+ # @option opts [String] :subject_owner_id Keeps only the rooms created by this account, regardless of who else was invited to them. The identifier comes from the portal people listing, and the exclude flag turns the filter into its opposite.
1780
+ # @option opts [SearchArea] :search_area The section to list. Every section is a separate root and a room belongs to exactly one of them at a time, so archiving a room moves it out of the active section. The default is the active section, which leaves the form-filling rooms to their own value.
1781
+ # @option opts [Boolean] :without_tags When true, keeps only the rooms that carry no tag at all, which is the complement of the tag filter. When false or omitted, tags play no part in the selection.
1782
+ # @option opts [String] :tags A JSON array of tag names serialized into a single query value, for example [Important,Legal]. A room matches when it carries any one of them. Take the names from `GET api/2.0/files/tags`; a name that is not in the catalog simply matches nothing.
1783
+ # @option opts [Boolean] :exclude_subject Inverts the two subject filters: when true, the rooms of the named account are the ones left out of the answer instead of the only ones kept. It does nothing on its own.
1784
+ # @option opts [ProviderFilter] :provider Keeps only the rooms whose content lives in the named third-party service, for portals where rooms may be connected to external storage. The default keeps rooms of every origin.
1785
+ # @option opts [QuotaFilter] :quota_filter Splits the rooms by whether a storage quota was set on the room itself or it follows the portal default, which is how rooms with a custom limit are found.
1786
+ # @option opts [StorageFilter] :storage_filter Splits the rooms by where their content is stored, in the portal itself or in a connected third-party account. It is the coarse form of the provider filter.
1787
+ # @option opts [RoomPrivacyFilter] :privacy_filter Splits the rooms by whether they are private, that is encrypted rooms whose content the portal cannot read. Omitting it returns both kinds.
1788
+ # @option opts [Boolean] :with_ai_folder Keeps only the rooms that hold a .ai folder in their root. The content of that folder is read with `GET api/2.0/files/rooms/{id}/ai`. Omitting it returns rooms with and without the folder.
1789
+ # @option opts [Integer] :count How many rooms one page may carry. Ask for the next page by raising the start index by the number of rooms already received.
1790
+ # @option opts [Integer] :start_index How many matching rooms to skip before the page begins. Page through the answer until the skip plus the rooms received reaches the total it reports.
1791
+ # @option opts [String] :sort_by The field to order the rooms by, named as in the file listings: `AZ` for the title, `DateAndTime` for the last change, `DateAndTimeCreation`, `Author`, `Size`, `Type`, `RoomType`, `Tags`, `UsedSpace`, `LastOpened`. The name is matched ignoring case, an unknown one is rejected rather than ignored, and the accepted one also becomes this account's stored order.
1792
+ # @option opts [SortOrder] :sort_order The direction of the order chosen by the sort field. It has no effect when no sort field is given and the stored order of the account is used.
1793
+ # @option opts [String] :filter_value Keeps only the rooms whose title contains this text, ignoring case. It is a substring match over the title alone: room content and tags are not searched.
1794
+ # @option opts [Integer] :group_id Keeps only the rooms that belong to this room group. The identifier comes from `GET api/2.0/files/group`; the groups of portal members are a different concept and their identifiers do not match here.
1795
+ # @option opts [Integer] :metadata_template_id The ID of the metadata template the entries must be assigned to. On its own it narrows the listing to the entries carrying the template; together with the metadata filters it also pins the template the filtered fields belong to.
1796
+ # @option opts [String] :metadata_filters The URL-encoded JSON array of the metadata filter conditions, e.g. [{fieldId:1,op:contains,value:ACME},{fieldId:2,op:range,from:2026-01-01,to:2026-06-30},{fieldId:3,op:in,optionIds:[...]}]. A string field takes eq (the whole value) or contains (a part of it); a number or a date field takes range with inclusive bounds, or gt, gte, lt, lte with the single bound in value; a choice field takes in. A date-only bound covers the whole day, so to:2026-06-30 includes the values stored on 30 June and gt:2026-06-30 starts after it. A custom field is addressed by its name instead of the fieldId: {name:Client,op:eq,value:ACME}. The same filter is taken as a typed request body by POST api/2.0/files/rooms/search.
1797
+ # @option opts [Boolean] :include_hidden_metadata Whether the text search, and the metadataMatches it reports, also look at the values of the hidden metadata templates (created with visible false for the metadata a service keeps for itself, which the web client never shows). False, the default, leaves them out, so an entry is not found by such a value; true takes them in. metadataTemplateId and metadataFilters are not concerned: a hidden template or field named there is searched either way.
1798
+ # @return [FolderContentWrapper]
1799
+ def get_rooms_folder(opts = {})
1800
+ data, _status_code, _headers = get_rooms_folder_with_http_info(opts)
1801
+ data
1802
+ end
1803
+
1804
+ # Get rooms
1805
+ # Lists the rooms of one section of the portal: the active rooms by default, or the archive, the form-filling section or the room templates, chosen with `searchArea`. The rooms arrive in `folders` while `files` stays empty, `current` describes the section itself, and `total` counts every room that matched the filters before paging. A caller sees only the rooms they created or were invited to, while a portal administrator sees all of them, so an empty answer means nothing is visible to this account rather than nothing exists. The remaining parameters narrow the same set, by room type, title, tags, member, owner, storage, quota and privacy, and they combine with each other. Sorting is not free of side effects: a `sortBy` value is also stored as this account's default order for later listings, and omitting it reuses the stored order. Page the result with `count` and `startIndex`. Read a single room with `GET api/2.0/files/rooms/{id}`, and create one with `POST api/2.0/files/rooms`.
1806
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-rooms-folder/
1807
+ # @param [Hash] opts the optional parameters
1808
+ # @option opts [Array<RoomType>] :type Keeps only the rooms of the listed kinds. Repeat the parameter to pass more than one value; they are combined with OR, and omitting it returns the rooms of every kind.
1809
+ # @option opts [String] :subject_id Keeps only the rooms this account or group has access to, which is how the rooms of one member are listed. The identifier comes from the portal people and group listings, and the exclude flag turns the filter into its opposite.
1810
+ # @option opts [String] :subject_owner_id Keeps only the rooms created by this account, regardless of who else was invited to them. The identifier comes from the portal people listing, and the exclude flag turns the filter into its opposite.
1811
+ # @option opts [SearchArea] :search_area The section to list. Every section is a separate root and a room belongs to exactly one of them at a time, so archiving a room moves it out of the active section. The default is the active section, which leaves the form-filling rooms to their own value.
1812
+ # @option opts [Boolean] :without_tags When true, keeps only the rooms that carry no tag at all, which is the complement of the tag filter. When false or omitted, tags play no part in the selection.
1813
+ # @option opts [String] :tags A JSON array of tag names serialized into a single query value, for example [Important,Legal]. A room matches when it carries any one of them. Take the names from `GET api/2.0/files/tags`; a name that is not in the catalog simply matches nothing.
1814
+ # @option opts [Boolean] :exclude_subject Inverts the two subject filters: when true, the rooms of the named account are the ones left out of the answer instead of the only ones kept. It does nothing on its own.
1815
+ # @option opts [ProviderFilter] :provider Keeps only the rooms whose content lives in the named third-party service, for portals where rooms may be connected to external storage. The default keeps rooms of every origin.
1816
+ # @option opts [QuotaFilter] :quota_filter Splits the rooms by whether a storage quota was set on the room itself or it follows the portal default, which is how rooms with a custom limit are found.
1817
+ # @option opts [StorageFilter] :storage_filter Splits the rooms by where their content is stored, in the portal itself or in a connected third-party account. It is the coarse form of the provider filter.
1818
+ # @option opts [RoomPrivacyFilter] :privacy_filter Splits the rooms by whether they are private, that is encrypted rooms whose content the portal cannot read. Omitting it returns both kinds.
1819
+ # @option opts [Boolean] :with_ai_folder Keeps only the rooms that hold a .ai folder in their root. The content of that folder is read with `GET api/2.0/files/rooms/{id}/ai`. Omitting it returns rooms with and without the folder.
1820
+ # @option opts [Integer] :count How many rooms one page may carry. Ask for the next page by raising the start index by the number of rooms already received.
1821
+ # @option opts [Integer] :start_index How many matching rooms to skip before the page begins. Page through the answer until the skip plus the rooms received reaches the total it reports.
1822
+ # @option opts [String] :sort_by The field to order the rooms by, named as in the file listings: `AZ` for the title, `DateAndTime` for the last change, `DateAndTimeCreation`, `Author`, `Size`, `Type`, `RoomType`, `Tags`, `UsedSpace`, `LastOpened`. The name is matched ignoring case, an unknown one is rejected rather than ignored, and the accepted one also becomes this account's stored order.
1823
+ # @option opts [SortOrder] :sort_order The direction of the order chosen by the sort field. It has no effect when no sort field is given and the stored order of the account is used.
1824
+ # @option opts [String] :filter_value Keeps only the rooms whose title contains this text, ignoring case. It is a substring match over the title alone: room content and tags are not searched.
1825
+ # @option opts [Integer] :group_id Keeps only the rooms that belong to this room group. The identifier comes from `GET api/2.0/files/group`; the groups of portal members are a different concept and their identifiers do not match here.
1826
+ # @option opts [Integer] :metadata_template_id The ID of the metadata template the entries must be assigned to. On its own it narrows the listing to the entries carrying the template; together with the metadata filters it also pins the template the filtered fields belong to.
1827
+ # @option opts [String] :metadata_filters The URL-encoded JSON array of the metadata filter conditions, e.g. [{fieldId:1,op:contains,value:ACME},{fieldId:2,op:range,from:2026-01-01,to:2026-06-30},{fieldId:3,op:in,optionIds:[...]}]. A string field takes eq (the whole value) or contains (a part of it); a number or a date field takes range with inclusive bounds, or gt, gte, lt, lte with the single bound in value; a choice field takes in. A date-only bound covers the whole day, so to:2026-06-30 includes the values stored on 30 June and gt:2026-06-30 starts after it. A custom field is addressed by its name instead of the fieldId: {name:Client,op:eq,value:ACME}. The same filter is taken as a typed request body by POST api/2.0/files/rooms/search.
1828
+ # @option opts [Boolean] :include_hidden_metadata Whether the text search, and the metadataMatches it reports, also look at the values of the hidden metadata templates (created with visible false for the metadata a service keeps for itself, which the web client never shows). False, the default, leaves them out, so an entry is not found by such a value; true takes them in. metadataTemplateId and metadataFilters are not concerned: a hidden template or field named there is searched either way.
1829
+ # @return [Array<(FolderContentWrapper, Integer, Hash)>] FolderContentWrapper data, response status code and response headers
1830
+ def get_rooms_folder_with_http_info(opts = {})
1831
+ if @api_client.config.debugging
1832
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_rooms_folder ...'
1833
+ end
1834
+ if @api_client.config.client_side_validation && !opts[:'count'].nil? && opts[:'count'] > 100
1835
+ fail ArgumentError, 'invalid value for "opts[:"count"]" when calling Rooms::RoomsApi.get_rooms_folder, must be smaller than or equal to 100.'
1836
+ end
1837
+
1838
+ if @api_client.config.client_side_validation && !opts[:'count'].nil? && opts[:'count'] < 1
1839
+ fail ArgumentError, 'invalid value for "opts[:"count"]" when calling Rooms::RoomsApi.get_rooms_folder, must be greater than or equal to 1.'
1840
+ end
1841
+
1842
+ # resource path
1843
+ local_var_path = '/api/2.0/files/rooms'
1844
+
1845
+ # query parameters
1846
+ query_params = opts[:query_params] || {}
1847
+ query_params[:'type'] = @api_client.build_collection_param(opts[:'type'], :multi) if !opts[:'type'].nil?
1848
+ query_params[:'subjectId'] = opts[:'subject_id'] if !opts[:'subject_id'].nil?
1849
+ query_params[:'subjectOwnerId'] = opts[:'subject_owner_id'] if !opts[:'subject_owner_id'].nil?
1850
+ query_params[:'searchArea'] = opts[:'search_area'] if !opts[:'search_area'].nil?
1851
+ query_params[:'withoutTags'] = opts[:'without_tags'] if !opts[:'without_tags'].nil?
1852
+ query_params[:'tags'] = opts[:'tags'] if !opts[:'tags'].nil?
1853
+ query_params[:'excludeSubject'] = opts[:'exclude_subject'] if !opts[:'exclude_subject'].nil?
1854
+ query_params[:'provider'] = opts[:'provider'] if !opts[:'provider'].nil?
1855
+ query_params[:'quotaFilter'] = opts[:'quota_filter'] if !opts[:'quota_filter'].nil?
1856
+ query_params[:'storageFilter'] = opts[:'storage_filter'] if !opts[:'storage_filter'].nil?
1857
+ query_params[:'privacyFilter'] = opts[:'privacy_filter'] if !opts[:'privacy_filter'].nil?
1858
+ query_params[:'withAiFolder'] = opts[:'with_ai_folder'] if !opts[:'with_ai_folder'].nil?
1859
+ query_params[:'count'] = opts[:'count'] if !opts[:'count'].nil?
1860
+ query_params[:'startIndex'] = opts[:'start_index'] if !opts[:'start_index'].nil?
1861
+ query_params[:'sortBy'] = opts[:'sort_by'] if !opts[:'sort_by'].nil?
1862
+ query_params[:'sortOrder'] = opts[:'sort_order'] if !opts[:'sort_order'].nil?
1863
+ query_params[:'filterValue'] = opts[:'filter_value'] if !opts[:'filter_value'].nil?
1864
+ query_params[:'groupId'] = opts[:'group_id'] if !opts[:'group_id'].nil?
1865
+ query_params[:'metadataTemplateId'] = opts[:'metadata_template_id'] if !opts[:'metadata_template_id'].nil?
1866
+ query_params[:'metadataFilters'] = opts[:'metadata_filters'] if !opts[:'metadata_filters'].nil?
1867
+ query_params[:'includeHiddenMetadata'] = opts[:'include_hidden_metadata'] if !opts[:'include_hidden_metadata'].nil?
1868
+
1869
+ # header parameters
1870
+ header_params = opts[:header_params] || {}
1871
+ # HTTP header 'Accept' (if needed)
1872
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1873
+
1874
+ # form parameters
1875
+ form_params = opts[:form_params] || {}
1876
+
1877
+ # http body (model)
1878
+ post_body = opts[:debug_body]
1879
+
1880
+ # return_type
1881
+ return_type = opts[:debug_return_type] || 'FolderContentWrapper'
1882
+
1883
+ # auth_names
1884
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
1885
+
1886
+ new_options = opts.merge(
1887
+ :operation => :"Rooms::RoomsApi.get_rooms_folder",
1888
+ :header_params => header_params,
1889
+ :query_params => query_params,
1890
+ :form_params => form_params,
1891
+ :body => post_body,
1892
+ :auth_names => auth_names,
1893
+ :return_type => return_type
1894
+ )
1895
+
1896
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1897
+ if @api_client.config.debugging
1898
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_rooms_folder\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1899
+ end
1900
+ return data, status_code, headers
1901
+ end
1902
+
1903
+ # Get new items in all rooms
1904
+ # Collects everything that is marked as new for the caller across the active rooms into one answer, grouped first by the day an entry changed and then by the room it belongs to. An entry becomes new when somebody else creates or changes it in a room the caller has already opened, so the caller's own work never shows up here, and neither does anything from a room they have never visited. Only files are listed: a new subfolder is not an item, although files created inside it are, at any depth. The days come newest first, and inside a day the rooms and their files follow the same order by change time. The archive is out of scope, only rooms of the active section are covered. Reading the list clears nothing: the marks stay until the room itself is opened with `GET api/2.0/files/rooms/{id}`. An empty array means that this account has nothing new. For one room, use `GET api/2.0/files/rooms/{id}/news`.
1905
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-rooms-new-items/
1906
+ # @param [Hash] opts the optional parameters
1907
+ # @return [NewItemsRoomNewItemsArrayWrapper]
1908
+ def get_rooms_new_items(opts = {})
1909
+ data, _status_code, _headers = get_rooms_new_items_with_http_info(opts)
1910
+ data
1911
+ end
1912
+
1913
+ # Get new items in all rooms
1914
+ # Collects everything that is marked as new for the caller across the active rooms into one answer, grouped first by the day an entry changed and then by the room it belongs to. An entry becomes new when somebody else creates or changes it in a room the caller has already opened, so the caller's own work never shows up here, and neither does anything from a room they have never visited. Only files are listed: a new subfolder is not an item, although files created inside it are, at any depth. The days come newest first, and inside a day the rooms and their files follow the same order by change time. The archive is out of scope, only rooms of the active section are covered. Reading the list clears nothing: the marks stay until the room itself is opened with `GET api/2.0/files/rooms/{id}`. An empty array means that this account has nothing new. For one room, use `GET api/2.0/files/rooms/{id}/news`.
1915
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-rooms-new-items/
1916
+ # @param [Hash] opts the optional parameters
1917
+ # @return [Array<(NewItemsRoomNewItemsArrayWrapper, Integer, Hash)>] NewItemsRoomNewItemsArrayWrapper data, response status code and response headers
1918
+ def get_rooms_new_items_with_http_info(opts = {})
1919
+ if @api_client.config.debugging
1920
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_rooms_new_items ...'
1921
+ end
1922
+ # resource path
1923
+ local_var_path = '/api/2.0/files/rooms/news'
1924
+
1925
+ # query parameters
1926
+ query_params = opts[:query_params] || {}
1927
+
1928
+ # header parameters
1929
+ header_params = opts[:header_params] || {}
1930
+ # HTTP header 'Accept' (if needed)
1931
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1932
+
1933
+ # form parameters
1934
+ form_params = opts[:form_params] || {}
1935
+
1936
+ # http body (model)
1937
+ post_body = opts[:debug_body]
1938
+
1939
+ # return_type
1940
+ return_type = opts[:debug_return_type] || 'NewItemsRoomNewItemsArrayWrapper'
1941
+
1942
+ # auth_names
1943
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
1944
+
1945
+ new_options = opts.merge(
1946
+ :operation => :"Rooms::RoomsApi.get_rooms_new_items",
1947
+ :header_params => header_params,
1948
+ :query_params => query_params,
1949
+ :form_params => form_params,
1950
+ :body => post_body,
1951
+ :auth_names => auth_names,
1952
+ :return_type => return_type
1953
+ )
1954
+
1955
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1956
+ if @api_client.config.debugging
1957
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_rooms_new_items\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1958
+ end
1959
+ return data, status_code, headers
1960
+ end
1961
+
1962
+ # Get the room primary external link
1963
+ # Returns the primary external link of a room, which is the one address meant to be handed out to people outside the portal. A public room and a form filling room get such a link when they are created, and asking for it again returns the same link rather than a new one, so the answer is stable. In a room that has no primary link yet this call creates one instead of reporting nothing, which needs the right to manage the links of the room: a member invited with a lower level is refused with 403, and so is anybody who is not in the room at all. A link that was explicitly revoked stays revoked and is reported as missing rather than recreated, and an unknown room is answered with 404 as well. An archived public room still reports its link. The answer is the same entry that `GET api/2.0/files/rooms/{id}/links` returns with the primary flag set, including the request token that has to travel with the address.
1964
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-rooms-primary-external-link/
1965
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
1966
+ # @param [Hash] opts the optional parameters
1967
+ # @return [FileShareWrapper]
1968
+ def get_rooms_primary_external_link(id, opts = {})
1969
+ data, _status_code, _headers = get_rooms_primary_external_link_with_http_info(id, opts)
1970
+ data
1971
+ end
1972
+
1973
+ # Get the room primary external link
1974
+ # Returns the primary external link of a room, which is the one address meant to be handed out to people outside the portal. A public room and a form filling room get such a link when they are created, and asking for it again returns the same link rather than a new one, so the answer is stable. In a room that has no primary link yet this call creates one instead of reporting nothing, which needs the right to manage the links of the room: a member invited with a lower level is refused with 403, and so is anybody who is not in the room at all. A link that was explicitly revoked stays revoked and is reported as missing rather than recreated, and an unknown room is answered with 404 as well. An archived public room still reports its link. The answer is the same entry that `GET api/2.0/files/rooms/{id}/links` returns with the primary flag set, including the request token that has to travel with the address.
1975
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/get-rooms-primary-external-link/
1976
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
1977
+ # @param [Hash] opts the optional parameters
1978
+ # @return [Array<(FileShareWrapper, Integer, Hash)>] FileShareWrapper data, response status code and response headers
1979
+ def get_rooms_primary_external_link_with_http_info(id, opts = {})
1980
+ if @api_client.config.debugging
1981
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.get_rooms_primary_external_link ...'
1982
+ end
1983
+ # verify the required parameter 'id' is set
1984
+ if @api_client.config.client_side_validation && id.nil?
1985
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.get_rooms_primary_external_link"
1986
+ end
1987
+ # resource path
1988
+ local_var_path = '/api/2.0/files/rooms/{id}/link'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
1989
+
1990
+ # query parameters
1991
+ query_params = opts[:query_params] || {}
1992
+
1993
+ # header parameters
1994
+ header_params = opts[:header_params] || {}
1995
+ # HTTP header 'Accept' (if needed)
1996
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1997
+
1998
+ # form parameters
1999
+ form_params = opts[:form_params] || {}
2000
+
2001
+ # http body (model)
2002
+ post_body = opts[:debug_body]
2003
+
2004
+ # return_type
2005
+ return_type = opts[:debug_return_type] || 'FileShareWrapper'
2006
+
2007
+ # auth_names
2008
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2009
+
2010
+ new_options = opts.merge(
2011
+ :operation => :"Rooms::RoomsApi.get_rooms_primary_external_link",
2012
+ :header_params => header_params,
2013
+ :query_params => query_params,
2014
+ :form_params => form_params,
2015
+ :body => post_body,
2016
+ :auth_names => auth_names,
2017
+ :return_type => return_type
2018
+ )
2019
+
2020
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2021
+ if @api_client.config.debugging
2022
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#get_rooms_primary_external_link\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2023
+ end
2024
+ return data, status_code, headers
2025
+ end
2026
+
2027
+ # Check room tag usage
2028
+ # Reports whether any room still carries the named tag, which is the check to run before the tag is deleted from the catalog. Only a portal administrator may call it, and every other account is refused. The name is matched exactly against the catalog, and a name that is not in it is answered with 404. That also tells the two ways a tag stops being used apart: taking the tag off the last room that carried it leaves the tag in the catalog and turns the answer to false, while deleting that last room removes the tag itself, after which the call answers 404. A true answer means at least one room, active or archived, still references the tag, so deleting it with `DELETE api/2.0/files/tags` would strip it from those rooms. The handler reads the tag name from the query string, so the value has to be sent twice: in the path segment and as the `tagName` query parameter.
2029
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/has-tag-links/
2030
+ # @param tag_name2 [String] The tag being checked. Send the same value as the `tagName` query parameter, which is the one the handler reads.
2031
+ # @param [Hash] opts the optional parameters
2032
+ # @option opts [String] :tag_name The tag to check, spelled exactly as it is stored in the catalog. This query value is the one the handler reads, so the path segment of the same name has to repeat it.
2033
+ # @return [BooleanWrapper]
2034
+ def has_tag_links(tag_name2, opts = {})
2035
+ data, _status_code, _headers = has_tag_links_with_http_info(tag_name2, opts)
2036
+ data
2037
+ end
2038
+
2039
+ # Check room tag usage
2040
+ # Reports whether any room still carries the named tag, which is the check to run before the tag is deleted from the catalog. Only a portal administrator may call it, and every other account is refused. The name is matched exactly against the catalog, and a name that is not in it is answered with 404. That also tells the two ways a tag stops being used apart: taking the tag off the last room that carried it leaves the tag in the catalog and turns the answer to false, while deleting that last room removes the tag itself, after which the call answers 404. A true answer means at least one room, active or archived, still references the tag, so deleting it with `DELETE api/2.0/files/tags` would strip it from those rooms. The handler reads the tag name from the query string, so the value has to be sent twice: in the path segment and as the `tagName` query parameter.
2041
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/has-tag-links/
2042
+ # @param tag_name2 [String] The tag being checked. Send the same value as the `tagName` query parameter, which is the one the handler reads.
2043
+ # @param [Hash] opts the optional parameters
2044
+ # @option opts [String] :tag_name The tag to check, spelled exactly as it is stored in the catalog. This query value is the one the handler reads, so the path segment of the same name has to repeat it.
2045
+ # @return [Array<(BooleanWrapper, Integer, Hash)>] BooleanWrapper data, response status code and response headers
2046
+ def has_tag_links_with_http_info(tag_name2, opts = {})
2047
+ if @api_client.config.debugging
2048
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.has_tag_links ...'
2049
+ end
2050
+ # verify the required parameter 'tag_name2' is set
2051
+ if @api_client.config.client_side_validation && tag_name2.nil?
2052
+ fail ArgumentError, "Missing the required parameter 'tag_name2' when calling Rooms::RoomsApi.has_tag_links"
2053
+ end
2054
+ # resource path
2055
+ local_var_path = '/api/2.0/files/tags/{tagName}/haslinks'.sub('{' + 'tagName' + '}', CGI.escape(tag_name2.to_s))
2056
+
2057
+ # query parameters
2058
+ query_params = opts[:query_params] || {}
2059
+ query_params[:'tagName'] = opts[:'tag_name'] if !opts[:'tag_name'].nil?
2060
+
2061
+ # header parameters
2062
+ header_params = opts[:header_params] || {}
2063
+ # HTTP header 'Accept' (if needed)
2064
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2065
+
2066
+ # form parameters
2067
+ form_params = opts[:form_params] || {}
2068
+
2069
+ # http body (model)
2070
+ post_body = opts[:debug_body]
2071
+
2072
+ # return_type
2073
+ return_type = opts[:debug_return_type] || 'BooleanWrapper'
2074
+
2075
+ # auth_names
2076
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2077
+
2078
+ new_options = opts.merge(
2079
+ :operation => :"Rooms::RoomsApi.has_tag_links",
2080
+ :header_params => header_params,
2081
+ :query_params => query_params,
2082
+ :form_params => form_params,
2083
+ :body => post_body,
2084
+ :auth_names => auth_names,
2085
+ :return_type => return_type
2086
+ )
2087
+
2088
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2089
+ if @api_client.config.debugging
2090
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#has_tag_links\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2091
+ end
2092
+ return data, status_code, headers
2093
+ end
2094
+
2095
+ # Pin a room
2096
+ # Pins a room to the top of the room list of the calling account and returns the room with the pinned flag set. Pinning is personal: it changes the order only for the caller, is invisible to the other members of the room, and does not survive a trip through the Archive section, so an unarchived room has to be pinned again. Pinned rooms stay above the unpinned ones whatever sorting or filter the listing uses, and their own order between each other is stable. An account may keep only a limited number of pinned rooms at a time, ten on a portal with the default configuration, and AI rooms are counted separately against their own allowance; a request over the limit is refused until something is unpinned with `PUT api/2.0/files/rooms/{id}/unpin`. Pinning a room that is already pinned changes nothing and is safe to repeat. Anybody who can read the room may pin it, including guests and portal administrators who were never invited, while somebody who is not in the room is refused, an archived room is rejected and an unknown room is answered as missing.
2097
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/pin-room/
2098
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
2099
+ # @param [Hash] opts the optional parameters
2100
+ # @return [FolderWrapper, ThirdPartyFolderWrapper]
2101
+ def pin_room(id, opts = {})
2102
+ data, _status_code, _headers = pin_room_with_http_info(id, opts)
2103
+ data
2104
+ end
2105
+
2106
+ # Pin a room
2107
+ # Pins a room to the top of the room list of the calling account and returns the room with the pinned flag set. Pinning is personal: it changes the order only for the caller, is invisible to the other members of the room, and does not survive a trip through the Archive section, so an unarchived room has to be pinned again. Pinned rooms stay above the unpinned ones whatever sorting or filter the listing uses, and their own order between each other is stable. An account may keep only a limited number of pinned rooms at a time, ten on a portal with the default configuration, and AI rooms are counted separately against their own allowance; a request over the limit is refused until something is unpinned with `PUT api/2.0/files/rooms/{id}/unpin`. Pinning a room that is already pinned changes nothing and is safe to repeat. Anybody who can read the room may pin it, including guests and portal administrators who were never invited, while somebody who is not in the room is refused, an archived room is rejected and an unknown room is answered as missing.
2108
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/pin-room/
2109
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
2110
+ # @param [Hash] opts the optional parameters
2111
+ # @return [Array<(FolderWrapper, ThirdPartyFolderWrapper, Integer, Hash)>] FolderWrapper, ThirdPartyFolderWrapper data, response status code and response headers
2112
+ def pin_room_with_http_info(id, opts = {})
2113
+ if @api_client.config.debugging
2114
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.pin_room ...'
2115
+ end
2116
+ # verify the required parameter 'id' is set
2117
+ if @api_client.config.client_side_validation && id.nil?
2118
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.pin_room"
2119
+ end
2120
+ # resource path
2121
+ local_var_path = '/api/2.0/files/rooms/{id}/pin'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
2122
+
2123
+ # query parameters
2124
+ query_params = opts[:query_params] || {}
2125
+
2126
+ # header parameters
2127
+ header_params = opts[:header_params] || {}
2128
+ # HTTP header 'Accept' (if needed)
2129
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2130
+
2131
+ # form parameters
2132
+ form_params = opts[:form_params] || {}
2133
+
2134
+ # http body (model)
2135
+ post_body = opts[:debug_body]
2136
+
2137
+ # return_type
2138
+ return_type = opts[:debug_return_type] || (id.is_a?(String) ? 'ThirdPartyFolderWrapper' : 'FolderWrapper')
2139
+
2140
+ # auth_names
2141
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2142
+
2143
+ new_options = opts.merge(
2144
+ :operation => :"Rooms::RoomsApi.pin_room",
2145
+ :header_params => header_params,
2146
+ :query_params => query_params,
2147
+ :form_params => form_params,
2148
+ :body => post_body,
2149
+ :auth_names => auth_names,
2150
+ :return_type => return_type
2151
+ )
2152
+
2153
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
2154
+ if @api_client.config.debugging
2155
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#pin_room\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2156
+ end
2157
+ return data, status_code, headers
2158
+ end
2159
+
2160
+ # Reorder room contents
2161
+ # Renumbers the manual order of the items lying directly in a room so that they run from one upwards with no gaps and no duplicates, and returns the room. The order of the items relative to each other is preserved: only the numbers are compacted, and nothing is moved, renamed, duplicated or deleted. Files and folders share one sequence. Nested folders keep their own numbering and are not touched, so each level is compacted on its own. The operation is meant for a room with indexing turned on, where the manual order is what listings follow; a room without indexing accepts it and simply has nothing that depends on the result. Running it twice changes nothing the second time, and an already dense sequence is left as it is, which makes the call safe to retry. The caller must be a manager of the room; a member invited with any other level is refused, an archived room is rejected, and an unknown or deleted room is answered as missing.
2162
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/reorder-room/
2163
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
2164
+ # @param [Hash] opts the optional parameters
2165
+ # @return [FolderWrapper, ThirdPartyFolderWrapper]
2166
+ def reorder_room(id, opts = {})
2167
+ data, _status_code, _headers = reorder_room_with_http_info(id, opts)
2168
+ data
2169
+ end
2170
+
2171
+ # Reorder room contents
2172
+ # Renumbers the manual order of the items lying directly in a room so that they run from one upwards with no gaps and no duplicates, and returns the room. The order of the items relative to each other is preserved: only the numbers are compacted, and nothing is moved, renamed, duplicated or deleted. Files and folders share one sequence. Nested folders keep their own numbering and are not touched, so each level is compacted on its own. The operation is meant for a room with indexing turned on, where the manual order is what listings follow; a room without indexing accepts it and simply has nothing that depends on the result. Running it twice changes nothing the second time, and an already dense sequence is left as it is, which makes the call safe to retry. The caller must be a manager of the room; a member invited with any other level is refused, an archived room is rejected, and an unknown or deleted room is answered as missing.
2173
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/reorder-room/
2174
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
2175
+ # @param [Hash] opts the optional parameters
2176
+ # @return [Array<(FolderWrapper, ThirdPartyFolderWrapper, Integer, Hash)>] FolderWrapper, ThirdPartyFolderWrapper data, response status code and response headers
2177
+ def reorder_room_with_http_info(id, opts = {})
2178
+ if @api_client.config.debugging
2179
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.reorder_room ...'
2180
+ end
2181
+ # verify the required parameter 'id' is set
2182
+ if @api_client.config.client_side_validation && id.nil?
2183
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.reorder_room"
2184
+ end
2185
+ # resource path
2186
+ local_var_path = '/api/2.0/files/rooms/{id}/reorder'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
2187
+
2188
+ # query parameters
2189
+ query_params = opts[:query_params] || {}
2190
+
2191
+ # header parameters
2192
+ header_params = opts[:header_params] || {}
2193
+ # HTTP header 'Accept' (if needed)
2194
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2195
+
2196
+ # form parameters
2197
+ form_params = opts[:form_params] || {}
2198
+
2199
+ # http body (model)
2200
+ post_body = opts[:debug_body]
2201
+
2202
+ # return_type
2203
+ return_type = opts[:debug_return_type] || (id.is_a?(String) ? 'ThirdPartyFolderWrapper' : 'FolderWrapper')
2204
+
2205
+ # auth_names
2206
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2207
+
2208
+ new_options = opts.merge(
2209
+ :operation => :"Rooms::RoomsApi.reorder_room",
2210
+ :header_params => header_params,
2211
+ :query_params => query_params,
2212
+ :form_params => form_params,
2213
+ :body => post_body,
2214
+ :auth_names => auth_names,
2215
+ :return_type => return_type
2216
+ )
2217
+
2218
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
2219
+ if @api_client.config.debugging
2220
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#reorder_room\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2221
+ end
2222
+ return data, status_code, headers
2223
+ end
2224
+
2225
+ # Resend the room invitations
2226
+ # Sends the room invitation email again to members who were invited but have not joined yet. `resendAll` covers every pending invitation of the room and makes `usersIds` irrelevant, while an explicit list without that flag is limited to the named accounts. An account that has already accepted the invitation, is not a member of the room, or is invisible to the caller is skipped without an error, and a request that names nobody and does not set the flag does nothing, so a successful answer never proves that a message went out. Nothing about the room or its membership changes, and the operation can be repeated. The caller must be a manager of the room, an archived room is refused, a room template is answered as missing, and a malformed account id is rejected as an invalid request. The call is rate limited, so a client that loops over members should send one batch instead. The response carries no body.
2227
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/resend-email-invitations/
2228
+ # @param id [Integer, String] The room whose invitations are resent, named by the identifier that `GET api/2.0/files/rooms` reports for it.
2229
+ # @param user_invitation [UserInvitation] Which pending invitations to send again.
2230
+ # @param [Hash] opts the optional parameters
2231
+ # @return [nil]
2232
+ def resend_email_invitations(id, user_invitation, opts = {})
2233
+ resend_email_invitations_with_http_info(id, user_invitation, opts)
2234
+ nil
2235
+ end
2236
+
2237
+ # Resend the room invitations
2238
+ # Sends the room invitation email again to members who were invited but have not joined yet. `resendAll` covers every pending invitation of the room and makes `usersIds` irrelevant, while an explicit list without that flag is limited to the named accounts. An account that has already accepted the invitation, is not a member of the room, or is invisible to the caller is skipped without an error, and a request that names nobody and does not set the flag does nothing, so a successful answer never proves that a message went out. Nothing about the room or its membership changes, and the operation can be repeated. The caller must be a manager of the room, an archived room is refused, a room template is answered as missing, and a malformed account id is rejected as an invalid request. The call is rate limited, so a client that loops over members should send one batch instead. The response carries no body.
2239
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/resend-email-invitations/
2240
+ # @param id [Integer, String] The room whose invitations are resent, named by the identifier that `GET api/2.0/files/rooms` reports for it.
2241
+ # @param user_invitation [UserInvitation] Which pending invitations to send again.
2242
+ # @param [Hash] opts the optional parameters
2243
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2244
+ def resend_email_invitations_with_http_info(id, user_invitation, opts = {})
2245
+ if @api_client.config.debugging
2246
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.resend_email_invitations ...'
2247
+ end
2248
+ # verify the required parameter 'id' is set
2249
+ if @api_client.config.client_side_validation && id.nil?
2250
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.resend_email_invitations"
2251
+ end
2252
+ # verify the required parameter 'user_invitation' is set
2253
+ if @api_client.config.client_side_validation && user_invitation.nil?
2254
+ fail ArgumentError, "Missing the required parameter 'user_invitation' when calling Rooms::RoomsApi.resend_email_invitations"
2255
+ end
2256
+ # resource path
2257
+ local_var_path = '/api/2.0/files/rooms/{id}/resend'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
2258
+
2259
+ # query parameters
2260
+ query_params = opts[:query_params] || {}
2261
+
2262
+ # header parameters
2263
+ header_params = opts[:header_params] || {}
2264
+ # HTTP header 'Accept' (if needed)
2265
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2266
+ # HTTP header 'Content-Type'
2267
+ content_type = @api_client.select_header_content_type(['application/json'])
2268
+ if !content_type.nil?
2269
+ header_params['Content-Type'] = content_type
2270
+ end
2271
+
2272
+ # form parameters
2273
+ form_params = opts[:form_params] || {}
2274
+
2275
+ # http body (model)
2276
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(user_invitation)
2277
+
2278
+ # return_type
2279
+ return_type = opts[:debug_return_type]
2280
+
2281
+ # auth_names
2282
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2283
+
2284
+ new_options = opts.merge(
2285
+ :operation => :"Rooms::RoomsApi.resend_email_invitations",
2286
+ :header_params => header_params,
2287
+ :query_params => query_params,
2288
+ :form_params => form_params,
2289
+ :body => post_body,
2290
+ :auth_names => auth_names,
2291
+ :return_type => return_type
2292
+ )
2293
+
2294
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
2295
+ if @api_client.config.debugging
2296
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#resend_email_invitations\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2297
+ end
2298
+ return data, status_code, headers
2299
+ end
2300
+
2301
+ # Search the rooms by metadata
2302
+ # Searches the rooms by metadata. The same filter the rooms listing takes in the metadataTemplateId and metadataFilters query parameters, here as a typed request body for the clients that build the conditions as objects rather than as a JSON string.
2303
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/search-rooms/
2304
+ # @param [Hash] opts the optional parameters
2305
+ # @option opts [RoomsMetadataSearchRequestDto] :rooms_metadata_search_request_dto
2306
+ # @return [FolderContentWrapper]
2307
+ def search_rooms(opts = {})
2308
+ data, _status_code, _headers = search_rooms_with_http_info(opts)
2309
+ data
2310
+ end
2311
+
2312
+ # Search the rooms by metadata
2313
+ # Searches the rooms by metadata. The same filter the rooms listing takes in the metadataTemplateId and metadataFilters query parameters, here as a typed request body for the clients that build the conditions as objects rather than as a JSON string.
2314
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/search-rooms/
2315
+ # @param [Hash] opts the optional parameters
2316
+ # @option opts [RoomsMetadataSearchRequestDto] :rooms_metadata_search_request_dto
2317
+ # @return [Array<(FolderContentWrapper, Integer, Hash)>] FolderContentWrapper data, response status code and response headers
2318
+ def search_rooms_with_http_info(opts = {})
2319
+ if @api_client.config.debugging
2320
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.search_rooms ...'
2321
+ end
2322
+ # resource path
2323
+ local_var_path = '/api/2.0/files/rooms/search'
2324
+
2325
+ # query parameters
2326
+ query_params = opts[:query_params] || {}
2327
+
2328
+ # header parameters
2329
+ header_params = opts[:header_params] || {}
2330
+ # HTTP header 'Accept' (if needed)
2331
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2332
+ # HTTP header 'Content-Type'
2333
+ content_type = @api_client.select_header_content_type(['application/json'])
2334
+ if !content_type.nil?
2335
+ header_params['Content-Type'] = content_type
2336
+ end
2337
+
2338
+ # form parameters
2339
+ form_params = opts[:form_params] || {}
2340
+
2341
+ # http body (model)
2342
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'rooms_metadata_search_request_dto'])
2343
+
2344
+ # return_type
2345
+ return_type = opts[:debug_return_type] || 'FolderContentWrapper'
2346
+
2347
+ # auth_names
2348
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2349
+
2350
+ new_options = opts.merge(
2351
+ :operation => :"Rooms::RoomsApi.search_rooms",
2352
+ :header_params => header_params,
2353
+ :query_params => query_params,
2354
+ :form_params => form_params,
2355
+ :body => post_body,
2356
+ :auth_names => auth_names,
2357
+ :return_type => return_type
2358
+ )
2359
+
2360
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
2361
+ if @api_client.config.debugging
2362
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#search_rooms\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2363
+ end
2364
+ return data, status_code, headers
2365
+ end
2366
+
2367
+ # Set room template public access
2368
+ # Switches the room template named by `id` between shared with everyone and private, rewriting its whole recipient list in the process. With `public` true the Everyone group is granted read access, so every member allowed to create rooms can build one from the template with `POST api/2.0/files/rooms/fromtemplate`; with false that access is taken away. In both cases every other account and group the template was shared with — including the addresses passed as `share` when it was created — loses access, so this is not a way to add a single recipient to an existing list. Only the account that owns the template may call it: a portal administrator who does not own it is refused, and so is a member invited to the source room. The identifier has to resolve to a room template; an ordinary room or an unknown value is answered as missing, and an identifier below 1 is rejected as an invalid request. Repeating the call with the same value changes nothing, and nothing is returned; read the current state with `GET api/2.0/files/roomtemplate/{id}/public`.
2369
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/set-public-settings/
2370
+ # @param [Hash] opts the optional parameters
2371
+ # @option opts [SetPublicDto] :set_public_dto
2372
+ # @return [nil]
2373
+ def set_public_settings(opts = {})
2374
+ set_public_settings_with_http_info(opts)
2375
+ nil
2376
+ end
2377
+
2378
+ # Set room template public access
2379
+ # Switches the room template named by `id` between shared with everyone and private, rewriting its whole recipient list in the process. With `public` true the Everyone group is granted read access, so every member allowed to create rooms can build one from the template with `POST api/2.0/files/rooms/fromtemplate`; with false that access is taken away. In both cases every other account and group the template was shared with — including the addresses passed as `share` when it was created — loses access, so this is not a way to add a single recipient to an existing list. Only the account that owns the template may call it: a portal administrator who does not own it is refused, and so is a member invited to the source room. The identifier has to resolve to a room template; an ordinary room or an unknown value is answered as missing, and an identifier below 1 is rejected as an invalid request. Repeating the call with the same value changes nothing, and nothing is returned; read the current state with `GET api/2.0/files/roomtemplate/{id}/public`.
2380
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/set-public-settings/
2381
+ # @param [Hash] opts the optional parameters
2382
+ # @option opts [SetPublicDto] :set_public_dto
2383
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2384
+ def set_public_settings_with_http_info(opts = {})
2385
+ if @api_client.config.debugging
2386
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.set_public_settings ...'
2387
+ end
2388
+ # resource path
2389
+ local_var_path = '/api/2.0/files/roomtemplate/public'
2390
+
2391
+ # query parameters
2392
+ query_params = opts[:query_params] || {}
2393
+
2394
+ # header parameters
2395
+ header_params = opts[:header_params] || {}
2396
+ # HTTP header 'Accept' (if needed)
2397
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2398
+ # HTTP header 'Content-Type'
2399
+ content_type = @api_client.select_header_content_type(['application/json'])
2400
+ if !content_type.nil?
2401
+ header_params['Content-Type'] = content_type
2402
+ end
2403
+
2404
+ # form parameters
2405
+ form_params = opts[:form_params] || {}
2406
+
2407
+ # http body (model)
2408
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'set_public_dto'])
2409
+
2410
+ # return_type
2411
+ return_type = opts[:debug_return_type]
2412
+
2413
+ # auth_names
2414
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2415
+
2416
+ new_options = opts.merge(
2417
+ :operation => :"Rooms::RoomsApi.set_public_settings",
2418
+ :header_params => header_params,
2419
+ :query_params => query_params,
2420
+ :form_params => form_params,
2421
+ :body => post_body,
2422
+ :auth_names => auth_names,
2423
+ :return_type => return_type
2424
+ )
2425
+
2426
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
2427
+ if @api_client.config.debugging
2428
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#set_public_settings\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2429
+ end
2430
+ return data, status_code, headers
2431
+ end
2432
+
2433
+ # Set the room external or invitation link
2434
+ # Creates, updates or deletes one sharing link of a room and returns it. `linkType` chooses the kind: an invitation link makes whoever opens it a member with the given access level, while an external link opens the room without an account. Omitting `linkId` creates a link, passing the id of an existing one updates it, and an unknown id is created with that id; the kind of an existing link cannot be changed afterwards. An access level of 0 deletes the link, and deleting the primary external link of a public or form filling room immediately replaces it with a fresh one, so such a room is never left without one. A room keeps at most one invitation link, and a second one is refused; form filling rooms take no invitation links, and collaboration, form filling and virtual data rooms take no external links. An expiration date in the past is dropped silently for an external link and rejected for an invitation link. `password`, `denyDownload` and `internal` apply to external links only.
2435
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/set-room-link/
2436
+ # @param id [Integer, String] The room the link belongs to, named by the identifier that `GET api/2.0/files/rooms` reports for it.
2437
+ # @param room_link_request [RoomLinkRequest] The link to create, change or revoke.
2438
+ # @param [Hash] opts the optional parameters
2439
+ # @return [FileShareWrapper]
2440
+ def set_room_link(id, room_link_request, opts = {})
2441
+ data, _status_code, _headers = set_room_link_with_http_info(id, room_link_request, opts)
2442
+ data
2443
+ end
2444
+
2445
+ # Set the room external or invitation link
2446
+ # Creates, updates or deletes one sharing link of a room and returns it. `linkType` chooses the kind: an invitation link makes whoever opens it a member with the given access level, while an external link opens the room without an account. Omitting `linkId` creates a link, passing the id of an existing one updates it, and an unknown id is created with that id; the kind of an existing link cannot be changed afterwards. An access level of 0 deletes the link, and deleting the primary external link of a public or form filling room immediately replaces it with a fresh one, so such a room is never left without one. A room keeps at most one invitation link, and a second one is refused; form filling rooms take no invitation links, and collaboration, form filling and virtual data rooms take no external links. An expiration date in the past is dropped silently for an external link and rejected for an invitation link. `password`, `denyDownload` and `internal` apply to external links only.
2447
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/set-room-link/
2448
+ # @param id [Integer, String] The room the link belongs to, named by the identifier that `GET api/2.0/files/rooms` reports for it.
2449
+ # @param room_link_request [RoomLinkRequest] The link to create, change or revoke.
2450
+ # @param [Hash] opts the optional parameters
2451
+ # @return [Array<(FileShareWrapper, Integer, Hash)>] FileShareWrapper data, response status code and response headers
2452
+ def set_room_link_with_http_info(id, room_link_request, opts = {})
2453
+ if @api_client.config.debugging
2454
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.set_room_link ...'
2455
+ end
2456
+ # verify the required parameter 'id' is set
2457
+ if @api_client.config.client_side_validation && id.nil?
2458
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.set_room_link"
2459
+ end
2460
+ # verify the required parameter 'room_link_request' is set
2461
+ if @api_client.config.client_side_validation && room_link_request.nil?
2462
+ fail ArgumentError, "Missing the required parameter 'room_link_request' when calling Rooms::RoomsApi.set_room_link"
2463
+ end
2464
+ # resource path
2465
+ local_var_path = '/api/2.0/files/rooms/{id}/links'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
2466
+
2467
+ # query parameters
2468
+ query_params = opts[:query_params] || {}
2469
+
2470
+ # header parameters
2471
+ header_params = opts[:header_params] || {}
2472
+ # HTTP header 'Accept' (if needed)
2473
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2474
+ # HTTP header 'Content-Type'
2475
+ content_type = @api_client.select_header_content_type(['application/json'])
2476
+ if !content_type.nil?
2477
+ header_params['Content-Type'] = content_type
2478
+ end
2479
+
2480
+ # form parameters
2481
+ form_params = opts[:form_params] || {}
2482
+
2483
+ # http body (model)
2484
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(room_link_request)
2485
+
2486
+ # return_type
2487
+ return_type = opts[:debug_return_type] || 'FileShareWrapper'
2488
+
2489
+ # auth_names
2490
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2491
+
2492
+ new_options = opts.merge(
2493
+ :operation => :"Rooms::RoomsApi.set_room_link",
2494
+ :header_params => header_params,
2495
+ :query_params => query_params,
2496
+ :form_params => form_params,
2497
+ :body => post_body,
2498
+ :auth_names => auth_names,
2499
+ :return_type => return_type
2500
+ )
2501
+
2502
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
2503
+ if @api_client.config.debugging
2504
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#set_room_link\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2505
+ end
2506
+ return data, status_code, headers
2507
+ end
2508
+
2509
+ # Set the room access rights
2510
+ # Adds, changes and removes room members in one batch, and returns the resulting access list of the named subjects. Each entry names either an account or a group of the portal, or the email address of somebody who has no account yet, together with the access level to grant; an access of 0 removes the subject from the room. An entry without an access level is ignored, the same subject listed twice keeps the last level, and an empty list is accepted and changes nothing. The caller must be a manager of the room, so an invitation sent by a user or a guest is refused, and an account that is a portal user or a guest cannot be made a room manager. Inviting by email also needs the portal to allow guest invitations. A subject the caller is not allowed to see is dropped without an error, which is why the answer has to be compared with the request. Removing a member who still holds a form role is refused through `error` unless `force` is set. `notify` sends the invitation email with the optional `message`.
2511
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/set-room-security/
2512
+ # @param id [Integer, String] The room whose membership changes, named by the identifier that `GET api/2.0/files/rooms` reports for it.
2513
+ # @param room_invitation_request [RoomInvitationRequest] The membership changes to apply, together with how the people concerned are notified.
2514
+ # @param [Hash] opts the optional parameters
2515
+ # @return [RoomSecurityWrapper]
2516
+ def set_room_security(id, room_invitation_request, opts = {})
2517
+ data, _status_code, _headers = set_room_security_with_http_info(id, room_invitation_request, opts)
2518
+ data
2519
+ end
2520
+
2521
+ # Set the room access rights
2522
+ # Adds, changes and removes room members in one batch, and returns the resulting access list of the named subjects. Each entry names either an account or a group of the portal, or the email address of somebody who has no account yet, together with the access level to grant; an access of 0 removes the subject from the room. An entry without an access level is ignored, the same subject listed twice keeps the last level, and an empty list is accepted and changes nothing. The caller must be a manager of the room, so an invitation sent by a user or a guest is refused, and an account that is a portal user or a guest cannot be made a room manager. Inviting by email also needs the portal to allow guest invitations. A subject the caller is not allowed to see is dropped without an error, which is why the answer has to be compared with the request. Removing a member who still holds a form role is refused through `error` unless `force` is set. `notify` sends the invitation email with the optional `message`.
2523
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/set-room-security/
2524
+ # @param id [Integer, String] The room whose membership changes, named by the identifier that `GET api/2.0/files/rooms` reports for it.
2525
+ # @param room_invitation_request [RoomInvitationRequest] The membership changes to apply, together with how the people concerned are notified.
2526
+ # @param [Hash] opts the optional parameters
2527
+ # @return [Array<(RoomSecurityWrapper, Integer, Hash)>] RoomSecurityWrapper data, response status code and response headers
2528
+ def set_room_security_with_http_info(id, room_invitation_request, opts = {})
2529
+ if @api_client.config.debugging
2530
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.set_room_security ...'
2531
+ end
2532
+ # verify the required parameter 'id' is set
2533
+ if @api_client.config.client_side_validation && id.nil?
2534
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.set_room_security"
2535
+ end
2536
+ # verify the required parameter 'room_invitation_request' is set
2537
+ if @api_client.config.client_side_validation && room_invitation_request.nil?
2538
+ fail ArgumentError, "Missing the required parameter 'room_invitation_request' when calling Rooms::RoomsApi.set_room_security"
2539
+ end
2540
+ # resource path
2541
+ local_var_path = '/api/2.0/files/rooms/{id}/share'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
2542
+
2543
+ # query parameters
2544
+ query_params = opts[:query_params] || {}
2545
+
2546
+ # header parameters
2547
+ header_params = opts[:header_params] || {}
2548
+ # HTTP header 'Accept' (if needed)
2549
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2550
+ # HTTP header 'Content-Type'
2551
+ content_type = @api_client.select_header_content_type(['application/json'])
2552
+ if !content_type.nil?
2553
+ header_params['Content-Type'] = content_type
2554
+ end
2555
+
2556
+ # form parameters
2557
+ form_params = opts[:form_params] || {}
2558
+
2559
+ # http body (model)
2560
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(room_invitation_request)
2561
+
2562
+ # return_type
2563
+ return_type = opts[:debug_return_type] || 'RoomSecurityWrapper'
2564
+
2565
+ # auth_names
2566
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2567
+
2568
+ new_options = opts.merge(
2569
+ :operation => :"Rooms::RoomsApi.set_room_security",
2570
+ :header_params => header_params,
2571
+ :query_params => query_params,
2572
+ :form_params => form_params,
2573
+ :body => post_body,
2574
+ :auth_names => auth_names,
2575
+ :return_type => return_type
2576
+ )
2577
+
2578
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
2579
+ if @api_client.config.debugging
2580
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#set_room_security\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2581
+ end
2582
+ return data, status_code, headers
2583
+ end
2584
+
2585
+ # Start external DB sync
2586
+ # Queues a background job that re-exports the collected data of every original form of a form filling room into the external database configured for the portal, and returns the job record. The room must be a form filling room and the caller must be able to edit it, otherwise the call is refused with 403; an unknown room is answered with 404. The export is not done when the response arrives: poll `GET api/2.0/files/rooms/{id}/externaldbsync` until `isCompleted` is true, then read `forms` for the per-form outcome, which stays empty while the job is running. Starting the job again while it is still running returns the same record instead of a second job, so a retry is safe; a finished job is replaced by the new one. One job is kept per room. A form whose data cannot be exported does not stop the others: it comes back in `forms` with `success` false and its own `error`. When the portal has no external database configured the call fails and nothing is queued.
2587
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/start-external-db-sync/
2588
+ # @param id [Integer] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
2589
+ # @param [Hash] opts the optional parameters
2590
+ # @return [ExternalDbSyncTaskWrapper]
2591
+ def start_external_db_sync(id, opts = {})
2592
+ data, _status_code, _headers = start_external_db_sync_with_http_info(id, opts)
2593
+ data
2594
+ end
2595
+
2596
+ # Start external DB sync
2597
+ # Queues a background job that re-exports the collected data of every original form of a form filling room into the external database configured for the portal, and returns the job record. The room must be a form filling room and the caller must be able to edit it, otherwise the call is refused with 403; an unknown room is answered with 404. The export is not done when the response arrives: poll `GET api/2.0/files/rooms/{id}/externaldbsync` until `isCompleted` is true, then read `forms` for the per-form outcome, which stays empty while the job is running. Starting the job again while it is still running returns the same record instead of a second job, so a retry is safe; a finished job is replaced by the new one. One job is kept per room. A form whose data cannot be exported does not stop the others: it comes back in `forms` with `success` false and its own `error`. When the portal has no external database configured the call fails and nothing is queued.
2598
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/start-external-db-sync/
2599
+ # @param id [Integer] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
2600
+ # @param [Hash] opts the optional parameters
2601
+ # @return [Array<(ExternalDbSyncTaskWrapper, Integer, Hash)>] ExternalDbSyncTaskWrapper data, response status code and response headers
2602
+ def start_external_db_sync_with_http_info(id, opts = {})
2603
+ if @api_client.config.debugging
2604
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.start_external_db_sync ...'
2605
+ end
2606
+ # verify the required parameter 'id' is set
2607
+ if @api_client.config.client_side_validation && id.nil?
2608
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.start_external_db_sync"
2609
+ end
2610
+ # resource path
2611
+ local_var_path = '/api/2.0/files/rooms/{id}/externaldbsync'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
2612
+
2613
+ # query parameters
2614
+ query_params = opts[:query_params] || {}
2615
+
2616
+ # header parameters
2617
+ header_params = opts[:header_params] || {}
2618
+ # HTTP header 'Accept' (if needed)
2619
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2620
+
2621
+ # form parameters
2622
+ form_params = opts[:form_params] || {}
2623
+
2624
+ # http body (model)
2625
+ post_body = opts[:debug_body]
2626
+
2627
+ # return_type
2628
+ return_type = opts[:debug_return_type] || 'ExternalDbSyncTaskWrapper'
2629
+
2630
+ # auth_names
2631
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2632
+
2633
+ new_options = opts.merge(
2634
+ :operation => :"Rooms::RoomsApi.start_external_db_sync",
2635
+ :header_params => header_params,
2636
+ :query_params => query_params,
2637
+ :form_params => form_params,
2638
+ :body => post_body,
2639
+ :auth_names => auth_names,
2640
+ :return_type => return_type
2641
+ )
2642
+
2643
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
2644
+ if @api_client.config.debugging
2645
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#start_external_db_sync\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2646
+ end
2647
+ return data, status_code, headers
2648
+ end
2649
+
2650
+ # Start the room index export
2651
+ # Queues a background job that builds the index of a virtual data room as a spreadsheet, and answers with the job record to poll. The room has to be a virtual data room with indexing switched on, and the caller has to be its manager or a portal administrator; any other kind of room, a room template, and a member invited with a lower access level are refused, while an unknown room is answered as missing. There is one job per account: starting an export while an earlier one is still running answers with that earlier record instead of queuing a second job, and a finished record is replaced by the new one. Poll `GET api/2.0/files/rooms/indexexport` until `isCompleted` is true, then read `status` to tell a completed job from a failed or cancelled one, and take `resultFileId` and `resultFileUrl` from the same record. The report is saved as a spreadsheet in the My documents section of the caller, not in the room. Cancel a running job with `DELETE api/2.0/files/rooms/indexexport`.
2652
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/start-room-index-export/
2653
+ # @param id [Integer] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
2654
+ # @param [Hash] opts the optional parameters
2655
+ # @return [DocumentBuilderTaskWrapper]
2656
+ def start_room_index_export(id, opts = {})
2657
+ data, _status_code, _headers = start_room_index_export_with_http_info(id, opts)
2658
+ data
2659
+ end
2660
+
2661
+ # Start the room index export
2662
+ # Queues a background job that builds the index of a virtual data room as a spreadsheet, and answers with the job record to poll. The room has to be a virtual data room with indexing switched on, and the caller has to be its manager or a portal administrator; any other kind of room, a room template, and a member invited with a lower access level are refused, while an unknown room is answered as missing. There is one job per account: starting an export while an earlier one is still running answers with that earlier record instead of queuing a second job, and a finished record is replaced by the new one. Poll `GET api/2.0/files/rooms/indexexport` until `isCompleted` is true, then read `status` to tell a completed job from a failed or cancelled one, and take `resultFileId` and `resultFileUrl` from the same record. The report is saved as a spreadsheet in the My documents section of the caller, not in the room. Cancel a running job with `DELETE api/2.0/files/rooms/indexexport`.
2663
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/start-room-index-export/
2664
+ # @param id [Integer] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
2665
+ # @param [Hash] opts the optional parameters
2666
+ # @return [Array<(DocumentBuilderTaskWrapper, Integer, Hash)>] DocumentBuilderTaskWrapper data, response status code and response headers
2667
+ def start_room_index_export_with_http_info(id, opts = {})
2668
+ if @api_client.config.debugging
2669
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.start_room_index_export ...'
2670
+ end
2671
+ # verify the required parameter 'id' is set
2672
+ if @api_client.config.client_side_validation && id.nil?
2673
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.start_room_index_export"
2674
+ end
2675
+ # resource path
2676
+ local_var_path = '/api/2.0/files/rooms/{id}/indexexport'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
2677
+
2678
+ # query parameters
2679
+ query_params = opts[:query_params] || {}
2680
+
2681
+ # header parameters
2682
+ header_params = opts[:header_params] || {}
2683
+ # HTTP header 'Accept' (if needed)
2684
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2685
+
2686
+ # form parameters
2687
+ form_params = opts[:form_params] || {}
2688
+
2689
+ # http body (model)
2690
+ post_body = opts[:debug_body]
2691
+
2692
+ # return_type
2693
+ return_type = opts[:debug_return_type] || 'DocumentBuilderTaskWrapper'
2694
+
2695
+ # auth_names
2696
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2697
+
2698
+ new_options = opts.merge(
2699
+ :operation => :"Rooms::RoomsApi.start_room_index_export",
2700
+ :header_params => header_params,
2701
+ :query_params => query_params,
2702
+ :form_params => form_params,
2703
+ :body => post_body,
2704
+ :auth_names => auth_names,
2705
+ :return_type => return_type
2706
+ )
2707
+
2708
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
2709
+ if @api_client.config.debugging
2710
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#start_room_index_export\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2711
+ end
2712
+ return data, status_code, headers
2713
+ end
2714
+
2715
+ # Terminate the room index export
2716
+ # Cancels the room index export of the calling account and drops its job record. No room is named because there is at most one export per account, so the call always acts on the caller's own job and never on somebody else's: an account with nothing running gets a successful answer that changes nothing, which makes the call safe to repeat and makes it useless as a way of stopping an export somebody else started. Afterwards `GET api/2.0/files/rooms/indexexport` answers with an empty body until a new export is started with `POST api/2.0/files/rooms/{id}/indexexport`. The cancellation is asynchronous: the background job stops at its next checkpoint, so one that is already saving the file may still finish, and a report that was written before the cancellation stays in the My documents section of the caller and has to be deleted as an ordinary file. The answer carries no body and says nothing about whether an export was running.
2717
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/terminate-room-index-export/
2718
+ # @param [Hash] opts the optional parameters
2719
+ # @return [nil]
2720
+ def terminate_room_index_export(opts = {})
2721
+ terminate_room_index_export_with_http_info(opts)
2722
+ nil
2723
+ end
2724
+
2725
+ # Terminate the room index export
2726
+ # Cancels the room index export of the calling account and drops its job record. No room is named because there is at most one export per account, so the call always acts on the caller's own job and never on somebody else's: an account with nothing running gets a successful answer that changes nothing, which makes the call safe to repeat and makes it useless as a way of stopping an export somebody else started. Afterwards `GET api/2.0/files/rooms/indexexport` answers with an empty body until a new export is started with `POST api/2.0/files/rooms/{id}/indexexport`. The cancellation is asynchronous: the background job stops at its next checkpoint, so one that is already saving the file may still finish, and a report that was written before the cancellation stays in the My documents section of the caller and has to be deleted as an ordinary file. The answer carries no body and says nothing about whether an export was running.
2727
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/terminate-room-index-export/
2728
+ # @param [Hash] opts the optional parameters
2729
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2730
+ def terminate_room_index_export_with_http_info(opts = {})
2731
+ if @api_client.config.debugging
2732
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.terminate_room_index_export ...'
2733
+ end
2734
+ # resource path
2735
+ local_var_path = '/api/2.0/files/rooms/indexexport'
2736
+
2737
+ # query parameters
2738
+ query_params = opts[:query_params] || {}
2739
+
2740
+ # header parameters
2741
+ header_params = opts[:header_params] || {}
2742
+ # HTTP header 'Accept' (if needed)
2743
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2744
+
2745
+ # form parameters
2746
+ form_params = opts[:form_params] || {}
2747
+
2748
+ # http body (model)
2749
+ post_body = opts[:debug_body]
2750
+
2751
+ # return_type
2752
+ return_type = opts[:debug_return_type]
2753
+
2754
+ # auth_names
2755
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2756
+
2757
+ new_options = opts.merge(
2758
+ :operation => :"Rooms::RoomsApi.terminate_room_index_export",
2759
+ :header_params => header_params,
2760
+ :query_params => query_params,
2761
+ :form_params => form_params,
2762
+ :body => post_body,
2763
+ :auth_names => auth_names,
2764
+ :return_type => return_type
2765
+ )
2766
+
2767
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
2768
+ if @api_client.config.debugging
2769
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#terminate_room_index_export\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2770
+ end
2771
+ return data, status_code, headers
2772
+ end
2773
+
2774
+ # Unarchive a room
2775
+ # Queues a background job that moves one room from the Archive section back to the Rooms section, and returns the operation record of that job. The room becomes writable again with the membership, tags, logo and links it had before, while the pinned state of its members is not restored and has to be set again with `PUT api/2.0/files/rooms/{id}/pin`. The caller must be a manager of the room; a member who was only invited to it is refused, a room template is answered as missing, and a room that was never archived simply stays where it is. The room is not moved when the response arrives: poll `GET api/2.0/files/fileops` until `finished` is true, and expect a room that is still archived until then. `deleteAfter` decides only how long the finished record survives. Calling the operation twice in a row does not corrupt the room, and a deleted or unknown room id is reported as missing.
2776
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/unarchive-room/
2777
+ # @param id [Integer, String] The room to move, named by the identifier that `GET api/2.0/files/rooms` reports for it.
2778
+ # @param [Hash] opts the optional parameters
2779
+ # @option opts [ArchiveRoomRequest] :archive_room_request The body of the request. It carries only the lifetime of the job record, so an empty object is a normal request.
2780
+ # @return [FileOperationWrapper]
2781
+ def unarchive_room(id, opts = {})
2782
+ data, _status_code, _headers = unarchive_room_with_http_info(id, opts)
2783
+ data
2784
+ end
2785
+
2786
+ # Unarchive a room
2787
+ # Queues a background job that moves one room from the Archive section back to the Rooms section, and returns the operation record of that job. The room becomes writable again with the membership, tags, logo and links it had before, while the pinned state of its members is not restored and has to be set again with `PUT api/2.0/files/rooms/{id}/pin`. The caller must be a manager of the room; a member who was only invited to it is refused, a room template is answered as missing, and a room that was never archived simply stays where it is. The room is not moved when the response arrives: poll `GET api/2.0/files/fileops` until `finished` is true, and expect a room that is still archived until then. `deleteAfter` decides only how long the finished record survives. Calling the operation twice in a row does not corrupt the room, and a deleted or unknown room id is reported as missing.
2788
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/unarchive-room/
2789
+ # @param id [Integer, String] The room to move, named by the identifier that `GET api/2.0/files/rooms` reports for it.
2790
+ # @param [Hash] opts the optional parameters
2791
+ # @option opts [ArchiveRoomRequest] :archive_room_request The body of the request. It carries only the lifetime of the job record, so an empty object is a normal request.
2792
+ # @return [Array<(FileOperationWrapper, Integer, Hash)>] FileOperationWrapper data, response status code and response headers
2793
+ def unarchive_room_with_http_info(id, opts = {})
2794
+ if @api_client.config.debugging
2795
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.unarchive_room ...'
2796
+ end
2797
+ # verify the required parameter 'id' is set
2798
+ if @api_client.config.client_side_validation && id.nil?
2799
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.unarchive_room"
2800
+ end
2801
+ # resource path
2802
+ local_var_path = '/api/2.0/files/rooms/{id}/unarchive'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
2803
+
2804
+ # query parameters
2805
+ query_params = opts[:query_params] || {}
2806
+
2807
+ # header parameters
2808
+ header_params = opts[:header_params] || {}
2809
+ # HTTP header 'Accept' (if needed)
2810
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2811
+ # HTTP header 'Content-Type'
2812
+ content_type = @api_client.select_header_content_type(['application/json'])
2813
+ if !content_type.nil?
2814
+ header_params['Content-Type'] = content_type
2815
+ end
2816
+
2817
+ # form parameters
2818
+ form_params = opts[:form_params] || {}
2819
+
2820
+ # http body (model)
2821
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'archive_room_request'])
2822
+
2823
+ # return_type
2824
+ return_type = opts[:debug_return_type] || 'FileOperationWrapper'
2825
+
2826
+ # auth_names
2827
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2828
+
2829
+ new_options = opts.merge(
2830
+ :operation => :"Rooms::RoomsApi.unarchive_room",
2831
+ :header_params => header_params,
2832
+ :query_params => query_params,
2833
+ :form_params => form_params,
2834
+ :body => post_body,
2835
+ :auth_names => auth_names,
2836
+ :return_type => return_type
2837
+ )
2838
+
2839
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
2840
+ if @api_client.config.debugging
2841
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#unarchive_room\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2842
+ end
2843
+ return data, status_code, headers
2844
+ end
2845
+
2846
+ # Unpin a room
2847
+ # Removes a room from the pinned group of the calling account and returns the room with the pinned flag cleared. Only the personal ordering of the caller changes: the room itself, its members, their roles and its contents are left exactly as they were, and the room stays in the list, simply among the unpinned ones. Unpinning frees one of the pin slots of the account, which AI rooms count separately, so it is the way out of a refused `PUT api/2.0/files/rooms/{id}/pin`. Unpinning a room that was never pinned is accepted and changes nothing, so the call can be repeated safely and its answer does not prove that anything was pinned before. Anybody who can read the room may unpin it, while somebody who is not in the room at all is refused and an unknown or deleted room is answered as missing. An archived room cannot be unpinned.
2848
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/unpin-room/
2849
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
2850
+ # @param [Hash] opts the optional parameters
2851
+ # @return [FolderWrapper, ThirdPartyFolderWrapper]
2852
+ def unpin_room(id, opts = {})
2853
+ data, _status_code, _headers = unpin_room_with_http_info(id, opts)
2854
+ data
2855
+ end
2856
+
2857
+ # Unpin a room
2858
+ # Removes a room from the pinned group of the calling account and returns the room with the pinned flag cleared. Only the personal ordering of the caller changes: the room itself, its members, their roles and its contents are left exactly as they were, and the room stays in the list, simply among the unpinned ones. Unpinning frees one of the pin slots of the account, which AI rooms count separately, so it is the way out of a refused `PUT api/2.0/files/rooms/{id}/pin`. Unpinning a room that was never pinned is accepted and changes nothing, so the call can be repeated safely and its answer does not prove that anything was pinned before. Anybody who can read the room may unpin it, while somebody who is not in the room at all is refused and an unknown or deleted room is answered as missing. An archived room cannot be unpinned.
2859
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/unpin-room/
2860
+ # @param id [Integer, String] The room to act on, named by the identifier that `GET api/2.0/files/rooms` reports for it. Rooms kept in the portal itself use whole numbers, while a room backed by a connected third-party account uses the string form of the same listing.
2861
+ # @param [Hash] opts the optional parameters
2862
+ # @return [Array<(FolderWrapper, ThirdPartyFolderWrapper, Integer, Hash)>] FolderWrapper, ThirdPartyFolderWrapper data, response status code and response headers
2863
+ def unpin_room_with_http_info(id, opts = {})
2864
+ if @api_client.config.debugging
2865
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.unpin_room ...'
2866
+ end
2867
+ # verify the required parameter 'id' is set
2868
+ if @api_client.config.client_side_validation && id.nil?
2869
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.unpin_room"
2870
+ end
2871
+ # resource path
2872
+ local_var_path = '/api/2.0/files/rooms/{id}/unpin'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
2873
+
2874
+ # query parameters
2875
+ query_params = opts[:query_params] || {}
2876
+
2877
+ # header parameters
2878
+ header_params = opts[:header_params] || {}
2879
+ # HTTP header 'Accept' (if needed)
2880
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2881
+
2882
+ # form parameters
2883
+ form_params = opts[:form_params] || {}
2884
+
2885
+ # http body (model)
2886
+ post_body = opts[:debug_body]
2887
+
2888
+ # return_type
2889
+ return_type = opts[:debug_return_type] || (id.is_a?(String) ? 'ThirdPartyFolderWrapper' : 'FolderWrapper')
2890
+
2891
+ # auth_names
2892
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2893
+
2894
+ new_options = opts.merge(
2895
+ :operation => :"Rooms::RoomsApi.unpin_room",
2896
+ :header_params => header_params,
2897
+ :query_params => query_params,
2898
+ :form_params => form_params,
2899
+ :body => post_body,
2900
+ :auth_names => auth_names,
2901
+ :return_type => return_type
2902
+ )
2903
+
2904
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
2905
+ if @api_client.config.debugging
2906
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#unpin_room\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2907
+ end
2908
+ return data, status_code, headers
2909
+ end
2910
+
2911
+ # Update a room
2912
+ # Applies a partial change to one room and returns the whole room as it is after it. Only the fields present in the body are touched, an empty body changes nothing, and a property the body does not define is rejected as an invalid request instead of being ignored. The caller must be a manager of this room: portal administrators do not get in without an invitation, and an archived room is refused. `title` is trimmed, sanitised the way a room title is sanitised at creation, and a blank value is treated as no change. `tags` replaces the whole tag set and an empty array clears it, an empty `color` restores the default and an empty `cover` removes the cover. A `quota` of -1 switches the room back to no custom limit, any other negative value restores the portal default, and a positive one is accepted only while the per-room quota feature is on. Turning `indexing` on renumbers the room contents. `chatSettings` belongs to an AI room and is rejected anywhere else. Use `POST api/2.0/files/rooms/{id}/logo` for logo cropping.
2913
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/update-room/
2914
+ # @param id [Integer, String] The room to update, named by the identifier that `GET api/2.0/files/rooms` reports for it.
2915
+ # @param update_room_request [UpdateRoomRequest] The fields to change. Only the properties present in the object are applied, and a property that the object does not define is rejected instead of being ignored.
2916
+ # @param [Hash] opts the optional parameters
2917
+ # @return [FolderWrapper, ThirdPartyFolderWrapper]
2918
+ def update_room(id, update_room_request, opts = {})
2919
+ data, _status_code, _headers = update_room_with_http_info(id, update_room_request, opts)
2920
+ data
2921
+ end
2922
+
2923
+ # Update a room
2924
+ # Applies a partial change to one room and returns the whole room as it is after it. Only the fields present in the body are touched, an empty body changes nothing, and a property the body does not define is rejected as an invalid request instead of being ignored. The caller must be a manager of this room: portal administrators do not get in without an invitation, and an archived room is refused. `title` is trimmed, sanitised the way a room title is sanitised at creation, and a blank value is treated as no change. `tags` replaces the whole tag set and an empty array clears it, an empty `color` restores the default and an empty `cover` removes the cover. A `quota` of -1 switches the room back to no custom limit, any other negative value restores the portal default, and a positive one is accepted only while the per-room quota feature is on. Turning `indexing` on renumbers the room contents. `chatSettings` belongs to an AI room and is rejected anywhere else. Use `POST api/2.0/files/rooms/{id}/logo` for logo cropping.
2925
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/update-room/
2926
+ # @param id [Integer, String] The room to update, named by the identifier that `GET api/2.0/files/rooms` reports for it.
2927
+ # @param update_room_request [UpdateRoomRequest] The fields to change. Only the properties present in the object are applied, and a property that the object does not define is rejected instead of being ignored.
2928
+ # @param [Hash] opts the optional parameters
2929
+ # @return [Array<(FolderWrapper, ThirdPartyFolderWrapper, Integer, Hash)>] FolderWrapper, ThirdPartyFolderWrapper data, response status code and response headers
2930
+ def update_room_with_http_info(id, update_room_request, opts = {})
2931
+ if @api_client.config.debugging
2932
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.update_room ...'
2933
+ end
2934
+ # verify the required parameter 'id' is set
2935
+ if @api_client.config.client_side_validation && id.nil?
2936
+ fail ArgumentError, "Missing the required parameter 'id' when calling Rooms::RoomsApi.update_room"
2937
+ end
2938
+ # verify the required parameter 'update_room_request' is set
2939
+ if @api_client.config.client_side_validation && update_room_request.nil?
2940
+ fail ArgumentError, "Missing the required parameter 'update_room_request' when calling Rooms::RoomsApi.update_room"
2941
+ end
2942
+ # resource path
2943
+ local_var_path = '/api/2.0/files/rooms/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
2944
+
2945
+ # query parameters
2946
+ query_params = opts[:query_params] || {}
2947
+
2948
+ # header parameters
2949
+ header_params = opts[:header_params] || {}
2950
+ # HTTP header 'Accept' (if needed)
2951
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
2952
+ # HTTP header 'Content-Type'
2953
+ content_type = @api_client.select_header_content_type(['application/json'])
2954
+ if !content_type.nil?
2955
+ header_params['Content-Type'] = content_type
2956
+ end
2957
+
2958
+ # form parameters
2959
+ form_params = opts[:form_params] || {}
2960
+
2961
+ # http body (model)
2962
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(update_room_request)
2963
+
2964
+ # return_type
2965
+ return_type = opts[:debug_return_type] || (id.is_a?(String) ? 'ThirdPartyFolderWrapper' : 'FolderWrapper')
2966
+
2967
+ # auth_names
2968
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
2969
+
2970
+ new_options = opts.merge(
2971
+ :operation => :"Rooms::RoomsApi.update_room",
2972
+ :header_params => header_params,
2973
+ :query_params => query_params,
2974
+ :form_params => form_params,
2975
+ :body => post_body,
2976
+ :auth_names => auth_names,
2977
+ :return_type => return_type
2978
+ )
2979
+
2980
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
2981
+ if @api_client.config.debugging
2982
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#update_room\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2983
+ end
2984
+ return data, status_code, headers
2985
+ end
2986
+
2987
+ # Rename a room tag
2988
+ # Renames a custom room tag in the portal catalog. The rename follows the tag everywhere it is used: every room that carries it keeps it and shows the new name, so nothing has to be re-attached afterwards. Only a portal administrator may rename a tag, and a room manager who is allowed to create tags is still refused here. The old name is matched exactly as it is stored rather than searched for, and a name that is not in the catalog is answered as missing. A new name that another tag already occupies is rejected as an invalid request, because tag names are unique across the portal; both names must be non-blank and within the published length limit. The answer is the new name. Stored queries are not updated for the caller: a `tags` filter of `GET api/2.0/files/rooms` that still names the old value stops matching anything. The catalog is read with `GET api/2.0/files/tags`.
2989
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/update-room-tag/
2990
+ # @param [Hash] opts the optional parameters
2991
+ # @option opts [UpdateTagRequestDto] :update_tag_request_dto
2992
+ # @return [StringWrapper]
2993
+ def update_room_tag(opts = {})
2994
+ data, _status_code, _headers = update_room_tag_with_http_info(opts)
2995
+ data
2996
+ end
2997
+
2998
+ # Rename a room tag
2999
+ # Renames a custom room tag in the portal catalog. The rename follows the tag everywhere it is used: every room that carries it keeps it and shows the new name, so nothing has to be re-attached afterwards. Only a portal administrator may rename a tag, and a room manager who is allowed to create tags is still refused here. The old name is matched exactly as it is stored rather than searched for, and a name that is not in the catalog is answered as missing. A new name that another tag already occupies is rejected as an invalid request, because tag names are unique across the portal; both names must be non-blank and within the published length limit. The answer is the new name. Stored queries are not updated for the caller: a `tags` filter of `GET api/2.0/files/rooms` that still names the old value stops matching anything. The catalog is read with `GET api/2.0/files/tags`.
3000
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/update-room-tag/
3001
+ # @param [Hash] opts the optional parameters
3002
+ # @option opts [UpdateTagRequestDto] :update_tag_request_dto
3003
+ # @return [Array<(StringWrapper, Integer, Hash)>] StringWrapper data, response status code and response headers
3004
+ def update_room_tag_with_http_info(opts = {})
3005
+ if @api_client.config.debugging
3006
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.update_room_tag ...'
3007
+ end
3008
+ # resource path
3009
+ local_var_path = '/api/2.0/files/tags'
3010
+
3011
+ # query parameters
3012
+ query_params = opts[:query_params] || {}
3013
+
3014
+ # header parameters
3015
+ header_params = opts[:header_params] || {}
3016
+ # HTTP header 'Accept' (if needed)
3017
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
3018
+ # HTTP header 'Content-Type'
3019
+ content_type = @api_client.select_header_content_type(['application/json'])
3020
+ if !content_type.nil?
3021
+ header_params['Content-Type'] = content_type
3022
+ end
3023
+
3024
+ # form parameters
3025
+ form_params = opts[:form_params] || {}
3026
+
3027
+ # http body (model)
3028
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'update_tag_request_dto'])
3029
+
3030
+ # return_type
3031
+ return_type = opts[:debug_return_type] || 'StringWrapper'
3032
+
3033
+ # auth_names
3034
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
3035
+
3036
+ new_options = opts.merge(
3037
+ :operation => :"Rooms::RoomsApi.update_room_tag",
3038
+ :header_params => header_params,
3039
+ :query_params => query_params,
3040
+ :form_params => form_params,
3041
+ :body => post_body,
3042
+ :auth_names => auth_names,
3043
+ :return_type => return_type
3044
+ )
3045
+
3046
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
3047
+ if @api_client.config.debugging
3048
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#update_room_tag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3049
+ end
3050
+ return data, status_code, headers
3051
+ end
3052
+
3053
+ # Upload a room logo image
3054
+ # Stores an image in temporary storage and answers with the path to it, which is the first half of setting a room logo. No room changes here: pass the returned path as `tmpFile` to `POST api/2.0/files/rooms/{id}/logo`, together with the crop rectangle, to make the image the logo of a room. The image travels as multipart form data, and the first file part of the request is the one that is used while any other part is ignored. It is re-encoded to PNG and scaled down to fit 1280 by 1280 pixels, so a larger picture is accepted and shrunk, while a part that is not a readable image, or one over the portal limit for uploaded images, is refused with 400. Only a room manager or a portal administrator may upload, and everyone else gets 403. Every call produces a new path, and an image that is never used stays in temporary storage until it is cleaned up, so uploading twice is harmless.
3055
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/upload-room-logo/
3056
+ # @param [Hash] opts the optional parameters
3057
+ # @option opts [File] :file The image data.
3058
+ # @return [UploadResultWrapper]
3059
+ def upload_room_logo(opts = {})
3060
+ data, _status_code, _headers = upload_room_logo_with_http_info(opts)
3061
+ data
3062
+ end
3063
+
3064
+ # Upload a room logo image
3065
+ # Stores an image in temporary storage and answers with the path to it, which is the first half of setting a room logo. No room changes here: pass the returned path as `tmpFile` to `POST api/2.0/files/rooms/{id}/logo`, together with the crop rectangle, to make the image the logo of a room. The image travels as multipart form data, and the first file part of the request is the one that is used while any other part is ignored. It is re-encoded to PNG and scaled down to fit 1280 by 1280 pixels, so a larger picture is accepted and shrunk, while a part that is not a readable image, or one over the portal limit for uploaded images, is refused with 400. Only a room manager or a portal administrator may upload, and everyone else gets 403. Every call produces a new path, and an image that is never used stays in temporary storage until it is cleaned up, so uploading twice is harmless.
3066
+ # See also: https://api.onlyoffice.com/docspace/api-backend/usage-api/upload-room-logo/
3067
+ # @param [Hash] opts the optional parameters
3068
+ # @option opts [File] :file The image data.
3069
+ # @return [Array<(UploadResultWrapper, Integer, Hash)>] UploadResultWrapper data, response status code and response headers
3070
+ def upload_room_logo_with_http_info(opts = {})
3071
+ if @api_client.config.debugging
3072
+ @api_client.config.logger.debug 'Calling API: Rooms::RoomsApi.upload_room_logo ...'
3073
+ end
3074
+ # resource path
3075
+ local_var_path = '/api/2.0/files/logos'
3076
+
3077
+ # query parameters
3078
+ query_params = opts[:query_params] || {}
3079
+
3080
+ # header parameters
3081
+ header_params = opts[:header_params] || {}
3082
+ # HTTP header 'Accept' (if needed)
3083
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
3084
+ # HTTP header 'Content-Type'
3085
+ content_type = @api_client.select_header_content_type(['multipart/form-data'])
3086
+ if !content_type.nil?
3087
+ header_params['Content-Type'] = content_type
3088
+ end
3089
+
3090
+ # form parameters
3091
+ form_params = opts[:form_params] || {}
3092
+ form_params['File'] = opts[:'file'] if !opts[:'file'].nil?
3093
+
3094
+ # http body (model)
3095
+ post_body = opts[:debug_body]
3096
+
3097
+ # return_type
3098
+ return_type = opts[:debug_return_type] || 'UploadResultWrapper'
3099
+
3100
+ # auth_names
3101
+ auth_names = opts[:debug_auth_names] || ['Basic', 'OAuth2', 'ApiKeyBearer', 'asc_auth_key', 'Bearer', 'OpenId']
3102
+
3103
+ new_options = opts.merge(
3104
+ :operation => :"Rooms::RoomsApi.upload_room_logo",
3105
+ :header_params => header_params,
3106
+ :query_params => query_params,
3107
+ :form_params => form_params,
3108
+ :body => post_body,
3109
+ :auth_names => auth_names,
3110
+ :return_type => return_type
3111
+ )
3112
+
3113
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
3114
+ if @api_client.config.debugging
3115
+ @api_client.config.logger.debug "API called: Rooms::RoomsApi#upload_room_logo\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3116
+ end
3117
+ return data, status_code, headers
3118
+ end
3119
+ end
3120
+ end
3121
+ end