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 = '/postgresql'
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 = '/postgresql'
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 = '/postgresql'
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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{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 = '/postgresql/{databaseId}/credentials'
896
+ .gsub('{databaseId}', database_id)
897
+
889
898
  api_params = {}
890
899
 
891
900
  api_headers = {
@@ -912,11 +921,15 @@ module Appwrite
912
921
  # without a per-query cloud round-trip. The statement type must be on the
913
922
  # database's configured allow-list. Use bound parameters for any
914
923
  # user-supplied values — the API does not interpolate raw strings.
924
+ # Long-running statements (for example CREATE INDEX) can outlive the HTTP
925
+ # request: if the request ends before a result is returned, check the
926
+ # database before retrying, and prefer a direct connection for work that may
927
+ # take minutes.
915
928
  #
916
929
  # @param [String] database_id Database ID.
917
930
  # @param [String] sql SQL statement to execute. Exactly one statement per request.
918
931
  # @param [Hash] bindings Optional bound parameters. Pass either a positional list or a name => value map matching the placeholder style used in the SQL.
919
- # @param [Integer] timeout_seconds Per-call execution timeout override. Must be less than or equal to the database's configured sqlApiTimeoutSeconds.
932
+ # @param [Integer] timeout_seconds Per-call execution timeout override. Must be less than or equal to the database's configured sqlApiTimeoutSeconds. Statements that may exceed this — or the HTTP request timeout in front of Cloud — should use a direct connection instead.
920
933
  #
921
934
  # @return [DedicatedDatabaseExecution]
922
935
  def create_execution(
@@ -925,10 +938,7 @@ module Appwrite
925
938
  bindings: nil,
926
939
  timeout_seconds: nil
927
940
  )
928
- api_path = '/postgresql/{databaseId}/executions'
929
- .gsub('{databaseId}', database_id)
930
-
931
- if database_id.nil?
941
+ if database_id.nil? || database_id == ''
932
942
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
933
943
  end
934
944
 
@@ -936,6 +946,9 @@ module Appwrite
936
946
  raise Appwrite::Exception.new('Missing required parameter: "sql"')
937
947
  end
938
948
 
949
+ api_path = '/postgresql/{databaseId}/executions'
950
+ .gsub('{databaseId}', database_id)
951
+
939
952
  api_params = {
940
953
  sql: sql,
941
954
  bindings: bindings,
@@ -965,13 +978,13 @@ module Appwrite
965
978
  def list_extensions(
966
979
  database_id:
967
980
  )
968
- api_path = '/postgresql/{databaseId}/extensions'
969
- .gsub('{databaseId}', database_id)
970
-
971
- if database_id.nil?
981
+ if database_id.nil? || database_id == ''
972
982
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
973
983
  end
974
984
 
985
+ api_path = '/postgresql/{databaseId}/extensions'
986
+ .gsub('{databaseId}', database_id)
987
+
975
988
  api_params = {}
976
989
 
977
990
  api_headers = {
@@ -999,10 +1012,7 @@ module Appwrite
999
1012
  database_id:,
1000
1013
  name:
1001
1014
  )
1002
- api_path = '/postgresql/{databaseId}/extensions'
1003
- .gsub('{databaseId}', database_id)
1004
-
1005
- if database_id.nil?
1015
+ if database_id.nil? || database_id == ''
1006
1016
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1007
1017
  end
1008
1018
 
@@ -1010,6 +1020,9 @@ module Appwrite
1010
1020
  raise Appwrite::Exception.new('Missing required parameter: "name"')
1011
1021
  end
1012
1022
 
1023
+ api_path = '/postgresql/{databaseId}/extensions'
1024
+ .gsub('{databaseId}', database_id)
1025
+
1013
1026
  api_params = {
1014
1027
  name: name,
1015
1028
  }
@@ -1040,18 +1053,18 @@ module Appwrite
1040
1053
  database_id:,
1041
1054
  extension_name:
1042
1055
  )
1043
- api_path = '/postgresql/{databaseId}/extensions/{extensionName}'
1044
- .gsub('{databaseId}', database_id)
1045
- .gsub('{extensionName}', extension_name)
1046
-
1047
- if database_id.nil?
1056
+ if database_id.nil? || database_id == ''
1048
1057
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1049
1058
  end
1050
1059
 
1051
- if extension_name.nil?
1060
+ if extension_name.nil? || extension_name == ''
1052
1061
  raise Appwrite::Exception.new('Missing required parameter: "extensionName"')
1053
1062
  end
1054
1063
 
1064
+ api_path = '/postgresql/{databaseId}/extensions/{extensionName}'
1065
+ .gsub('{databaseId}', database_id)
1066
+ .gsub('{extensionName}', extension_name)
1067
+
1055
1068
  api_params = {}
1056
1069
 
1057
1070
  api_headers = {
@@ -1087,13 +1100,13 @@ module Appwrite
1087
1100
  database_id:,
1088
1101
  target_replica_id: nil
1089
1102
  )
1090
- api_path = '/postgresql/{databaseId}/failovers'
1091
- .gsub('{databaseId}', database_id)
1092
-
1093
- if database_id.nil?
1103
+ if database_id.nil? || database_id == ''
1094
1104
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1095
1105
  end
1096
1106
 
1107
+ api_path = '/postgresql/{databaseId}/failovers'
1108
+ .gsub('{databaseId}', database_id)
1109
+
1097
1110
  api_params = {
1098
1111
  targetReplicaId: target_replica_id,
1099
1112
  }
@@ -1127,10 +1140,7 @@ module Appwrite
1127
1140
  day:,
1128
1141
  hour_utc:
1129
1142
  )
1130
- api_path = '/postgresql/{databaseId}/maintenance'
1131
- .gsub('{databaseId}', database_id)
1132
-
1133
- if database_id.nil?
1143
+ if database_id.nil? || database_id == ''
1134
1144
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1135
1145
  end
1136
1146
 
@@ -1142,6 +1152,9 @@ module Appwrite
1142
1152
  raise Appwrite::Exception.new('Missing required parameter: "hourUtc"')
1143
1153
  end
1144
1154
 
1155
+ api_path = '/postgresql/{databaseId}/maintenance'
1156
+ .gsub('{databaseId}', database_id)
1157
+
1145
1158
  api_params = {
1146
1159
  day: day,
1147
1160
  hourUtc: hour_utc,
@@ -1177,10 +1190,7 @@ module Appwrite
1177
1190
  target_type:,
1178
1191
  specification: nil
1179
1192
  )
1180
- api_path = '/postgresql/{databaseId}/migrations'
1181
- .gsub('{databaseId}', database_id)
1182
-
1183
- if database_id.nil?
1193
+ if database_id.nil? || database_id == ''
1184
1194
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1185
1195
  end
1186
1196
 
@@ -1188,6 +1198,9 @@ module Appwrite
1188
1198
  raise Appwrite::Exception.new('Missing required parameter: "targetType"')
1189
1199
  end
1190
1200
 
1201
+ api_path = '/postgresql/{databaseId}/migrations'
1202
+ .gsub('{databaseId}', database_id)
1203
+
1191
1204
  api_params = {
1192
1205
  targetType: target_type,
1193
1206
  specification: specification,
@@ -1225,13 +1238,13 @@ module Appwrite
1225
1238
  limit: nil,
1226
1239
  offset: nil
1227
1240
  )
1228
- api_path = '/postgresql/{databaseId}/operations'
1229
- .gsub('{databaseId}', database_id)
1230
-
1231
- if database_id.nil?
1241
+ if database_id.nil? || database_id == ''
1232
1242
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1233
1243
  end
1234
1244
 
1245
+ api_path = '/postgresql/{databaseId}/operations'
1246
+ .gsub('{databaseId}', database_id)
1247
+
1235
1248
  api_params = {
1236
1249
  status: status,
1237
1250
  limit: limit,
@@ -1261,13 +1274,13 @@ module Appwrite
1261
1274
  def get_pitr(
1262
1275
  database_id:
1263
1276
  )
1264
- api_path = '/postgresql/{databaseId}/pitr'
1265
- .gsub('{databaseId}', database_id)
1266
-
1267
- if database_id.nil?
1277
+ if database_id.nil? || database_id == ''
1268
1278
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1269
1279
  end
1270
1280
 
1281
+ api_path = '/postgresql/{databaseId}/pitr'
1282
+ .gsub('{databaseId}', database_id)
1283
+
1271
1284
  api_params = {}
1272
1285
 
1273
1286
  api_headers = {
@@ -1293,13 +1306,13 @@ module Appwrite
1293
1306
  def get_pooler(
1294
1307
  database_id:
1295
1308
  )
1296
- api_path = '/postgresql/{databaseId}/pooler'
1297
- .gsub('{databaseId}', database_id)
1298
-
1299
- if database_id.nil?
1309
+ if database_id.nil? || database_id == ''
1300
1310
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1301
1311
  end
1302
1312
 
1313
+ api_path = '/postgresql/{databaseId}/pooler'
1314
+ .gsub('{databaseId}', database_id)
1315
+
1303
1316
  api_params = {}
1304
1317
 
1305
1318
  api_headers = {
@@ -1323,7 +1336,7 @@ module Appwrite
1323
1336
  # @param [String] mode Connection pool mode. Allowed values: transaction, session. Transaction mode returns connections to the pool after each transaction; session mode holds connections for the entire session lifetime.
1324
1337
  # @param [Integer] max_connections Client-connection ceiling the pooler accepts. Supported on MySQL and MariaDB only; the PostgreSQL pooler has no client cap, so set networkMaxConnections on the database instead.
1325
1338
  # @param [Integer] default_pool_size Default pool size per user.
1326
- # @param [] read_write_splitting Route SELECTs to HA replicas, writes and locked reads to the primary. Defaults to true when HA is enabled.
1339
+ # @param [] read_write_splitting Route SELECTs to HA replicas, writes and locked reads to the primary. Off by default, and only takes effect while HA is enabled. Replication is asynchronous, so a read issued immediately after a write may not observe it.
1327
1340
  # @param [String] pooler_cpu_request Pooler sidecar CPU request override (Kubernetes quantity, e.g. "250m" or "1"). Leave null for the proportional default (5% of DB CPU, floor 100m).
1328
1341
  # @param [String] pooler_cpu_limit Pooler sidecar CPU limit override (Kubernetes quantity, e.g. "500m" or "1"). Leave null for the proportional default (10% of DB CPU, floor 200m). Changing this field rolls the database pod.
1329
1342
  # @param [String] pooler_memory_request Pooler sidecar memory request override (Kubernetes quantity, e.g. "128Mi" or "1Gi"). Leave null for the proportional default (7.5% of DB memory, floor 64Mi).
@@ -1341,13 +1354,13 @@ module Appwrite
1341
1354
  pooler_memory_request: nil,
1342
1355
  pooler_memory_limit: nil
1343
1356
  )
1344
- api_path = '/postgresql/{databaseId}/pooler'
1345
- .gsub('{databaseId}', database_id)
1346
-
1347
- if database_id.nil?
1357
+ if database_id.nil? || database_id == ''
1348
1358
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1349
1359
  end
1350
1360
 
1361
+ api_path = '/postgresql/{databaseId}/pooler'
1362
+ .gsub('{databaseId}', database_id)
1363
+
1351
1364
  api_params = {
1352
1365
  mode: mode,
1353
1366
  maxConnections: max_connections,
@@ -1383,13 +1396,13 @@ module Appwrite
1383
1396
  def get_replicas(
1384
1397
  database_id:
1385
1398
  )
1386
- api_path = '/postgresql/{databaseId}/replicas'
1387
- .gsub('{databaseId}', database_id)
1388
-
1389
- if database_id.nil?
1399
+ if database_id.nil? || database_id == ''
1390
1400
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1391
1401
  end
1392
1402
 
1403
+ api_path = '/postgresql/{databaseId}/replicas'
1404
+ .gsub('{databaseId}', database_id)
1405
+
1393
1406
  api_params = {}
1394
1407
 
1395
1408
  api_headers = {
@@ -1423,13 +1436,13 @@ module Appwrite
1423
1436
  limit: nil,
1424
1437
  offset: nil
1425
1438
  )
1426
- api_path = '/postgresql/{databaseId}/restorations'
1427
- .gsub('{databaseId}', database_id)
1428
-
1429
- if database_id.nil?
1439
+ if database_id.nil? || database_id == ''
1430
1440
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1431
1441
  end
1432
1442
 
1443
+ api_path = '/postgresql/{databaseId}/restorations'
1444
+ .gsub('{databaseId}', database_id)
1445
+
1433
1446
  api_params = {
1434
1447
  status: status,
1435
1448
  type: type,
@@ -1456,11 +1469,25 @@ module Appwrite
1456
1469
  # an ISO 8601 datetime. PITR requires the database to have PITR enabled and
1457
1470
  # is only available for enterprise databases.
1458
1471
  #
1472
+ # By default the backup is replayed over the database it was taken from. Pass
1473
+ # `restoreMode` as `clone` to recover it onto a second workload beside this
1474
+ # database instead: this database keeps serving its own data while the clone
1475
+ # is filled, and the switch happens as soon as the clone is ready, on the
1476
+ # endpoint and credentials it already had. Pass `autoPromote` as false to
1477
+ # hold the clone until you promote it yourself. Pass `restoreMode` as `copy`
1478
+ # to recover onto a separate database with its own endpoint, either one you
1479
+ # name with `targetDatabaseId` or one provisioned as a copy of this
1480
+ # database's engine, version, specification and replicas. Neither mode is
1481
+ # available for a point-in-time recovery or an incremental backup.
1482
+ #
1459
1483
  # @param [String] database_id Database ID.
1460
1484
  # @param [String] type Restoration type. Allowed values: backup, pitr. Use "backup" to restore from a specific backup, or "pitr" for point-in-time recovery.
1461
1485
  # @param [String] backup_id Backup ID to restore from (required for backup type).
1462
- # @param [String] target_database_id Existing database ID to restore into. The target must be distinct, ready, and use the same engine and version.
1486
+ # @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.
1463
1487
  # @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.
1488
+ # @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.
1489
+ # @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.
1490
+ # @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.
1464
1491
  #
1465
1492
  # @return [DedicatedDatabaseRestoration]
1466
1493
  def create_restoration(
@@ -1468,20 +1495,26 @@ module Appwrite
1468
1495
  type: nil,
1469
1496
  backup_id: nil,
1470
1497
  target_database_id: nil,
1471
- target_time: nil
1498
+ target_time: nil,
1499
+ restore_mode: nil,
1500
+ target_name: nil,
1501
+ auto_promote: nil
1472
1502
  )
1473
- api_path = '/postgresql/{databaseId}/restorations'
1474
- .gsub('{databaseId}', database_id)
1475
-
1476
- if database_id.nil?
1503
+ if database_id.nil? || database_id == ''
1477
1504
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1478
1505
  end
1479
1506
 
1507
+ api_path = '/postgresql/{databaseId}/restorations'
1508
+ .gsub('{databaseId}', database_id)
1509
+
1480
1510
  api_params = {
1481
1511
  type: type,
1482
1512
  backupId: backup_id,
1483
1513
  targetDatabaseId: target_database_id,
1484
1514
  targetTime: target_time,
1515
+ restoreMode: restore_mode,
1516
+ targetName: target_name,
1517
+ autoPromote: auto_promote,
1485
1518
  }
1486
1519
 
1487
1520
  api_headers = {
@@ -1510,27 +1543,71 @@ module Appwrite
1510
1543
  database_id:,
1511
1544
  restoration_id:
1512
1545
  )
1546
+ if database_id.nil? || database_id == ''
1547
+ raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1548
+ end
1549
+
1550
+ if restoration_id.nil? || restoration_id == ''
1551
+ raise Appwrite::Exception.new('Missing required parameter: "restorationId"')
1552
+ end
1553
+
1513
1554
  api_path = '/postgresql/{databaseId}/restorations/{restorationId}'
1514
1555
  .gsub('{databaseId}', database_id)
1515
1556
  .gsub('{restorationId}', restoration_id)
1516
1557
 
1517
- if database_id.nil?
1558
+ api_params = {}
1559
+
1560
+ api_headers = {
1561
+ "X-Appwrite-Project": @client.get_config('project'),
1562
+ "accept": 'application/json',
1563
+ }
1564
+
1565
+ @client.call(
1566
+ method: 'GET',
1567
+ path: api_path,
1568
+ headers: api_headers,
1569
+ params: api_params,
1570
+ response_type: Models::DedicatedDatabaseRestoration
1571
+ )
1572
+ end
1573
+
1574
+ # Switch the database over to the clone a restoration recovered. The database
1575
+ # keeps
1576
+ # its endpoint and credentials; clients reconnect once. Writes made after the
1577
+ # recovery point are discarded, and the side being replaced is retained
1578
+ # briefly so
1579
+ # the switch can be reversed.
1580
+ #
1581
+ # @param [String] database_id Database ID.
1582
+ # @param [String] restoration_id Restoration ID.
1583
+ #
1584
+ # @return [DedicatedDatabaseRestoration]
1585
+ def promote_restoration(
1586
+ database_id:,
1587
+ restoration_id:
1588
+ )
1589
+ if database_id.nil? || database_id == ''
1518
1590
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1519
1591
  end
1520
1592
 
1521
- if restoration_id.nil?
1593
+ if restoration_id.nil? || restoration_id == ''
1522
1594
  raise Appwrite::Exception.new('Missing required parameter: "restorationId"')
1523
1595
  end
1524
1596
 
1597
+ api_path = '/postgresql/{databaseId}/restorations/{restorationId}/promotions'
1598
+ .gsub('{databaseId}', database_id)
1599
+ .gsub('{restorationId}', restoration_id)
1600
+
1525
1601
  api_params = {}
1526
1602
 
1527
1603
  api_headers = {
1528
1604
  "X-Appwrite-Project": @client.get_config('project'),
1605
+ "content-type": 'application/json',
1529
1606
  "accept": 'application/json',
1530
1607
  }
1531
1608
 
1532
1609
  @client.call(
1533
- method: 'GET',
1610
+ method: 'POST',
1534
1611
  path: api_path,
1535
1612
  headers: api_headers,
1536
1613
  params: api_params,
@@ -1548,13 +1625,13 @@ module Appwrite
1548
1625
  def get_status(
1549
1626
  database_id:
1550
1627
  )
1551
- api_path = '/postgresql/{databaseId}/status'
1552
- .gsub('{databaseId}', database_id)
1553
-
1554
- if database_id.nil?
1628
+ if database_id.nil? || database_id == ''
1555
1629
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1556
1630
  end
1557
1631
 
1632
+ api_path = '/postgresql/{databaseId}/status'
1633
+ .gsub('{databaseId}', database_id)
1634
+
1558
1635
  api_params = {}
1559
1636
 
1560
1637
  api_headers = {
@@ -1582,10 +1659,7 @@ module Appwrite
1582
1659
  database_id:,
1583
1660
  target_version:
1584
1661
  )
1585
- api_path = '/postgresql/{databaseId}/upgrades'
1586
- .gsub('{databaseId}', database_id)
1587
-
1588
- if database_id.nil?
1662
+ if database_id.nil? || database_id == ''
1589
1663
  raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
1590
1664
  end
1591
1665
 
@@ -1593,6 +1667,9 @@ module Appwrite
1593
1667
  raise Appwrite::Exception.new('Missing required parameter: "targetVersion"')
1594
1668
  end
1595
1669
 
1670
+ api_path = '/postgresql/{databaseId}/upgrades'
1671
+ .gsub('{databaseId}', database_id)
1672
+
1596
1673
  api_params = {
1597
1674
  targetVersion: target_version,
1598
1675
  }