appwrite 28.4.0 → 30.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 (349) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appwrite/client.rb +19 -19
  3. data/lib/appwrite/enums/billing_plan_group.rb +0 -1
  4. data/lib/appwrite/enums/execution_trigger.rb +1 -0
  5. data/lib/appwrite/enums/proxy_rule_protocol.rb +8 -0
  6. data/lib/appwrite/models/account.rb +8 -8
  7. data/lib/appwrite/models/activity_event.rb +1 -0
  8. data/lib/appwrite/models/activity_event_list.rb +1 -0
  9. data/lib/appwrite/models/additional_resource.rb +1 -0
  10. data/lib/appwrite/models/algo_argon2.rb +1 -0
  11. data/lib/appwrite/models/algo_bcrypt.rb +1 -0
  12. data/lib/appwrite/models/algo_md5.rb +1 -0
  13. data/lib/appwrite/models/algo_phpass.rb +1 -0
  14. data/lib/appwrite/models/algo_scrypt.rb +1 -0
  15. data/lib/appwrite/models/algo_scrypt_modified.rb +1 -0
  16. data/lib/appwrite/models/algo_sha.rb +1 -0
  17. data/lib/appwrite/models/app.rb +1 -0
  18. data/lib/appwrite/models/app_installation.rb +2 -1
  19. data/lib/appwrite/models/app_installation_list.rb +1 -0
  20. data/lib/appwrite/models/app_key.rb +2 -1
  21. data/lib/appwrite/models/app_key_list.rb +1 -0
  22. data/lib/appwrite/models/app_scope.rb +1 -0
  23. data/lib/appwrite/models/app_scope_list.rb +1 -0
  24. data/lib/appwrite/models/app_secret.rb +2 -1
  25. data/lib/appwrite/models/app_secret_list.rb +1 -0
  26. data/lib/appwrite/models/app_secret_plaintext.rb +2 -1
  27. data/lib/appwrite/models/apps_list.rb +1 -0
  28. data/lib/appwrite/models/attribute_bigint.rb +10 -4
  29. data/lib/appwrite/models/attribute_boolean.rb +8 -2
  30. data/lib/appwrite/models/attribute_datetime.rb +8 -2
  31. data/lib/appwrite/models/attribute_email.rb +8 -2
  32. data/lib/appwrite/models/attribute_enum.rb +8 -2
  33. data/lib/appwrite/models/attribute_float.rb +10 -4
  34. data/lib/appwrite/models/attribute_integer.rb +10 -4
  35. data/lib/appwrite/models/attribute_ip.rb +8 -2
  36. data/lib/appwrite/models/attribute_line.rb +8 -2
  37. data/lib/appwrite/models/attribute_list.rb +1 -0
  38. data/lib/appwrite/models/attribute_longtext.rb +9 -3
  39. data/lib/appwrite/models/attribute_mediumtext.rb +9 -3
  40. data/lib/appwrite/models/attribute_object.rb +7 -1
  41. data/lib/appwrite/models/attribute_point.rb +8 -2
  42. data/lib/appwrite/models/attribute_polygon.rb +8 -2
  43. data/lib/appwrite/models/attribute_relationship.rb +7 -1
  44. data/lib/appwrite/models/attribute_string.rb +9 -3
  45. data/lib/appwrite/models/attribute_text.rb +9 -3
  46. data/lib/appwrite/models/attribute_url.rb +8 -2
  47. data/lib/appwrite/models/attribute_varchar.rb +9 -3
  48. data/lib/appwrite/models/attribute_vector.rb +7 -1
  49. data/lib/appwrite/models/backup_archive.rb +5 -4
  50. data/lib/appwrite/models/backup_archive_list.rb +1 -0
  51. data/lib/appwrite/models/backup_policy.rb +3 -2
  52. data/lib/appwrite/models/backup_policy_list.rb +1 -0
  53. data/lib/appwrite/models/backup_restoration.rb +2 -1
  54. data/lib/appwrite/models/backup_restoration_list.rb +1 -0
  55. data/lib/appwrite/models/billing_limits.rb +8 -8
  56. data/lib/appwrite/models/billing_plan.rb +19 -14
  57. data/lib/appwrite/models/billing_plan_addon.rb +2 -2
  58. data/lib/appwrite/models/billing_plan_addon_details.rb +2 -1
  59. data/lib/appwrite/models/billing_plan_dedicated_database_limits.rb +19 -19
  60. data/lib/appwrite/models/billing_plan_limits.rb +2 -2
  61. data/lib/appwrite/models/billing_plan_supported_addons.rb +1 -0
  62. data/lib/appwrite/models/block.rb +4 -33
  63. data/lib/appwrite/models/bucket.rb +11 -0
  64. data/lib/appwrite/models/bucket_list.rb +1 -0
  65. data/lib/appwrite/models/collection.rb +6 -0
  66. data/lib/appwrite/models/collection_list.rb +1 -0
  67. data/lib/appwrite/models/column_bigint.rb +10 -4
  68. data/lib/appwrite/models/column_boolean.rb +8 -2
  69. data/lib/appwrite/models/column_datetime.rb +8 -2
  70. data/lib/appwrite/models/column_email.rb +8 -2
  71. data/lib/appwrite/models/column_enum.rb +8 -2
  72. data/lib/appwrite/models/column_float.rb +10 -4
  73. data/lib/appwrite/models/column_index.rb +7 -1
  74. data/lib/appwrite/models/column_index_list.rb +1 -0
  75. data/lib/appwrite/models/column_integer.rb +10 -4
  76. data/lib/appwrite/models/column_ip.rb +8 -2
  77. data/lib/appwrite/models/column_line.rb +8 -2
  78. data/lib/appwrite/models/column_list.rb +1 -0
  79. data/lib/appwrite/models/column_longtext.rb +9 -3
  80. data/lib/appwrite/models/column_mediumtext.rb +9 -3
  81. data/lib/appwrite/models/column_point.rb +8 -2
  82. data/lib/appwrite/models/column_polygon.rb +8 -2
  83. data/lib/appwrite/models/column_relationship.rb +7 -1
  84. data/lib/appwrite/models/column_string.rb +9 -3
  85. data/lib/appwrite/models/column_text.rb +9 -3
  86. data/lib/appwrite/models/column_url.rb +8 -2
  87. data/lib/appwrite/models/column_varchar.rb +9 -3
  88. data/lib/appwrite/models/continent.rb +1 -0
  89. data/lib/appwrite/models/continent_list.rb +1 -0
  90. data/lib/appwrite/models/country.rb +1 -0
  91. data/lib/appwrite/models/country_list.rb +1 -0
  92. data/lib/appwrite/models/currency.rb +1 -0
  93. data/lib/appwrite/models/currency_list.rb +1 -0
  94. data/lib/appwrite/models/database.rb +15 -9
  95. data/lib/appwrite/models/database_list.rb +1 -0
  96. data/lib/appwrite/models/database_migration.rb +1 -0
  97. data/lib/appwrite/models/database_migration_list.rb +1 -0
  98. data/lib/appwrite/models/database_status.rb +6 -5
  99. data/lib/appwrite/models/database_status_connections.rb +1 -0
  100. data/lib/appwrite/models/database_status_replica.rb +3 -2
  101. data/lib/appwrite/models/database_status_volume.rb +1 -0
  102. data/lib/appwrite/models/dedicated_database.rb +8 -7
  103. data/lib/appwrite/models/dedicated_database_backup.rb +6 -5
  104. data/lib/appwrite/models/dedicated_database_backup_list.rb +1 -0
  105. data/lib/appwrite/models/dedicated_database_backup_storage.rb +1 -0
  106. data/lib/appwrite/models/dedicated_database_branch.rb +2 -1
  107. data/lib/appwrite/models/dedicated_database_branch_list.rb +1 -0
  108. data/lib/appwrite/models/dedicated_database_execution.rb +1 -0
  109. data/lib/appwrite/models/dedicated_database_execution_column.rb +1 -0
  110. data/lib/appwrite/models/dedicated_database_extensions.rb +1 -0
  111. data/lib/appwrite/models/dedicated_database_list.rb +1 -0
  112. data/lib/appwrite/models/dedicated_database_member.rb +3 -2
  113. data/lib/appwrite/models/dedicated_database_operation.rb +4 -3
  114. data/lib/appwrite/models/dedicated_database_operation_list.rb +1 -0
  115. data/lib/appwrite/models/dedicated_database_pitr_windows.rb +1 -0
  116. data/lib/appwrite/models/dedicated_database_pooler.rb +1 -0
  117. data/lib/appwrite/models/dedicated_database_replicas.rb +3 -2
  118. data/lib/appwrite/models/dedicated_database_restoration.rb +11 -5
  119. data/lib/appwrite/models/dedicated_database_restoration_list.rb +1 -0
  120. data/lib/appwrite/models/dedicated_database_specification.rb +1 -0
  121. data/lib/appwrite/models/dedicated_database_specification_list.rb +4 -8
  122. data/lib/appwrite/models/deployment.rb +1 -0
  123. data/lib/appwrite/models/deployment_list.rb +1 -0
  124. data/lib/appwrite/models/document.rb +1 -0
  125. data/lib/appwrite/models/document_list.rb +1 -0
  126. data/lib/appwrite/models/domain.rb +1 -1
  127. data/lib/appwrite/models/domain_price.rb +2 -2
  128. data/lib/appwrite/models/email_template.rb +1 -0
  129. data/lib/appwrite/models/email_template_list.rb +1 -0
  130. data/lib/appwrite/models/embedding.rb +1 -0
  131. data/lib/appwrite/models/embedding_list.rb +1 -0
  132. data/lib/appwrite/models/ephemeral_key.rb +6 -0
  133. data/lib/appwrite/models/execution.rb +3 -1
  134. data/lib/appwrite/models/execution_list.rb +1 -0
  135. data/lib/appwrite/models/file.rb +1 -0
  136. data/lib/appwrite/models/file_list.rb +1 -0
  137. data/lib/appwrite/models/framework.rb +1 -0
  138. data/lib/appwrite/models/framework_adapter.rb +2 -1
  139. data/lib/appwrite/models/framework_list.rb +1 -0
  140. data/lib/appwrite/models/function.rb +15 -4
  141. data/lib/appwrite/models/function_list.rb +1 -0
  142. data/lib/appwrite/models/headers.rb +1 -0
  143. data/lib/appwrite/models/identity.rb +1 -0
  144. data/lib/appwrite/models/identity_list.rb +1 -0
  145. data/lib/appwrite/models/index.rb +7 -1
  146. data/lib/appwrite/models/index_list.rb +1 -0
  147. data/lib/appwrite/models/insight.rb +4 -3
  148. data/lib/appwrite/models/insight_cta.rb +1 -0
  149. data/lib/appwrite/models/insight_list.rb +1 -0
  150. data/lib/appwrite/models/jwt.rb +1 -0
  151. data/lib/appwrite/models/key.rb +6 -0
  152. data/lib/appwrite/models/key_list.rb +1 -0
  153. data/lib/appwrite/models/language.rb +1 -0
  154. data/lib/appwrite/models/language_list.rb +1 -0
  155. data/lib/appwrite/models/locale.rb +12 -11
  156. data/lib/appwrite/models/locale_code.rb +1 -0
  157. data/lib/appwrite/models/locale_code_list.rb +1 -0
  158. data/lib/appwrite/models/membership.rb +1 -0
  159. data/lib/appwrite/models/membership_list.rb +1 -0
  160. data/lib/appwrite/models/message.rb +4 -3
  161. data/lib/appwrite/models/message_list.rb +1 -0
  162. data/lib/appwrite/models/mfa_challenge.rb +1 -0
  163. data/lib/appwrite/models/mfa_challenge_secret.rb +1 -0
  164. data/lib/appwrite/models/mfa_factors.rb +1 -0
  165. data/lib/appwrite/models/mfa_recovery_codes.rb +1 -0
  166. data/lib/appwrite/models/mfa_type.rb +1 -0
  167. data/lib/appwrite/models/mock_number.rb +1 -0
  168. data/lib/appwrite/models/mock_number_list.rb +1 -0
  169. data/lib/appwrite/models/o_auth2_amazon.rb +1 -0
  170. data/lib/appwrite/models/o_auth2_apple.rb +1 -0
  171. data/lib/appwrite/models/o_auth2_appwrite.rb +1 -0
  172. data/lib/appwrite/models/o_auth2_auth0.rb +2 -1
  173. data/lib/appwrite/models/o_auth2_authentik.rb +1 -0
  174. data/lib/appwrite/models/o_auth2_autodesk.rb +1 -0
  175. data/lib/appwrite/models/o_auth2_bitbucket.rb +1 -0
  176. data/lib/appwrite/models/o_auth2_bitly.rb +1 -0
  177. data/lib/appwrite/models/o_auth2_box.rb +1 -0
  178. data/lib/appwrite/models/o_auth2_cloudflare.rb +1 -0
  179. data/lib/appwrite/models/o_auth2_dailymotion.rb +1 -0
  180. data/lib/appwrite/models/o_auth2_discord.rb +2 -1
  181. data/lib/appwrite/models/o_auth2_disqus.rb +1 -0
  182. data/lib/appwrite/models/o_auth2_dropbox.rb +1 -0
  183. data/lib/appwrite/models/o_auth2_etsy.rb +1 -0
  184. data/lib/appwrite/models/o_auth2_facebook.rb +1 -0
  185. data/lib/appwrite/models/o_auth2_figma.rb +1 -0
  186. data/lib/appwrite/models/o_auth2_fusion_auth.rb +1 -0
  187. data/lib/appwrite/models/o_auth2_github.rb +2 -1
  188. data/lib/appwrite/models/o_auth2_gitlab.rb +1 -0
  189. data/lib/appwrite/models/o_auth2_google.rb +1 -0
  190. data/lib/appwrite/models/o_auth2_hugging_face.rb +1 -0
  191. data/lib/appwrite/models/o_auth2_keycloak.rb +1 -0
  192. data/lib/appwrite/models/o_auth2_kick.rb +1 -0
  193. data/lib/appwrite/models/o_auth2_linkedin.rb +1 -0
  194. data/lib/appwrite/models/o_auth2_microsoft.rb +2 -1
  195. data/lib/appwrite/models/o_auth2_notion.rb +1 -0
  196. data/lib/appwrite/models/o_auth2_oidc.rb +7 -6
  197. data/lib/appwrite/models/o_auth2_okta.rb +2 -1
  198. data/lib/appwrite/models/o_auth2_paypal.rb +1 -0
  199. data/lib/appwrite/models/o_auth2_podio.rb +1 -0
  200. data/lib/appwrite/models/o_auth2_provider_list.rb +1 -0
  201. data/lib/appwrite/models/o_auth2_resend.rb +1 -0
  202. data/lib/appwrite/models/o_auth2_salesforce.rb +2 -1
  203. data/lib/appwrite/models/o_auth2_slack.rb +1 -0
  204. data/lib/appwrite/models/o_auth2_spotify.rb +1 -0
  205. data/lib/appwrite/models/o_auth2_stripe.rb +1 -0
  206. data/lib/appwrite/models/o_auth2_tradeshift.rb +1 -0
  207. data/lib/appwrite/models/o_auth2_twitch.rb +1 -0
  208. data/lib/appwrite/models/o_auth2_word_press.rb +1 -0
  209. data/lib/appwrite/models/o_auth2_x.rb +1 -0
  210. data/lib/appwrite/models/o_auth2_yahoo.rb +1 -0
  211. data/lib/appwrite/models/o_auth2_yandex.rb +1 -0
  212. data/lib/appwrite/models/o_auth2_zoho.rb +2 -1
  213. data/lib/appwrite/models/o_auth2_zoom.rb +1 -0
  214. data/lib/appwrite/models/oauth2_approve.rb +1 -0
  215. data/lib/appwrite/models/oauth2_authorize.rb +1 -0
  216. data/lib/appwrite/models/oauth2_consent.rb +1 -0
  217. data/lib/appwrite/models/oauth2_consent_list.rb +1 -0
  218. data/lib/appwrite/models/oauth2_consent_token.rb +1 -0
  219. data/lib/appwrite/models/oauth2_consent_token_list.rb +1 -0
  220. data/lib/appwrite/models/oauth2_device_authorization.rb +1 -0
  221. data/lib/appwrite/models/oauth2_grant.rb +1 -0
  222. data/lib/appwrite/models/oauth2_introspection.rb +11 -11
  223. data/lib/appwrite/models/oauth2_organization.rb +1 -0
  224. data/lib/appwrite/models/oauth2_organization_list.rb +1 -0
  225. data/lib/appwrite/models/oauth2_par.rb +1 -0
  226. data/lib/appwrite/models/oauth2_project.rb +1 -0
  227. data/lib/appwrite/models/oauth2_project_list.rb +1 -0
  228. data/lib/appwrite/models/oauth2_reject.rb +1 -0
  229. data/lib/appwrite/models/oauth2_token.rb +3 -2
  230. data/lib/appwrite/models/organization.rb +21 -20
  231. data/lib/appwrite/models/passkey.rb +1 -0
  232. data/lib/appwrite/models/passkey_challenge.rb +1 -0
  233. data/lib/appwrite/models/passkey_list.rb +1 -0
  234. data/lib/appwrite/models/phone.rb +1 -0
  235. data/lib/appwrite/models/phone_list.rb +1 -0
  236. data/lib/appwrite/models/platform_android.rb +1 -0
  237. data/lib/appwrite/models/platform_apple.rb +1 -0
  238. data/lib/appwrite/models/platform_linux.rb +1 -0
  239. data/lib/appwrite/models/platform_list.rb +1 -0
  240. data/lib/appwrite/models/platform_web.rb +1 -0
  241. data/lib/appwrite/models/platform_windows.rb +1 -0
  242. data/lib/appwrite/models/policy_deny_aliased_email.rb +1 -0
  243. data/lib/appwrite/models/policy_deny_corporate_email.rb +1 -0
  244. data/lib/appwrite/models/policy_deny_disposable_email.rb +1 -0
  245. data/lib/appwrite/models/policy_deny_free_email.rb +1 -0
  246. data/lib/appwrite/models/policy_list.rb +1 -0
  247. data/lib/appwrite/models/policy_membership_privacy.rb +1 -0
  248. data/lib/appwrite/models/policy_mfa_factors.rb +1 -0
  249. data/lib/appwrite/models/policy_passkey.rb +1 -0
  250. data/lib/appwrite/models/policy_password_dictionary.rb +9 -3
  251. data/lib/appwrite/models/policy_password_history.rb +1 -0
  252. data/lib/appwrite/models/policy_password_personal_data.rb +9 -3
  253. data/lib/appwrite/models/policy_password_strength.rb +1 -0
  254. data/lib/appwrite/models/policy_session_alert.rb +1 -0
  255. data/lib/appwrite/models/policy_session_duration.rb +1 -0
  256. data/lib/appwrite/models/policy_session_invalidation.rb +1 -0
  257. data/lib/appwrite/models/policy_session_limit.rb +1 -0
  258. data/lib/appwrite/models/policy_user_limit.rb +1 -0
  259. data/lib/appwrite/models/postgres_extension.rb +1 -0
  260. data/lib/appwrite/models/presence.rb +4 -3
  261. data/lib/appwrite/models/presence_list.rb +1 -0
  262. data/lib/appwrite/models/program.rb +1 -0
  263. data/lib/appwrite/models/project.rb +23 -27
  264. data/lib/appwrite/models/project_auth_method.rb +1 -0
  265. data/lib/appwrite/models/project_list.rb +1 -0
  266. data/lib/appwrite/models/project_protocol.rb +1 -0
  267. data/lib/appwrite/models/project_service.rb +1 -0
  268. data/lib/appwrite/models/provider.rb +2 -1
  269. data/lib/appwrite/models/provider_list.rb +1 -0
  270. data/lib/appwrite/models/proxy_invalidation.rb +1 -0
  271. data/lib/appwrite/models/proxy_rule.rb +23 -4
  272. data/lib/appwrite/models/proxy_rule_list.rb +1 -0
  273. data/lib/appwrite/models/report.rb +2 -1
  274. data/lib/appwrite/models/report_list.rb +1 -0
  275. data/lib/appwrite/models/resource_token.rb +1 -0
  276. data/lib/appwrite/models/resource_token_list.rb +1 -0
  277. data/lib/appwrite/models/row.rb +1 -0
  278. data/lib/appwrite/models/row_list.rb +1 -0
  279. data/lib/appwrite/models/runtime.rb +1 -0
  280. data/lib/appwrite/models/runtime_list.rb +1 -0
  281. data/lib/appwrite/models/session.rb +1 -0
  282. data/lib/appwrite/models/session_list.rb +1 -0
  283. data/lib/appwrite/models/site.rb +6 -0
  284. data/lib/appwrite/models/site_list.rb +1 -0
  285. data/lib/appwrite/models/specification.rb +1 -0
  286. data/lib/appwrite/models/specification_list.rb +1 -0
  287. data/lib/appwrite/models/subscriber.rb +1 -0
  288. data/lib/appwrite/models/subscriber_list.rb +1 -0
  289. data/lib/appwrite/models/table.rb +6 -0
  290. data/lib/appwrite/models/table_list.rb +1 -0
  291. data/lib/appwrite/models/target.rb +2 -1
  292. data/lib/appwrite/models/target_list.rb +1 -0
  293. data/lib/appwrite/models/team.rb +1 -0
  294. data/lib/appwrite/models/team_list.rb +1 -0
  295. data/lib/appwrite/models/token.rb +1 -0
  296. data/lib/appwrite/models/token_secret.rb +1 -0
  297. data/lib/appwrite/models/topic.rb +8 -2
  298. data/lib/appwrite/models/topic_list.rb +1 -0
  299. data/lib/appwrite/models/transaction.rb +1 -0
  300. data/lib/appwrite/models/transaction_list.rb +1 -0
  301. data/lib/appwrite/models/usage_billing_plan.rb +27 -27
  302. data/lib/appwrite/models/user.rb +12 -11
  303. data/lib/appwrite/models/user_list.rb +1 -0
  304. data/lib/appwrite/models/variable.rb +6 -0
  305. data/lib/appwrite/models/variable_list.rb +1 -0
  306. data/lib/appwrite/models/vectorsdb_collection.rb +6 -0
  307. data/lib/appwrite/models/vectorsdb_collection_list.rb +1 -0
  308. data/lib/appwrite/models/webhook.rb +6 -0
  309. data/lib/appwrite/models/webhook_list.rb +1 -0
  310. data/lib/appwrite/query/builder.rb +361 -0
  311. data/lib/appwrite/query.rb +190 -0
  312. data/lib/appwrite/services/account.rb +135 -107
  313. data/lib/appwrite/services/activities.rb +8 -5
  314. data/lib/appwrite/services/advisor.rb +19 -18
  315. data/lib/appwrite/services/apps.rb +89 -89
  316. data/lib/appwrite/services/avatars.rb +21 -21
  317. data/lib/appwrite/services/backups.rb +42 -33
  318. data/lib/appwrite/services/databases.rb +727 -488
  319. data/lib/appwrite/services/documents_db.rb +266 -190
  320. data/lib/appwrite/services/domains.rb +63 -57
  321. data/lib/appwrite/services/embeddings.rb +2 -2
  322. data/lib/appwrite/services/functions.rb +132 -112
  323. data/lib/appwrite/services/graphql.rb +4 -4
  324. data/lib/appwrite/services/messaging.rb +172 -156
  325. data/lib/appwrite/services/mongo.rb +206 -133
  326. data/lib/appwrite/services/mysql.rb +224 -147
  327. data/lib/appwrite/services/oauth2.rb +27 -27
  328. data/lib/appwrite/services/organization.rb +59 -247
  329. data/lib/appwrite/services/postgresql.rb +238 -161
  330. data/lib/appwrite/services/presences.rb +17 -16
  331. data/lib/appwrite/services/project.rb +187 -147
  332. data/lib/appwrite/services/proxy.rb +70 -23
  333. data/lib/appwrite/services/sites.rb +124 -108
  334. data/lib/appwrite/services/storage.rb +77 -62
  335. data/lib/appwrite/services/tables_db.rb +832 -589
  336. data/lib/appwrite/services/teams.rb +83 -81
  337. data/lib/appwrite/services/tokens.rb +25 -24
  338. data/lib/appwrite/services/users.rb +170 -199
  339. data/lib/appwrite/services/vectors_db.rb +199 -179
  340. data/lib/appwrite/services/waf.rb +7 -7
  341. data/lib/appwrite/services/webhooks.rb +31 -24
  342. data/lib/appwrite/topic.rb +53 -0
  343. data/lib/appwrite.rb +6 -9
  344. metadata +6 -8
  345. data/lib/appwrite/enums/organization_key_scopes.rb +0 -22
  346. data/lib/appwrite/models/dedicated_database_specification_pricing.rb +0 -42
  347. data/lib/appwrite/models/dev_key.rb +0 -62
  348. data/lib/appwrite/models/log.rb +0 -132
  349. data/lib/appwrite/models/log_list.rb +0 -32
@@ -9,15 +9,18 @@ module Appwrite
9
9
  # List all dedicated databases. Results support pagination.
10
10
  #
11
11
  # @param [Array] queries Array of query strings.
12
+ # @param [] total When set to false, the total count returned will be 0 and will not be calculated.
12
13
  #
13
14
  # @return [DedicatedDatabaseList]
14
15
  def list(
15
- queries: nil
16
+ queries: nil,
17
+ total: nil
16
18
  )
17
19
  api_path = '/mongo'
18
20
 
19
21
  api_params = {
20
22
  queries: queries,
23
+ total: total,
21
24
  }
22
25
 
23
26
  api_headers = {
@@ -50,7 +53,7 @@ module Appwrite
50
53
  # @param [Integer] pitr_retention_days Number of days to retain PITR data.
51
54
  # @param [] storage_autoscaling Enable automatic storage expansion when usage exceeds threshold.
52
55
  # @param [Integer] storage_autoscaling_threshold_percent Storage usage percentage (50-95) that triggers automatic expansion.
53
- # @param [Integer] storage_autoscaling_max_gb Maximum storage size in GB for autoscaling. 0 means no limit.
56
+ # @param [Integer] storage_autoscaling_max_gb Maximum storage size in GB for autoscaling. Defaults to 3 times the specification's storage. 0 means no limit.
54
57
  #
55
58
  # @return [DedicatedDatabase]
56
59
  def create(
@@ -69,8 +72,6 @@ module Appwrite
69
72
  storage_autoscaling_threshold_percent: nil,
70
73
  storage_autoscaling_max_gb: nil
71
74
  )
72
- api_path = '/mongo'
73
-
74
75
  if database_id.nil?
75
76
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
76
77
  end
@@ -79,6 +80,8 @@ module Appwrite
79
80
  raise Appwrite::Exception.new('Missing required parameter: "name"')
80
81
  end
81
82
 
83
+ api_path = '/mongo'
84
+
82
85
  api_params = {
83
86
  databaseId: database_id,
84
87
  name: name,
@@ -112,8 +115,8 @@ module Appwrite
112
115
  end
113
116
 
114
117
  # List the dedicated database specifications available on the current plan.
115
- # Each specification reports its resource limits, pricing, and whether it is
116
- # enabled for the organization.
118
+ # Each specification reports its resource limits, its own prices and overage
119
+ # rates, and whether it is enabled for the organization.
117
120
  #
118
121
  #
119
122
  # @return [DedicatedDatabaseSpecificationList]
@@ -145,13 +148,13 @@ module Appwrite
145
148
  def get(
146
149
  database_id:
147
150
  )
148
- api_path = '/mongo/{databaseId}'
149
- .gsub('{databaseId}', database_id)
150
-
151
- if database_id.nil?
151
+ if database_id.nil? || database_id == ''
152
152
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
153
153
  end
154
154
 
155
+ api_path = '/mongo/{databaseId}'
156
+ .gsub('{databaseId}', database_id)
157
+
155
158
  api_params = {}
156
159
 
157
160
  api_headers = {
@@ -219,13 +222,13 @@ module Appwrite
219
222
  sql_api_max_bytes: nil,
220
223
  sql_api_timeout_seconds: nil
221
224
  )
222
- api_path = '/mongo/{databaseId}'
223
- .gsub('{databaseId}', database_id)
224
-
225
- if database_id.nil?
225
+ if database_id.nil? || database_id == ''
226
226
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
227
227
  end
228
228
 
229
+ api_path = '/mongo/{databaseId}'
230
+ .gsub('{databaseId}', database_id)
231
+
229
232
  api_params = {
230
233
  name: name,
231
234
  status: status,
@@ -275,13 +278,13 @@ module Appwrite
275
278
  def delete(
276
279
  database_id:
277
280
  )
278
- api_path = '/mongo/{databaseId}'
279
- .gsub('{databaseId}', database_id)
280
-
281
- if database_id.nil?
281
+ if database_id.nil? || database_id == ''
282
282
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
283
283
  end
284
284
 
285
+ api_path = '/mongo/{databaseId}'
286
+ .gsub('{databaseId}', database_id)
287
+
285
288
  api_params = {}
286
289
 
287
290
  api_headers = {
@@ -303,21 +306,24 @@ module Appwrite
303
306
  #
304
307
  # @param [String] database_id Database ID.
305
308
  # @param [Array] queries Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: status, type, databaseId
309
+ # @param [] total When set to false, the total count returned will be 0 and will not be calculated.
306
310
  #
307
311
  # @return [DedicatedDatabaseBackupList]
308
312
  def list_backups(
309
313
  database_id:,
310
- queries: nil
314
+ queries: nil,
315
+ total: nil
311
316
  )
312
- api_path = '/mongo/{databaseId}/backups'
313
- .gsub('{databaseId}', database_id)
314
-
315
- if database_id.nil?
317
+ if database_id.nil? || database_id == ''
316
318
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
317
319
  end
318
320
 
321
+ api_path = '/mongo/{databaseId}/backups'
322
+ .gsub('{databaseId}', database_id)
323
+
319
324
  api_params = {
320
325
  queries: queries,
326
+ total: total,
321
327
  }
322
328
 
323
329
  api_headers = {
@@ -345,13 +351,13 @@ module Appwrite
345
351
  database_id:,
346
352
  type: nil
347
353
  )
348
- api_path = '/mongo/{databaseId}/backups'
349
- .gsub('{databaseId}', database_id)
350
-
351
- if database_id.nil?
354
+ if database_id.nil? || database_id == ''
352
355
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
353
356
  end
354
357
 
358
+ api_path = '/mongo/{databaseId}/backups'
359
+ .gsub('{databaseId}', database_id)
360
+
355
361
  api_params = {
356
362
  type: type,
357
363
  }
@@ -375,21 +381,24 @@ module Appwrite
375
381
  #
376
382
  # @param [String] database_id Database ID.
377
383
  # @param [Array] queries Array of query strings generated using the Query class provided by the SDK.
384
+ # @param [] total When set to false, the total count returned will be 0 and will not be calculated.
378
385
  #
379
386
  # @return [BackupPolicyList]
380
387
  def list_backup_policies(
381
388
  database_id:,
382
- queries: nil
389
+ queries: nil,
390
+ total: nil
383
391
  )
384
- api_path = '/mongo/{databaseId}/backups/policies'
385
- .gsub('{databaseId}', database_id)
386
-
387
- if database_id.nil?
392
+ if database_id.nil? || database_id == ''
388
393
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
389
394
  end
390
395
 
396
+ api_path = '/mongo/{databaseId}/backups/policies'
397
+ .gsub('{databaseId}', database_id)
398
+
391
399
  api_params = {
392
400
  queries: queries,
401
+ total: total,
393
402
  }
394
403
 
395
404
  api_headers = {
@@ -426,10 +435,7 @@ module Appwrite
426
435
  type: nil,
427
436
  enabled: nil
428
437
  )
429
- api_path = '/mongo/{databaseId}/backups/policies'
430
- .gsub('{databaseId}', database_id)
431
-
432
- if database_id.nil?
438
+ if database_id.nil? || database_id == ''
433
439
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
434
440
  end
435
441
 
@@ -449,6 +455,9 @@ module Appwrite
449
455
  raise Appwrite::Exception.new('Missing required parameter: "retention"')
450
456
  end
451
457
 
458
+ api_path = '/mongo/{databaseId}/backups/policies'
459
+ .gsub('{databaseId}', database_id)
460
+
452
461
  api_params = {
453
462
  policyId: policy_id,
454
463
  name: name,
@@ -483,18 +492,18 @@ module Appwrite
483
492
  database_id:,
484
493
  policy_id:
485
494
  )
486
- api_path = '/mongo/{databaseId}/backups/policies/{policyId}'
487
- .gsub('{databaseId}', database_id)
488
- .gsub('{policyId}', policy_id)
489
-
490
- if database_id.nil?
495
+ if database_id.nil? || database_id == ''
491
496
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
492
497
  end
493
498
 
494
- if policy_id.nil?
499
+ if policy_id.nil? || policy_id == ''
495
500
  raise Appwrite::Exception.new('Missing required parameter: "policyId"')
496
501
  end
497
502
 
503
+ api_path = '/mongo/{databaseId}/backups/policies/{policyId}'
504
+ .gsub('{databaseId}', database_id)
505
+ .gsub('{policyId}', policy_id)
506
+
498
507
  api_params = {}
499
508
 
500
509
  api_headers = {
@@ -529,18 +538,18 @@ module Appwrite
529
538
  retention: nil,
530
539
  enabled: nil
531
540
  )
532
- api_path = '/mongo/{databaseId}/backups/policies/{policyId}'
533
- .gsub('{databaseId}', database_id)
534
- .gsub('{policyId}', policy_id)
535
-
536
- if database_id.nil?
541
+ if database_id.nil? || database_id == ''
537
542
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
538
543
  end
539
544
 
540
- if policy_id.nil?
545
+ if policy_id.nil? || policy_id == ''
541
546
  raise Appwrite::Exception.new('Missing required parameter: "policyId"')
542
547
  end
543
548
 
549
+ api_path = '/mongo/{databaseId}/backups/policies/{policyId}'
550
+ .gsub('{databaseId}', database_id)
551
+ .gsub('{policyId}', policy_id)
552
+
544
553
  api_params = {
545
554
  name: name,
546
555
  schedule: schedule,
@@ -574,18 +583,18 @@ module Appwrite
574
583
  database_id:,
575
584
  policy_id:
576
585
  )
577
- api_path = '/mongo/{databaseId}/backups/policies/{policyId}'
578
- .gsub('{databaseId}', database_id)
579
- .gsub('{policyId}', policy_id)
580
-
581
- if database_id.nil?
586
+ if database_id.nil? || database_id == ''
582
587
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
583
588
  end
584
589
 
585
- if policy_id.nil?
590
+ if policy_id.nil? || policy_id == ''
586
591
  raise Appwrite::Exception.new('Missing required parameter: "policyId"')
587
592
  end
588
593
 
594
+ api_path = '/mongo/{databaseId}/backups/policies/{policyId}'
595
+ .gsub('{databaseId}', database_id)
596
+ .gsub('{policyId}', policy_id)
597
+
589
598
  api_params = {}
590
599
 
591
600
  api_headers = {
@@ -626,10 +635,7 @@ module Appwrite
626
635
  prefix: nil,
627
636
  endpoint: nil
628
637
  )
629
- api_path = '/mongo/{databaseId}/backups/storage'
630
- .gsub('{databaseId}', database_id)
631
-
632
- if database_id.nil?
638
+ if database_id.nil? || database_id == ''
633
639
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
634
640
  end
635
641
 
@@ -649,6 +655,9 @@ module Appwrite
649
655
  raise Appwrite::Exception.new('Missing required parameter: "secretKey"')
650
656
  end
651
657
 
658
+ api_path = '/mongo/{databaseId}/backups/storage'
659
+ .gsub('{databaseId}', database_id)
660
+
652
661
  api_params = {
653
662
  provider: provider,
654
663
  bucket: bucket,
@@ -685,18 +694,18 @@ module Appwrite
685
694
  database_id:,
686
695
  backup_id:
687
696
  )
688
- api_path = '/mongo/{databaseId}/backups/{backupId}'
689
- .gsub('{databaseId}', database_id)
690
- .gsub('{backupId}', backup_id)
691
-
692
- if database_id.nil?
697
+ if database_id.nil? || database_id == ''
693
698
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
694
699
  end
695
700
 
696
- if backup_id.nil?
701
+ if backup_id.nil? || backup_id == ''
697
702
  raise Appwrite::Exception.new('Missing required parameter: "backupId"')
698
703
  end
699
704
 
705
+ api_path = '/mongo/{databaseId}/backups/{backupId}'
706
+ .gsub('{databaseId}', database_id)
707
+ .gsub('{backupId}', backup_id)
708
+
700
709
  api_params = {}
701
710
 
702
711
  api_headers = {
@@ -724,18 +733,18 @@ module Appwrite
724
733
  database_id:,
725
734
  backup_id:
726
735
  )
727
- api_path = '/mongo/{databaseId}/backups/{backupId}'
728
- .gsub('{databaseId}', database_id)
729
- .gsub('{backupId}', backup_id)
730
-
731
- if database_id.nil?
736
+ if database_id.nil? || database_id == ''
732
737
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
733
738
  end
734
739
 
735
- if backup_id.nil?
740
+ if backup_id.nil? || backup_id == ''
736
741
  raise Appwrite::Exception.new('Missing required parameter: "backupId"')
737
742
  end
738
743
 
744
+ api_path = '/mongo/{databaseId}/backups/{backupId}'
745
+ .gsub('{databaseId}', database_id)
746
+ .gsub('{backupId}', backup_id)
747
+
739
748
  api_params = {}
740
749
 
741
750
  api_headers = {
@@ -761,13 +770,13 @@ module Appwrite
761
770
  def list_branches(
762
771
  database_id:
763
772
  )
764
- api_path = '/mongo/{databaseId}/branches'
765
- .gsub('{databaseId}', database_id)
766
-
767
- if database_id.nil?
773
+ if database_id.nil? || database_id == ''
768
774
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
769
775
  end
770
776
 
777
+ api_path = '/mongo/{databaseId}/branches'
778
+ .gsub('{databaseId}', database_id)
779
+
771
780
  api_params = {}
772
781
 
773
782
  api_headers = {
@@ -800,13 +809,13 @@ module Appwrite
800
809
  branch_id: nil,
801
810
  ttl: nil
802
811
  )
803
- api_path = '/mongo/{databaseId}/branches'
804
- .gsub('{databaseId}', database_id)
805
-
806
- if database_id.nil?
812
+ if database_id.nil? || database_id == ''
807
813
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
808
814
  end
809
815
 
816
+ api_path = '/mongo/{databaseId}/branches'
817
+ .gsub('{databaseId}', database_id)
818
+
810
819
  api_params = {
811
820
  branchId: branch_id,
812
821
  ttl: ttl,
@@ -839,18 +848,18 @@ module Appwrite
839
848
  database_id:,
840
849
  branch_id:
841
850
  )
842
- api_path = '/mongo/{databaseId}/branches/{branchId}'
843
- .gsub('{databaseId}', database_id)
844
- .gsub('{branchId}', branch_id)
845
-
846
- if database_id.nil?
851
+ if database_id.nil? || database_id == ''
847
852
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
848
853
  end
849
854
 
850
- if branch_id.nil?
855
+ if branch_id.nil? || branch_id == ''
851
856
  raise Appwrite::Exception.new('Missing required parameter: "branchId"')
852
857
  end
853
858
 
859
+ api_path = '/mongo/{databaseId}/branches/{branchId}'
860
+ .gsub('{databaseId}', database_id)
861
+ .gsub('{branchId}', branch_id)
862
+
854
863
  api_params = {}
855
864
 
856
865
  api_headers = {
@@ -879,13 +888,13 @@ module Appwrite
879
888
  def update_credentials(
880
889
  database_id:
881
890
  )
882
- api_path = '/mongo/{databaseId}/credentials'
883
- .gsub('{databaseId}', database_id)
884
-
885
- if database_id.nil?
891
+ if database_id.nil? || database_id == ''
886
892
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
887
893
  end
888
894
 
895
+ api_path = '/mongo/{databaseId}/credentials'
896
+ .gsub('{databaseId}', database_id)
897
+
889
898
  api_params = {}
890
899
 
891
900
  api_headers = {
@@ -921,13 +930,13 @@ module Appwrite
921
930
  database_id:,
922
931
  target_replica_id: nil
923
932
  )
924
- api_path = '/mongo/{databaseId}/failovers'
925
- .gsub('{databaseId}', database_id)
926
-
927
- if database_id.nil?
933
+ if database_id.nil? || database_id == ''
928
934
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
929
935
  end
930
936
 
937
+ api_path = '/mongo/{databaseId}/failovers'
938
+ .gsub('{databaseId}', database_id)
939
+
931
940
  api_params = {
932
941
  targetReplicaId: target_replica_id,
933
942
  }
@@ -961,10 +970,7 @@ module Appwrite
961
970
  day:,
962
971
  hour_utc:
963
972
  )
964
- api_path = '/mongo/{databaseId}/maintenance'
965
- .gsub('{databaseId}', database_id)
966
-
967
- if database_id.nil?
973
+ if database_id.nil? || database_id == ''
968
974
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
969
975
  end
970
976
 
@@ -976,6 +982,9 @@ module Appwrite
976
982
  raise Appwrite::Exception.new('Missing required parameter: "hourUtc"')
977
983
  end
978
984
 
985
+ api_path = '/mongo/{databaseId}/maintenance'
986
+ .gsub('{databaseId}', database_id)
987
+
979
988
  api_params = {
980
989
  day: day,
981
990
  hourUtc: hour_utc,
@@ -1011,10 +1020,7 @@ module Appwrite
1011
1020
  target_type:,
1012
1021
  specification: nil
1013
1022
  )
1014
- api_path = '/mongo/{databaseId}/migrations'
1015
- .gsub('{databaseId}', database_id)
1016
-
1017
- if database_id.nil?
1023
+ if database_id.nil? || database_id == ''
1018
1024
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1019
1025
  end
1020
1026
 
@@ -1022,6 +1028,9 @@ module Appwrite
1022
1028
  raise Appwrite::Exception.new('Missing required parameter: "targetType"')
1023
1029
  end
1024
1030
 
1031
+ api_path = '/mongo/{databaseId}/migrations'
1032
+ .gsub('{databaseId}', database_id)
1033
+
1025
1034
  api_params = {
1026
1035
  targetType: target_type,
1027
1036
  specification: specification,
@@ -1059,13 +1068,13 @@ module Appwrite
1059
1068
  limit: nil,
1060
1069
  offset: nil
1061
1070
  )
1062
- api_path = '/mongo/{databaseId}/operations'
1063
- .gsub('{databaseId}', database_id)
1064
-
1065
- if database_id.nil?
1071
+ if database_id.nil? || database_id == ''
1066
1072
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1067
1073
  end
1068
1074
 
1075
+ api_path = '/mongo/{databaseId}/operations'
1076
+ .gsub('{databaseId}', database_id)
1077
+
1069
1078
  api_params = {
1070
1079
  status: status,
1071
1080
  limit: limit,
@@ -1095,13 +1104,13 @@ module Appwrite
1095
1104
  def get_pitr(
1096
1105
  database_id:
1097
1106
  )
1098
- api_path = '/mongo/{databaseId}/pitr'
1099
- .gsub('{databaseId}', database_id)
1100
-
1101
- if database_id.nil?
1107
+ if database_id.nil? || database_id == ''
1102
1108
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1103
1109
  end
1104
1110
 
1111
+ api_path = '/mongo/{databaseId}/pitr'
1112
+ .gsub('{databaseId}', database_id)
1113
+
1105
1114
  api_params = {}
1106
1115
 
1107
1116
  api_headers = {
@@ -1127,13 +1136,13 @@ module Appwrite
1127
1136
  def get_replicas(
1128
1137
  database_id:
1129
1138
  )
1130
- api_path = '/mongo/{databaseId}/replicas'
1131
- .gsub('{databaseId}', database_id)
1132
-
1133
- if database_id.nil?
1139
+ if database_id.nil? || database_id == ''
1134
1140
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1135
1141
  end
1136
1142
 
1143
+ api_path = '/mongo/{databaseId}/replicas'
1144
+ .gsub('{databaseId}', database_id)
1145
+
1137
1146
  api_params = {}
1138
1147
 
1139
1148
  api_headers = {
@@ -1167,13 +1176,13 @@ module Appwrite
1167
1176
  limit: nil,
1168
1177
  offset: nil
1169
1178
  )
1170
- api_path = '/mongo/{databaseId}/restorations'
1171
- .gsub('{databaseId}', database_id)
1172
-
1173
- if database_id.nil?
1179
+ if database_id.nil? || database_id == ''
1174
1180
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1175
1181
  end
1176
1182
 
1183
+ api_path = '/mongo/{databaseId}/restorations'
1184
+ .gsub('{databaseId}', database_id)
1185
+
1177
1186
  api_params = {
1178
1187
  status: status,
1179
1188
  type: type,
@@ -1200,11 +1209,25 @@ module Appwrite
1200
1209
  # an ISO 8601 datetime. PITR requires the database to have PITR enabled and
1201
1210
  # is only available for enterprise databases.
1202
1211
  #
1212
+ # By default the backup is replayed over the database it was taken from. Pass
1213
+ # `restoreMode` as `clone` to recover it onto a second workload beside this
1214
+ # database instead: this database keeps serving its own data while the clone
1215
+ # is filled, and the switch happens as soon as the clone is ready, on the
1216
+ # endpoint and credentials it already had. Pass `autoPromote` as false to
1217
+ # hold the clone until you promote it yourself. Pass `restoreMode` as `copy`
1218
+ # to recover onto a separate database with its own endpoint, either one you
1219
+ # name with `targetDatabaseId` or one provisioned as a copy of this
1220
+ # database's engine, version, specification and replicas. Neither mode is
1221
+ # available for a point-in-time recovery or an incremental backup.
1222
+ #
1203
1223
  # @param [String] database_id Database ID.
1204
1224
  # @param [String] type Restoration type. Allowed values: backup, pitr. Use "backup" to restore from a specific backup, or "pitr" for point-in-time recovery.
1205
1225
  # @param [String] backup_id Backup ID to restore from (required for backup type).
1206
- # @param [String] target_database_id Existing database ID to restore into. The target must be distinct, ready, and use the same engine and version.
1226
+ # @param [String] target_database_id Existing database ID to restore into. The target must be distinct, ready, and use the same engine and version. Omit it on a copy restoration to have one provisioned. Not accepted for a clone, which is recovered inside this database.
1207
1227
  # @param [String] target_time Target time for PITR (required for pitr type) as an [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) datetime.
1228
+ # @param [String] restore_mode Where the backup is restored. Allowed values: in_place, clone, copy. Use "clone" to recover onto a second workload beside this database and leave it serving until you promote — the endpoint and credentials do not change. Use "copy" to recover onto a separate database with its own endpoint, either one you name with targetDatabaseId or one Cloud provisions. Use "in_place" to replay the backup over this database. Defaults to "copy" when a targetDatabaseId is given, "in_place" otherwise.
1229
+ # @param [String] target_name Display name for the database a copy restoration provisions. Defaults to this database's name followed by "(restored)". Max length: 128 chars.
1230
+ # @param [] auto_promote Whether a clone restoration switches the database over as soon as the recovery is ready. Default true: the restore finishes with the database serving the recovery point on the endpoint it already had, and the side it replaced kept briefly so the switch can be reversed. Pass false to hold the recovery until you call the promotion endpoint yourself.
1208
1231
  #
1209
1232
  # @return [DedicatedDatabaseRestoration]
1210
1233
  def create_restoration(
@@ -1212,20 +1235,26 @@ module Appwrite
1212
1235
  type: nil,
1213
1236
  backup_id: nil,
1214
1237
  target_database_id: nil,
1215
- target_time: nil
1238
+ target_time: nil,
1239
+ restore_mode: nil,
1240
+ target_name: nil,
1241
+ auto_promote: nil
1216
1242
  )
1217
- api_path = '/mongo/{databaseId}/restorations'
1218
- .gsub('{databaseId}', database_id)
1219
-
1220
- if database_id.nil?
1243
+ if database_id.nil? || database_id == ''
1221
1244
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1222
1245
  end
1223
1246
 
1247
+ api_path = '/mongo/{databaseId}/restorations'
1248
+ .gsub('{databaseId}', database_id)
1249
+
1224
1250
  api_params = {
1225
1251
  type: type,
1226
1252
  backupId: backup_id,
1227
1253
  targetDatabaseId: target_database_id,
1228
1254
  targetTime: target_time,
1255
+ restoreMode: restore_mode,
1256
+ targetName: target_name,
1257
+ autoPromote: auto_promote,
1229
1258
  }
1230
1259
 
1231
1260
  api_headers = {
@@ -1254,27 +1283,71 @@ module Appwrite
1254
1283
  database_id:,
1255
1284
  restoration_id:
1256
1285
  )
1286
+ if database_id.nil? || database_id == ''
1287
+ raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1288
+ end
1289
+
1290
+ if restoration_id.nil? || restoration_id == ''
1291
+ raise Appwrite::Exception.new('Missing required parameter: "restorationId"')
1292
+ end
1293
+
1257
1294
  api_path = '/mongo/{databaseId}/restorations/{restorationId}'
1258
1295
  .gsub('{databaseId}', database_id)
1259
1296
  .gsub('{restorationId}', restoration_id)
1260
1297
 
1261
- if database_id.nil?
1298
+ api_params = {}
1299
+
1300
+ api_headers = {
1301
+ "X-Appwrite-Project": @client.get_config('project'),
1302
+ "accept": 'application/json',
1303
+ }
1304
+
1305
+ @client.call(
1306
+ method: 'GET',
1307
+ path: api_path,
1308
+ headers: api_headers,
1309
+ params: api_params,
1310
+ response_type: Models::DedicatedDatabaseRestoration
1311
+ )
1312
+ end
1313
+
1314
+ # Switch the database over to the clone a restoration recovered. The database
1315
+ # keeps
1316
+ # its endpoint and credentials; clients reconnect once. Writes made after the
1317
+ # recovery point are discarded, and the side being replaced is retained
1318
+ # briefly so
1319
+ # the switch can be reversed.
1320
+ #
1321
+ # @param [String] database_id Database ID.
1322
+ # @param [String] restoration_id Restoration ID.
1323
+ #
1324
+ # @return [DedicatedDatabaseRestoration]
1325
+ def promote_restoration(
1326
+ database_id:,
1327
+ restoration_id:
1328
+ )
1329
+ if database_id.nil? || database_id == ''
1262
1330
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1263
1331
  end
1264
1332
 
1265
- if restoration_id.nil?
1333
+ if restoration_id.nil? || restoration_id == ''
1266
1334
  raise Appwrite::Exception.new('Missing required parameter: "restorationId"')
1267
1335
  end
1268
1336
 
1337
+ api_path = '/mongo/{databaseId}/restorations/{restorationId}/promotions'
1338
+ .gsub('{databaseId}', database_id)
1339
+ .gsub('{restorationId}', restoration_id)
1340
+
1269
1341
  api_params = {}
1270
1342
 
1271
1343
  api_headers = {
1272
1344
  "X-Appwrite-Project": @client.get_config('project'),
1345
+ "content-type": 'application/json',
1273
1346
  "accept": 'application/json',
1274
1347
  }
1275
1348
 
1276
1349
  @client.call(
1277
- method: 'GET',
1350
+ method: 'POST',
1278
1351
  path: api_path,
1279
1352
  headers: api_headers,
1280
1353
  params: api_params,
@@ -1292,13 +1365,13 @@ module Appwrite
1292
1365
  def get_status(
1293
1366
  database_id:
1294
1367
  )
1295
- api_path = '/mongo/{databaseId}/status'
1296
- .gsub('{databaseId}', database_id)
1297
-
1298
- if database_id.nil?
1368
+ if database_id.nil? || database_id == ''
1299
1369
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1300
1370
  end
1301
1371
 
1372
+ api_path = '/mongo/{databaseId}/status'
1373
+ .gsub('{databaseId}', database_id)
1374
+
1302
1375
  api_params = {}
1303
1376
 
1304
1377
  api_headers = {
@@ -1326,10 +1399,7 @@ module Appwrite
1326
1399
  database_id:,
1327
1400
  target_version:
1328
1401
  )
1329
- api_path = '/mongo/{databaseId}/upgrades'
1330
- .gsub('{databaseId}', database_id)
1331
-
1332
- if database_id.nil?
1402
+ if database_id.nil? || database_id == ''
1333
1403
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1334
1404
  end
1335
1405
 
@@ -1337,6 +1407,9 @@ module Appwrite
1337
1407
  raise Appwrite::Exception.new('Missing required parameter: "targetVersion"')
1338
1408
  end
1339
1409
 
1410
+ api_path = '/mongo/{databaseId}/upgrades'
1411
+ .gsub('{databaseId}', database_id)
1412
+
1340
1413
  api_params = {
1341
1414
  targetVersion: target_version,
1342
1415
  }