appwrite 28.3.2 → 29.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 (397) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appwrite/client.rb +36 -20
  3. data/lib/appwrite/enums/billing_plan_group.rb +2 -1
  4. data/lib/appwrite/enums/build_runtime.rb +2 -0
  5. data/lib/appwrite/enums/databases_index_type.rb +1 -0
  6. data/lib/appwrite/enums/domain_registration_type.rb +10 -0
  7. data/lib/appwrite/enums/domain_transfer_status_enum.rb +14 -0
  8. data/lib/appwrite/enums/execution_trigger.rb +1 -0
  9. data/lib/appwrite/enums/framework.rb +1 -0
  10. data/lib/appwrite/enums/id_token_provider.rb +8 -0
  11. data/lib/appwrite/enums/image_gravity.rb +1 -0
  12. data/lib/appwrite/enums/o_auth2_auth0_prompt.rb +9 -0
  13. data/lib/appwrite/enums/o_auth2_discord_prompt.rb +8 -0
  14. data/lib/appwrite/enums/o_auth2_github_prompt.rb +7 -0
  15. data/lib/appwrite/enums/o_auth2_kakao_prompt.rb +10 -0
  16. data/lib/appwrite/enums/o_auth2_microsoft_prompt.rb +10 -0
  17. data/lib/appwrite/enums/o_auth2_okta_prompt.rb +9 -0
  18. data/lib/appwrite/enums/o_auth2_salesforce_prompt.rb +8 -0
  19. data/lib/appwrite/enums/o_auth2_zoho_prompt.rb +7 -0
  20. data/lib/appwrite/enums/o_auth_provider.rb +3 -0
  21. data/lib/appwrite/enums/project_email_template_id.rb +2 -0
  22. data/lib/appwrite/enums/project_key_scopes.rb +4 -0
  23. data/lib/appwrite/enums/project_o_auth2_auth0_prompt.rb +9 -0
  24. data/lib/appwrite/enums/project_o_auth2_discord_prompt.rb +8 -0
  25. data/lib/appwrite/enums/project_o_auth2_git_hub_prompt.rb +7 -0
  26. data/lib/appwrite/enums/project_o_auth2_kakao_prompt.rb +10 -0
  27. data/lib/appwrite/enums/project_o_auth2_microsoft_prompt.rb +10 -0
  28. data/lib/appwrite/enums/project_o_auth2_okta_prompt.rb +9 -0
  29. data/lib/appwrite/enums/project_o_auth2_salesforce_prompt.rb +8 -0
  30. data/lib/appwrite/enums/project_o_auth2_zoho_prompt.rb +7 -0
  31. data/lib/appwrite/enums/project_o_auth_provider_id.rb +3 -0
  32. data/lib/appwrite/enums/project_policy_id.rb +2 -0
  33. data/lib/appwrite/enums/proxy_rule_deployment_resource_type.rb +1 -0
  34. data/lib/appwrite/enums/proxy_rule_protocol.rb +8 -0
  35. data/lib/appwrite/enums/runtime.rb +2 -0
  36. data/lib/appwrite/enums/tables_db_index_type.rb +1 -0
  37. data/lib/appwrite/enums/waf_rule_action.rb +11 -0
  38. data/lib/appwrite/models/account.rb +143 -0
  39. data/lib/appwrite/models/activity_event.rb +1 -0
  40. data/lib/appwrite/models/activity_event_list.rb +1 -0
  41. data/lib/appwrite/models/additional_resource.rb +1 -0
  42. data/lib/appwrite/models/algo_argon2.rb +1 -0
  43. data/lib/appwrite/models/algo_bcrypt.rb +1 -0
  44. data/lib/appwrite/models/algo_md5.rb +1 -0
  45. data/lib/appwrite/models/algo_phpass.rb +1 -0
  46. data/lib/appwrite/models/algo_scrypt.rb +1 -0
  47. data/lib/appwrite/models/algo_scrypt_modified.rb +1 -0
  48. data/lib/appwrite/models/algo_sha.rb +1 -0
  49. data/lib/appwrite/models/app.rb +1 -0
  50. data/lib/appwrite/models/app_installation.rb +2 -1
  51. data/lib/appwrite/models/app_installation_list.rb +1 -0
  52. data/lib/appwrite/models/app_key.rb +2 -1
  53. data/lib/appwrite/models/app_key_list.rb +1 -0
  54. data/lib/appwrite/models/app_scope.rb +1 -0
  55. data/lib/appwrite/models/app_scope_list.rb +1 -0
  56. data/lib/appwrite/models/app_secret.rb +2 -1
  57. data/lib/appwrite/models/app_secret_list.rb +1 -0
  58. data/lib/appwrite/models/app_secret_plaintext.rb +2 -1
  59. data/lib/appwrite/models/apps_list.rb +1 -0
  60. data/lib/appwrite/models/attribute_bigint.rb +5 -4
  61. data/lib/appwrite/models/attribute_boolean.rb +3 -2
  62. data/lib/appwrite/models/attribute_datetime.rb +3 -2
  63. data/lib/appwrite/models/attribute_email.rb +3 -2
  64. data/lib/appwrite/models/attribute_enum.rb +3 -2
  65. data/lib/appwrite/models/attribute_float.rb +5 -4
  66. data/lib/appwrite/models/attribute_integer.rb +5 -4
  67. data/lib/appwrite/models/attribute_ip.rb +3 -2
  68. data/lib/appwrite/models/attribute_line.rb +3 -2
  69. data/lib/appwrite/models/attribute_list.rb +1 -0
  70. data/lib/appwrite/models/attribute_longtext.rb +4 -3
  71. data/lib/appwrite/models/attribute_mediumtext.rb +4 -3
  72. data/lib/appwrite/models/attribute_object.rb +2 -1
  73. data/lib/appwrite/models/attribute_point.rb +3 -2
  74. data/lib/appwrite/models/attribute_polygon.rb +3 -2
  75. data/lib/appwrite/models/attribute_relationship.rb +2 -1
  76. data/lib/appwrite/models/attribute_string.rb +4 -3
  77. data/lib/appwrite/models/attribute_text.rb +4 -3
  78. data/lib/appwrite/models/attribute_url.rb +3 -2
  79. data/lib/appwrite/models/attribute_varchar.rb +4 -3
  80. data/lib/appwrite/models/attribute_vector.rb +2 -1
  81. data/lib/appwrite/models/backup_archive.rb +5 -4
  82. data/lib/appwrite/models/backup_archive_list.rb +1 -0
  83. data/lib/appwrite/models/backup_policy.rb +3 -2
  84. data/lib/appwrite/models/backup_policy_list.rb +1 -0
  85. data/lib/appwrite/models/backup_restoration.rb +2 -1
  86. data/lib/appwrite/models/backup_restoration_list.rb +1 -0
  87. data/lib/appwrite/models/billing_limits.rb +8 -8
  88. data/lib/appwrite/models/billing_plan.rb +25 -13
  89. data/lib/appwrite/models/billing_plan_addon.rb +2 -2
  90. data/lib/appwrite/models/billing_plan_addon_details.rb +2 -1
  91. data/lib/appwrite/models/billing_plan_dedicated_database_limits.rb +19 -19
  92. data/lib/appwrite/models/billing_plan_limits.rb +2 -2
  93. data/lib/appwrite/models/billing_plan_supported_addons.rb +1 -0
  94. data/lib/appwrite/models/block.rb +4 -33
  95. data/lib/appwrite/models/bucket.rb +1 -0
  96. data/lib/appwrite/models/bucket_list.rb +1 -0
  97. data/lib/appwrite/models/collection.rb +1 -0
  98. data/lib/appwrite/models/collection_list.rb +1 -0
  99. data/lib/appwrite/models/column_bigint.rb +5 -4
  100. data/lib/appwrite/models/column_boolean.rb +3 -2
  101. data/lib/appwrite/models/column_datetime.rb +3 -2
  102. data/lib/appwrite/models/column_email.rb +3 -2
  103. data/lib/appwrite/models/column_enum.rb +3 -2
  104. data/lib/appwrite/models/column_float.rb +5 -4
  105. data/lib/appwrite/models/column_index.rb +2 -1
  106. data/lib/appwrite/models/column_index_list.rb +1 -0
  107. data/lib/appwrite/models/column_integer.rb +5 -4
  108. data/lib/appwrite/models/column_ip.rb +3 -2
  109. data/lib/appwrite/models/column_line.rb +3 -2
  110. data/lib/appwrite/models/column_list.rb +1 -0
  111. data/lib/appwrite/models/column_longtext.rb +4 -3
  112. data/lib/appwrite/models/column_mediumtext.rb +4 -3
  113. data/lib/appwrite/models/column_point.rb +3 -2
  114. data/lib/appwrite/models/column_polygon.rb +3 -2
  115. data/lib/appwrite/models/column_relationship.rb +2 -1
  116. data/lib/appwrite/models/column_string.rb +4 -3
  117. data/lib/appwrite/models/column_text.rb +4 -3
  118. data/lib/appwrite/models/column_url.rb +3 -2
  119. data/lib/appwrite/models/column_varchar.rb +4 -3
  120. data/lib/appwrite/models/continent.rb +1 -0
  121. data/lib/appwrite/models/continent_list.rb +1 -0
  122. data/lib/appwrite/models/country.rb +1 -0
  123. data/lib/appwrite/models/country_list.rb +1 -0
  124. data/lib/appwrite/models/currency.rb +1 -0
  125. data/lib/appwrite/models/currency_list.rb +1 -0
  126. data/lib/appwrite/models/database.rb +10 -9
  127. data/lib/appwrite/models/database_list.rb +1 -0
  128. data/lib/appwrite/models/database_migration.rb +1 -0
  129. data/lib/appwrite/models/database_migration_list.rb +1 -0
  130. data/lib/appwrite/models/database_status.rb +6 -5
  131. data/lib/appwrite/models/database_status_connections.rb +1 -0
  132. data/lib/appwrite/models/database_status_replica.rb +3 -2
  133. data/lib/appwrite/models/database_status_volume.rb +1 -0
  134. data/lib/appwrite/models/dedicated_database.rb +22 -6
  135. data/lib/appwrite/models/dedicated_database_backup.rb +6 -5
  136. data/lib/appwrite/models/dedicated_database_backup_list.rb +1 -0
  137. data/lib/appwrite/models/dedicated_database_backup_storage.rb +1 -0
  138. data/lib/appwrite/models/dedicated_database_branch.rb +2 -1
  139. data/lib/appwrite/models/dedicated_database_branch_list.rb +1 -0
  140. data/lib/appwrite/models/dedicated_database_execution.rb +1 -0
  141. data/lib/appwrite/models/dedicated_database_execution_column.rb +1 -0
  142. data/lib/appwrite/models/dedicated_database_extensions.rb +1 -0
  143. data/lib/appwrite/models/dedicated_database_list.rb +1 -0
  144. data/lib/appwrite/models/dedicated_database_member.rb +3 -2
  145. data/lib/appwrite/models/dedicated_database_operation.rb +4 -3
  146. data/lib/appwrite/models/dedicated_database_operation_list.rb +1 -0
  147. data/lib/appwrite/models/dedicated_database_pitr_windows.rb +1 -0
  148. data/lib/appwrite/models/dedicated_database_pooler.rb +1 -0
  149. data/lib/appwrite/models/dedicated_database_replicas.rb +3 -2
  150. data/lib/appwrite/models/dedicated_database_restoration.rb +11 -5
  151. data/lib/appwrite/models/dedicated_database_restoration_list.rb +1 -0
  152. data/lib/appwrite/models/dedicated_database_specification.rb +21 -0
  153. data/lib/appwrite/models/dedicated_database_specification_list.rb +4 -8
  154. data/lib/appwrite/models/deployment.rb +1 -0
  155. data/lib/appwrite/models/deployment_list.rb +1 -0
  156. data/lib/appwrite/models/dns_record.rb +83 -0
  157. data/lib/appwrite/models/dns_records_list.rb +33 -0
  158. data/lib/appwrite/models/document.rb +1 -0
  159. data/lib/appwrite/models/document_list.rb +1 -0
  160. data/lib/appwrite/models/domain.rb +109 -0
  161. data/lib/appwrite/models/domain_price.rb +63 -0
  162. data/lib/appwrite/models/domain_prices_list.rb +33 -0
  163. data/lib/appwrite/models/domain_transfer_status.rb +59 -0
  164. data/lib/appwrite/models/domains_list.rb +33 -0
  165. data/lib/appwrite/models/email_template.rb +1 -0
  166. data/lib/appwrite/models/email_template_list.rb +1 -0
  167. data/lib/appwrite/models/embedding.rb +1 -0
  168. data/lib/appwrite/models/embedding_list.rb +1 -0
  169. data/lib/appwrite/models/ephemeral_key.rb +1 -0
  170. data/lib/appwrite/models/execution.rb +3 -1
  171. data/lib/appwrite/models/execution_list.rb +1 -0
  172. data/lib/appwrite/models/file.rb +1 -0
  173. data/lib/appwrite/models/file_list.rb +1 -0
  174. data/lib/appwrite/models/framework.rb +1 -0
  175. data/lib/appwrite/models/framework_adapter.rb +2 -1
  176. data/lib/appwrite/models/framework_list.rb +1 -0
  177. data/lib/appwrite/models/function.rb +10 -4
  178. data/lib/appwrite/models/function_list.rb +1 -0
  179. data/lib/appwrite/models/headers.rb +1 -0
  180. data/lib/appwrite/models/identity.rb +9 -3
  181. data/lib/appwrite/models/identity_list.rb +1 -0
  182. data/lib/appwrite/models/index.rb +2 -1
  183. data/lib/appwrite/models/index_list.rb +1 -0
  184. data/lib/appwrite/models/insight.rb +4 -3
  185. data/lib/appwrite/models/insight_cta.rb +1 -0
  186. data/lib/appwrite/models/insight_list.rb +1 -0
  187. data/lib/appwrite/models/jwt.rb +1 -0
  188. data/lib/appwrite/models/key.rb +1 -0
  189. data/lib/appwrite/models/key_list.rb +1 -0
  190. data/lib/appwrite/models/language.rb +1 -0
  191. data/lib/appwrite/models/language_list.rb +1 -0
  192. data/lib/appwrite/models/locale.rb +12 -11
  193. data/lib/appwrite/models/locale_code.rb +1 -0
  194. data/lib/appwrite/models/locale_code_list.rb +1 -0
  195. data/lib/appwrite/models/membership.rb +1 -0
  196. data/lib/appwrite/models/membership_list.rb +1 -0
  197. data/lib/appwrite/models/message.rb +4 -3
  198. data/lib/appwrite/models/message_list.rb +1 -0
  199. data/lib/appwrite/models/mfa_challenge.rb +1 -0
  200. data/lib/appwrite/models/mfa_challenge_secret.rb +1 -0
  201. data/lib/appwrite/models/mfa_factors.rb +1 -0
  202. data/lib/appwrite/models/mfa_recovery_codes.rb +1 -0
  203. data/lib/appwrite/models/mfa_type.rb +1 -0
  204. data/lib/appwrite/models/mock_number.rb +1 -0
  205. data/lib/appwrite/models/mock_number_list.rb +1 -0
  206. data/lib/appwrite/models/o_auth2_amazon.rb +1 -0
  207. data/lib/appwrite/models/o_auth2_apple.rb +14 -3
  208. data/lib/appwrite/models/o_auth2_appwrite.rb +1 -0
  209. data/lib/appwrite/models/o_auth2_auth0.rb +24 -0
  210. data/lib/appwrite/models/o_auth2_authentik.rb +1 -0
  211. data/lib/appwrite/models/o_auth2_autodesk.rb +1 -0
  212. data/lib/appwrite/models/o_auth2_bitbucket.rb +1 -0
  213. data/lib/appwrite/models/o_auth2_bitly.rb +1 -0
  214. data/lib/appwrite/models/o_auth2_box.rb +1 -0
  215. data/lib/appwrite/models/o_auth2_cloudflare.rb +1 -0
  216. data/lib/appwrite/models/o_auth2_dailymotion.rb +1 -0
  217. data/lib/appwrite/models/o_auth2_discord.rb +26 -3
  218. data/lib/appwrite/models/o_auth2_disqus.rb +1 -0
  219. data/lib/appwrite/models/o_auth2_dropbox.rb +1 -0
  220. data/lib/appwrite/models/o_auth2_etsy.rb +1 -0
  221. data/lib/appwrite/models/o_auth2_facebook.rb +1 -0
  222. data/lib/appwrite/models/o_auth2_figma.rb +1 -0
  223. data/lib/appwrite/models/o_auth2_fusion_auth.rb +1 -0
  224. data/lib/appwrite/models/o_auth2_github.rb +25 -3
  225. data/lib/appwrite/models/o_auth2_gitlab.rb +1 -0
  226. data/lib/appwrite/models/o_auth2_google.rb +18 -5
  227. data/lib/appwrite/models/o_auth2_hugging_face.rb +1 -0
  228. data/lib/appwrite/models/o_auth2_kakao.rb +67 -0
  229. data/lib/appwrite/models/o_auth2_keycloak.rb +1 -0
  230. data/lib/appwrite/models/o_auth2_kick.rb +1 -0
  231. data/lib/appwrite/models/o_auth2_linkedin.rb +1 -0
  232. data/lib/appwrite/models/o_auth2_microsoft.rb +25 -0
  233. data/lib/appwrite/models/o_auth2_notion.rb +1 -0
  234. data/lib/appwrite/models/o_auth2_oidc.rb +11 -8
  235. data/lib/appwrite/models/o_auth2_okta.rb +24 -0
  236. data/lib/appwrite/models/o_auth2_paypal.rb +1 -0
  237. data/lib/appwrite/models/o_auth2_podio.rb +1 -0
  238. data/lib/appwrite/models/o_auth2_provider_list.rb +1 -0
  239. data/lib/appwrite/models/o_auth2_resend.rb +1 -0
  240. data/lib/appwrite/models/o_auth2_salesforce.rb +26 -3
  241. data/lib/appwrite/models/o_auth2_slack.rb +1 -0
  242. data/lib/appwrite/models/o_auth2_spotify.rb +1 -0
  243. data/lib/appwrite/models/o_auth2_stripe.rb +1 -0
  244. data/lib/appwrite/models/o_auth2_tik_tok.rb +43 -0
  245. data/lib/appwrite/models/o_auth2_tradeshift.rb +1 -0
  246. data/lib/appwrite/models/o_auth2_twitch.rb +1 -0
  247. data/lib/appwrite/models/o_auth2_webflow.rb +43 -0
  248. data/lib/appwrite/models/o_auth2_word_press.rb +1 -0
  249. data/lib/appwrite/models/o_auth2_x.rb +1 -0
  250. data/lib/appwrite/models/o_auth2_yahoo.rb +1 -0
  251. data/lib/appwrite/models/o_auth2_yandex.rb +1 -0
  252. data/lib/appwrite/models/o_auth2_zoho.rb +25 -3
  253. data/lib/appwrite/models/o_auth2_zoom.rb +1 -0
  254. data/lib/appwrite/models/oauth2_approve.rb +1 -0
  255. data/lib/appwrite/models/oauth2_authorize.rb +1 -0
  256. data/lib/appwrite/models/oauth2_consent.rb +1 -0
  257. data/lib/appwrite/models/oauth2_consent_list.rb +1 -0
  258. data/lib/appwrite/models/oauth2_consent_token.rb +1 -0
  259. data/lib/appwrite/models/oauth2_consent_token_list.rb +1 -0
  260. data/lib/appwrite/models/oauth2_device_authorization.rb +1 -0
  261. data/lib/appwrite/models/oauth2_grant.rb +1 -0
  262. data/lib/appwrite/models/oauth2_introspection.rb +83 -0
  263. data/lib/appwrite/models/oauth2_organization.rb +1 -0
  264. data/lib/appwrite/models/oauth2_organization_list.rb +1 -0
  265. data/lib/appwrite/models/oauth2_par.rb +1 -0
  266. data/lib/appwrite/models/oauth2_project.rb +1 -0
  267. data/lib/appwrite/models/oauth2_project_list.rb +1 -0
  268. data/lib/appwrite/models/oauth2_reject.rb +1 -0
  269. data/lib/appwrite/models/oauth2_token.rb +3 -2
  270. data/lib/appwrite/models/organization.rb +21 -20
  271. data/lib/appwrite/models/passkey.rb +1 -0
  272. data/lib/appwrite/models/passkey_challenge.rb +1 -0
  273. data/lib/appwrite/models/passkey_list.rb +1 -0
  274. data/lib/appwrite/models/phone.rb +1 -0
  275. data/lib/appwrite/models/phone_list.rb +1 -0
  276. data/lib/appwrite/models/platform_android.rb +9 -3
  277. data/lib/appwrite/models/platform_apple.rb +1 -0
  278. data/lib/appwrite/models/platform_linux.rb +1 -0
  279. data/lib/appwrite/models/platform_list.rb +1 -0
  280. data/lib/appwrite/models/platform_web.rb +1 -0
  281. data/lib/appwrite/models/platform_windows.rb +1 -0
  282. data/lib/appwrite/models/policy_deny_aliased_email.rb +1 -0
  283. data/lib/appwrite/models/policy_deny_corporate_email.rb +1 -0
  284. data/lib/appwrite/models/policy_deny_disposable_email.rb +1 -0
  285. data/lib/appwrite/models/policy_deny_free_email.rb +1 -0
  286. data/lib/appwrite/models/policy_list.rb +1 -0
  287. data/lib/appwrite/models/policy_membership_privacy.rb +1 -0
  288. data/lib/appwrite/models/policy_mfa_factors.rb +1 -0
  289. data/lib/appwrite/models/policy_passkey.rb +1 -0
  290. data/lib/appwrite/models/policy_password_dictionary.rb +1 -0
  291. data/lib/appwrite/models/policy_password_history.rb +1 -0
  292. data/lib/appwrite/models/policy_password_personal_data.rb +1 -0
  293. data/lib/appwrite/models/policy_password_pwned.rb +43 -0
  294. data/lib/appwrite/models/policy_password_rotation.rb +38 -0
  295. data/lib/appwrite/models/policy_password_strength.rb +1 -0
  296. data/lib/appwrite/models/policy_session_alert.rb +1 -0
  297. data/lib/appwrite/models/policy_session_duration.rb +1 -0
  298. data/lib/appwrite/models/policy_session_invalidation.rb +1 -0
  299. data/lib/appwrite/models/policy_session_limit.rb +1 -0
  300. data/lib/appwrite/models/policy_user_limit.rb +1 -0
  301. data/lib/appwrite/models/postgres_extension.rb +1 -0
  302. data/lib/appwrite/models/presence.rb +4 -3
  303. data/lib/appwrite/models/presence_list.rb +1 -0
  304. data/lib/appwrite/models/program.rb +1 -0
  305. data/lib/appwrite/models/project.rb +35 -24
  306. data/lib/appwrite/models/project_auth_method.rb +1 -0
  307. data/lib/appwrite/models/project_list.rb +1 -0
  308. data/lib/appwrite/models/project_protocol.rb +1 -0
  309. data/lib/appwrite/models/project_service.rb +1 -0
  310. data/lib/appwrite/models/provider.rb +2 -1
  311. data/lib/appwrite/models/provider_list.rb +1 -0
  312. data/lib/appwrite/models/proxy_invalidation.rb +1 -0
  313. data/lib/appwrite/models/proxy_rule.rb +24 -4
  314. data/lib/appwrite/models/proxy_rule_list.rb +1 -0
  315. data/lib/appwrite/models/report.rb +2 -1
  316. data/lib/appwrite/models/report_list.rb +1 -0
  317. data/lib/appwrite/models/resource_token.rb +1 -0
  318. data/lib/appwrite/models/resource_token_list.rb +1 -0
  319. data/lib/appwrite/models/row.rb +1 -0
  320. data/lib/appwrite/models/row_list.rb +1 -0
  321. data/lib/appwrite/models/runtime.rb +1 -0
  322. data/lib/appwrite/models/runtime_list.rb +1 -0
  323. data/lib/appwrite/models/session.rb +1 -0
  324. data/lib/appwrite/models/session_list.rb +1 -0
  325. data/lib/appwrite/models/site.rb +1 -0
  326. data/lib/appwrite/models/site_list.rb +1 -0
  327. data/lib/appwrite/models/specification.rb +1 -0
  328. data/lib/appwrite/models/specification_list.rb +1 -0
  329. data/lib/appwrite/models/subscriber.rb +1 -0
  330. data/lib/appwrite/models/subscriber_list.rb +1 -0
  331. data/lib/appwrite/models/table.rb +1 -0
  332. data/lib/appwrite/models/table_list.rb +1 -0
  333. data/lib/appwrite/models/target.rb +2 -1
  334. data/lib/appwrite/models/target_list.rb +1 -0
  335. data/lib/appwrite/models/team.rb +1 -0
  336. data/lib/appwrite/models/team_list.rb +1 -0
  337. data/lib/appwrite/models/token.rb +1 -0
  338. data/lib/appwrite/models/token_secret.rb +1 -0
  339. data/lib/appwrite/models/topic.rb +14 -3
  340. data/lib/appwrite/models/topic_list.rb +1 -0
  341. data/lib/appwrite/models/transaction.rb +1 -0
  342. data/lib/appwrite/models/transaction_list.rb +1 -0
  343. data/lib/appwrite/models/usage_billing_plan.rb +27 -27
  344. data/lib/appwrite/models/user.rb +16 -10
  345. data/lib/appwrite/models/user_list.rb +1 -0
  346. data/lib/appwrite/models/variable.rb +1 -0
  347. data/lib/appwrite/models/variable_list.rb +1 -0
  348. data/lib/appwrite/models/vectorsdb_collection.rb +1 -0
  349. data/lib/appwrite/models/vectorsdb_collection_list.rb +1 -0
  350. data/lib/appwrite/models/waf_rule_bypass.rb +111 -0
  351. data/lib/appwrite/models/waf_rule_challenge.rb +126 -0
  352. data/lib/appwrite/models/waf_rule_deny.rb +111 -0
  353. data/lib/appwrite/models/{log_list.rb → waf_rule_list.rb} +8 -7
  354. data/lib/appwrite/models/waf_rule_rate_limit.rb +136 -0
  355. data/lib/appwrite/models/waf_rule_redirect.rb +121 -0
  356. data/lib/appwrite/models/webhook.rb +1 -0
  357. data/lib/appwrite/models/webhook_list.rb +1 -0
  358. data/lib/appwrite/query/builder.rb +361 -0
  359. data/lib/appwrite/query.rb +190 -0
  360. data/lib/appwrite/services/account.rb +409 -133
  361. data/lib/appwrite/services/activities.rb +4 -4
  362. data/lib/appwrite/services/advisor.rb +19 -18
  363. data/lib/appwrite/services/apps.rb +89 -89
  364. data/lib/appwrite/services/avatars.rb +92 -21
  365. data/lib/appwrite/services/backups.rb +30 -30
  366. data/lib/appwrite/services/databases.rb +504 -453
  367. data/lib/appwrite/services/documents_db.rb +199 -191
  368. data/lib/appwrite/services/domains.rb +2318 -0
  369. data/lib/appwrite/services/embeddings.rb +2 -2
  370. data/lib/appwrite/services/functions.rb +128 -112
  371. data/lib/appwrite/services/graphql.rb +4 -4
  372. data/lib/appwrite/services/locale.rb +49 -14
  373. data/lib/appwrite/services/messaging.rb +281 -153
  374. data/lib/appwrite/services/mongo.rb +194 -130
  375. data/lib/appwrite/services/mysql.rb +212 -144
  376. data/lib/appwrite/services/oauth2.rb +72 -27
  377. data/lib/appwrite/services/organization.rb +255 -221
  378. data/lib/appwrite/services/postgresql.rb +226 -158
  379. data/lib/appwrite/services/presences.rb +17 -16
  380. data/lib/appwrite/services/project.rb +588 -157
  381. data/lib/appwrite/services/proxy.rb +70 -23
  382. data/lib/appwrite/services/sites.rb +119 -107
  383. data/lib/appwrite/services/storage.rb +62 -59
  384. data/lib/appwrite/services/tables_db.rb +617 -558
  385. data/lib/appwrite/services/teams.rb +87 -82
  386. data/lib/appwrite/services/tokens.rb +25 -24
  387. data/lib/appwrite/services/users.rb +170 -199
  388. data/lib/appwrite/services/vectors_db.rb +185 -177
  389. data/lib/appwrite/services/waf.rb +859 -0
  390. data/lib/appwrite/services/webhooks.rb +23 -22
  391. data/lib/appwrite/topic.rb +53 -0
  392. data/lib/appwrite.rb +48 -9
  393. metadata +47 -7
  394. data/lib/appwrite/enums/organization_key_scopes.rb +0 -22
  395. data/lib/appwrite/models/dedicated_database_specification_pricing.rb +0 -42
  396. data/lib/appwrite/models/dev_key.rb +0 -62
  397. data/lib/appwrite/models/log.rb +0 -132
@@ -47,7 +47,7 @@ module Appwrite
47
47
  #
48
48
  # @param [String] team_id Team ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars.
49
49
  # @param [String] name Team name. Max length: 128 chars.
50
- # @param [Array] roles Array of strings. Use this param to set the roles in the team for the user who created it. The default role is **owner**. A role can be any string. Learn more about [roles and permissions](https://appwrite.io/docs/permissions). Maximum of 100 roles are allowed, each 32 characters long.
50
+ # @param [Array] roles Array of strings. Use this param to set the roles in the team for the user who created it. The default role is **owner**. A role can be any string. Learn more about [roles and permissions](https://appwrite.io/docs/permissions). Maximum of 100 roles are allowed, each 81 characters long.
51
51
  #
52
52
  # @return [Team]
53
53
  def create(
@@ -55,8 +55,6 @@ module Appwrite
55
55
  name:,
56
56
  roles: nil
57
57
  )
58
- api_path = '/teams'
59
-
60
58
  if team_id.nil?
61
59
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
62
60
  end
@@ -65,6 +63,8 @@ module Appwrite
65
63
  raise Appwrite::Exception.new('Missing required parameter: "name"')
66
64
  end
67
65
 
66
+ api_path = '/teams'
67
+
68
68
  api_params = {
69
69
  teamId: team_id,
70
70
  name: name,
@@ -94,13 +94,13 @@ module Appwrite
94
94
  def get(
95
95
  team_id:
96
96
  )
97
- api_path = '/teams/{teamId}'
98
- .gsub('{teamId}', team_id)
99
-
100
- if team_id.nil?
97
+ if team_id.nil? || team_id == ''
101
98
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
102
99
  end
103
100
 
101
+ api_path = '/teams/{teamId}'
102
+ .gsub('{teamId}', team_id)
103
+
104
104
  api_params = {}
105
105
 
106
106
  api_headers = {
@@ -127,10 +127,7 @@ module Appwrite
127
127
  team_id:,
128
128
  name:
129
129
  )
130
- api_path = '/teams/{teamId}'
131
- .gsub('{teamId}', team_id)
132
-
133
- if team_id.nil?
130
+ if team_id.nil? || team_id == ''
134
131
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
135
132
  end
136
133
 
@@ -138,6 +135,9 @@ module Appwrite
138
135
  raise Appwrite::Exception.new('Missing required parameter: "name"')
139
136
  end
140
137
 
138
+ api_path = '/teams/{teamId}'
139
+ .gsub('{teamId}', team_id)
140
+
141
141
  api_params = {
142
142
  name: name,
143
143
  }
@@ -166,18 +166,19 @@ module Appwrite
166
166
  def delete(
167
167
  team_id:
168
168
  )
169
- api_path = '/teams/{teamId}'
170
- .gsub('{teamId}', team_id)
171
-
172
- if team_id.nil?
169
+ if team_id.nil? || team_id == ''
173
170
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
174
171
  end
175
172
 
173
+ api_path = '/teams/{teamId}'
174
+ .gsub('{teamId}', team_id)
175
+
176
176
  api_params = {}
177
177
 
178
178
  api_headers = {
179
179
  "X-Appwrite-Project": @client.get_config('project'),
180
180
  "content-type": 'application/json',
181
+ "accept": 'application/json',
181
182
  }
182
183
 
183
184
  @client.call(
@@ -200,13 +201,13 @@ module Appwrite
200
201
  queries: nil,
201
202
  total: nil
202
203
  )
203
- api_path = '/teams/{teamId}/installations'
204
- .gsub('{teamId}', team_id)
205
-
206
- if team_id.nil?
204
+ if team_id.nil? || team_id == ''
207
205
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
208
206
  end
209
207
 
208
+ api_path = '/teams/{teamId}/installations'
209
+ .gsub('{teamId}', team_id)
210
+
210
211
  api_params = {
211
212
  queries: queries,
212
213
  total: total,
@@ -241,10 +242,7 @@ module Appwrite
241
242
  app_id:,
242
243
  authorization_details: nil
243
244
  )
244
- api_path = '/teams/{teamId}/installations'
245
- .gsub('{teamId}', team_id)
246
-
247
- if team_id.nil?
245
+ if team_id.nil? || team_id == ''
248
246
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
249
247
  end
250
248
 
@@ -252,6 +250,9 @@ module Appwrite
252
250
  raise Appwrite::Exception.new('Missing required parameter: "appId"')
253
251
  end
254
252
 
253
+ api_path = '/teams/{teamId}/installations'
254
+ .gsub('{teamId}', team_id)
255
+
255
256
  api_params = {
256
257
  appId: app_id,
257
258
  authorizationDetails: authorization_details,
@@ -283,18 +284,18 @@ module Appwrite
283
284
  team_id:,
284
285
  installation_id:
285
286
  )
286
- api_path = '/teams/{teamId}/installations/{installationId}'
287
- .gsub('{teamId}', team_id)
288
- .gsub('{installationId}', installation_id)
289
-
290
- if team_id.nil?
287
+ if team_id.nil? || team_id == ''
291
288
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
292
289
  end
293
290
 
294
- if installation_id.nil?
291
+ if installation_id.nil? || installation_id == ''
295
292
  raise Appwrite::Exception.new('Missing required parameter: "installationId"')
296
293
  end
297
294
 
295
+ api_path = '/teams/{teamId}/installations/{installationId}'
296
+ .gsub('{teamId}', team_id)
297
+ .gsub('{installationId}', installation_id)
298
+
298
299
  api_params = {}
299
300
 
300
301
  api_headers = {
@@ -326,18 +327,18 @@ module Appwrite
326
327
  installation_id:,
327
328
  authorization_details: nil
328
329
  )
329
- api_path = '/teams/{teamId}/installations/{installationId}'
330
- .gsub('{teamId}', team_id)
331
- .gsub('{installationId}', installation_id)
332
-
333
- if team_id.nil?
330
+ if team_id.nil? || team_id == ''
334
331
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
335
332
  end
336
333
 
337
- if installation_id.nil?
334
+ if installation_id.nil? || installation_id == ''
338
335
  raise Appwrite::Exception.new('Missing required parameter: "installationId"')
339
336
  end
340
337
 
338
+ api_path = '/teams/{teamId}/installations/{installationId}'
339
+ .gsub('{teamId}', team_id)
340
+ .gsub('{installationId}', installation_id)
341
+
341
342
  api_params = {
342
343
  authorizationDetails: authorization_details,
343
344
  }
@@ -369,18 +370,18 @@ module Appwrite
369
370
  team_id:,
370
371
  installation_id:
371
372
  )
372
- api_path = '/teams/{teamId}/installations/{installationId}'
373
- .gsub('{teamId}', team_id)
374
- .gsub('{installationId}', installation_id)
375
-
376
- if team_id.nil?
373
+ if team_id.nil? || team_id == ''
377
374
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
378
375
  end
379
376
 
380
- if installation_id.nil?
377
+ if installation_id.nil? || installation_id == ''
381
378
  raise Appwrite::Exception.new('Missing required parameter: "installationId"')
382
379
  end
383
380
 
381
+ api_path = '/teams/{teamId}/installations/{installationId}'
382
+ .gsub('{teamId}', team_id)
383
+ .gsub('{installationId}', installation_id)
384
+
384
385
  api_params = {}
385
386
 
386
387
  api_headers = {
@@ -413,13 +414,13 @@ module Appwrite
413
414
  search: nil,
414
415
  total: nil
415
416
  )
416
- api_path = '/teams/{teamId}/memberships'
417
- .gsub('{teamId}', team_id)
418
-
419
- if team_id.nil?
417
+ if team_id.nil? || team_id == ''
420
418
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
421
419
  end
422
420
 
421
+ api_path = '/teams/{teamId}/memberships'
422
+ .gsub('{teamId}', team_id)
423
+
423
424
  api_params = {
424
425
  queries: queries,
425
426
  search: search,
@@ -469,6 +470,7 @@ module Appwrite
469
470
  # @param [String] phone Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.
470
471
  # @param [String] url URL to redirect the user back to your app from the invitation email. This parameter is not required when an API key is supplied. Only URLs from hostnames in your project platform list are allowed. This requirement helps to prevent an [open redirect](https://cheatsheetseries.owasp.org/cheatsheets/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.html) attack against your project API.
471
472
  # @param [String] name Name of the new team member. Max length: 128 chars.
473
+ # @param [String] membership_id Membership ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars.
472
474
  #
473
475
  # @return [Membership]
474
476
  def create_membership(
@@ -478,12 +480,10 @@ module Appwrite
478
480
  user_id: nil,
479
481
  phone: nil,
480
482
  url: nil,
481
- name: nil
483
+ name: nil,
484
+ membership_id: nil
482
485
  )
483
- api_path = '/teams/{teamId}/memberships'
484
- .gsub('{teamId}', team_id)
485
-
486
- if team_id.nil?
486
+ if team_id.nil? || team_id == ''
487
487
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
488
488
  end
489
489
 
@@ -491,6 +491,9 @@ module Appwrite
491
491
  raise Appwrite::Exception.new('Missing required parameter: "roles"')
492
492
  end
493
493
 
494
+ api_path = '/teams/{teamId}/memberships'
495
+ .gsub('{teamId}', team_id)
496
+
494
497
  api_params = {
495
498
  email: email,
496
499
  userId: user_id,
@@ -498,6 +501,7 @@ module Appwrite
498
501
  roles: roles,
499
502
  url: url,
500
503
  name: name,
504
+ membershipId: membership_id,
501
505
  }
502
506
 
503
507
  api_headers = {
@@ -527,18 +531,18 @@ module Appwrite
527
531
  team_id:,
528
532
  membership_id:
529
533
  )
530
- api_path = '/teams/{teamId}/memberships/{membershipId}'
531
- .gsub('{teamId}', team_id)
532
- .gsub('{membershipId}', membership_id)
533
-
534
- if team_id.nil?
534
+ if team_id.nil? || team_id == ''
535
535
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
536
536
  end
537
537
 
538
- if membership_id.nil?
538
+ if membership_id.nil? || membership_id == ''
539
539
  raise Appwrite::Exception.new('Missing required parameter: "membershipId"')
540
540
  end
541
541
 
542
+ api_path = '/teams/{teamId}/memberships/{membershipId}'
543
+ .gsub('{teamId}', team_id)
544
+ .gsub('{membershipId}', membership_id)
545
+
542
546
  api_params = {}
543
547
 
544
548
  api_headers = {
@@ -570,15 +574,11 @@ module Appwrite
570
574
  membership_id:,
571
575
  roles:
572
576
  )
573
- api_path = '/teams/{teamId}/memberships/{membershipId}'
574
- .gsub('{teamId}', team_id)
575
- .gsub('{membershipId}', membership_id)
576
-
577
- if team_id.nil?
577
+ if team_id.nil? || team_id == ''
578
578
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
579
579
  end
580
580
 
581
- if membership_id.nil?
581
+ if membership_id.nil? || membership_id == ''
582
582
  raise Appwrite::Exception.new('Missing required parameter: "membershipId"')
583
583
  end
584
584
 
@@ -586,6 +586,10 @@ module Appwrite
586
586
  raise Appwrite::Exception.new('Missing required parameter: "roles"')
587
587
  end
588
588
 
589
+ api_path = '/teams/{teamId}/memberships/{membershipId}'
590
+ .gsub('{teamId}', team_id)
591
+ .gsub('{membershipId}', membership_id)
592
+
589
593
  api_params = {
590
594
  roles: roles,
591
595
  }
@@ -617,23 +621,24 @@ module Appwrite
617
621
  team_id:,
618
622
  membership_id:
619
623
  )
620
- api_path = '/teams/{teamId}/memberships/{membershipId}'
621
- .gsub('{teamId}', team_id)
622
- .gsub('{membershipId}', membership_id)
623
-
624
- if team_id.nil?
624
+ if team_id.nil? || team_id == ''
625
625
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
626
626
  end
627
627
 
628
- if membership_id.nil?
628
+ if membership_id.nil? || membership_id == ''
629
629
  raise Appwrite::Exception.new('Missing required parameter: "membershipId"')
630
630
  end
631
631
 
632
+ api_path = '/teams/{teamId}/memberships/{membershipId}'
633
+ .gsub('{teamId}', team_id)
634
+ .gsub('{membershipId}', membership_id)
635
+
632
636
  api_params = {}
633
637
 
634
638
  api_headers = {
635
639
  "X-Appwrite-Project": @client.get_config('project'),
636
640
  "content-type": 'application/json',
641
+ "accept": 'application/json',
637
642
  }
638
643
 
639
644
  @client.call(
@@ -664,15 +669,11 @@ module Appwrite
664
669
  user_id:,
665
670
  secret:
666
671
  )
667
- api_path = '/teams/{teamId}/memberships/{membershipId}/status'
668
- .gsub('{teamId}', team_id)
669
- .gsub('{membershipId}', membership_id)
670
-
671
- if team_id.nil?
672
+ if team_id.nil? || team_id == ''
672
673
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
673
674
  end
674
675
 
675
- if membership_id.nil?
676
+ if membership_id.nil? || membership_id == ''
676
677
  raise Appwrite::Exception.new('Missing required parameter: "membershipId"')
677
678
  end
678
679
 
@@ -684,6 +685,10 @@ module Appwrite
684
685
  raise Appwrite::Exception.new('Missing required parameter: "secret"')
685
686
  end
686
687
 
688
+ api_path = '/teams/{teamId}/memberships/{membershipId}/status'
689
+ .gsub('{teamId}', team_id)
690
+ .gsub('{membershipId}', membership_id)
691
+
687
692
  api_params = {
688
693
  userId: user_id,
689
694
  secret: secret,
@@ -714,13 +719,13 @@ module Appwrite
714
719
  def get_prefs(
715
720
  team_id:
716
721
  )
717
- api_path = '/teams/{teamId}/prefs'
718
- .gsub('{teamId}', team_id)
719
-
720
- if team_id.nil?
722
+ if team_id.nil? || team_id == ''
721
723
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
722
724
  end
723
725
 
726
+ api_path = '/teams/{teamId}/prefs'
727
+ .gsub('{teamId}', team_id)
728
+
724
729
  api_params = {}
725
730
 
726
731
  api_headers = {
@@ -749,10 +754,7 @@ module Appwrite
749
754
  team_id:,
750
755
  prefs:
751
756
  )
752
- api_path = '/teams/{teamId}/prefs'
753
- .gsub('{teamId}', team_id)
754
-
755
- if team_id.nil?
757
+ if team_id.nil? || team_id == ''
756
758
  raise Appwrite::Exception.new('Missing required parameter: "teamId"')
757
759
  end
758
760
 
@@ -760,6 +762,9 @@ module Appwrite
760
762
  raise Appwrite::Exception.new('Missing required parameter: "prefs"')
761
763
  end
762
764
 
765
+ api_path = '/teams/{teamId}/prefs'
766
+ .gsub('{teamId}', team_id)
767
+
763
768
  api_params = {
764
769
  prefs: prefs,
765
770
  }
@@ -21,18 +21,18 @@ module Appwrite
21
21
  queries: nil,
22
22
  total: nil
23
23
  )
24
- api_path = '/tokens/buckets/{bucketId}/files/{fileId}'
25
- .gsub('{bucketId}', bucket_id)
26
- .gsub('{fileId}', file_id)
27
-
28
- if bucket_id.nil?
24
+ if bucket_id.nil? || bucket_id == ''
29
25
  raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
30
26
  end
31
27
 
32
- if file_id.nil?
28
+ if file_id.nil? || file_id == ''
33
29
  raise Appwrite::Exception.new('Missing required parameter: "fileId"')
34
30
  end
35
31
 
32
+ api_path = '/tokens/buckets/{bucketId}/files/{fileId}'
33
+ .gsub('{bucketId}', bucket_id)
34
+ .gsub('{fileId}', file_id)
35
+
36
36
  api_params = {
37
37
  queries: queries,
38
38
  total: total,
@@ -65,18 +65,18 @@ module Appwrite
65
65
  file_id:,
66
66
  expire: nil
67
67
  )
68
- api_path = '/tokens/buckets/{bucketId}/files/{fileId}'
69
- .gsub('{bucketId}', bucket_id)
70
- .gsub('{fileId}', file_id)
71
-
72
- if bucket_id.nil?
68
+ if bucket_id.nil? || bucket_id == ''
73
69
  raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
74
70
  end
75
71
 
76
- if file_id.nil?
72
+ if file_id.nil? || file_id == ''
77
73
  raise Appwrite::Exception.new('Missing required parameter: "fileId"')
78
74
  end
79
75
 
76
+ api_path = '/tokens/buckets/{bucketId}/files/{fileId}'
77
+ .gsub('{bucketId}', bucket_id)
78
+ .gsub('{fileId}', file_id)
79
+
80
80
  api_params = {
81
81
  expire: expire,
82
82
  }
@@ -104,13 +104,13 @@ module Appwrite
104
104
  def get(
105
105
  token_id:
106
106
  )
107
- api_path = '/tokens/{tokenId}'
108
- .gsub('{tokenId}', token_id)
109
-
110
- if token_id.nil?
107
+ if token_id.nil? || token_id == ''
111
108
  raise Appwrite::Exception.new('Missing required parameter: "tokenId"')
112
109
  end
113
110
 
111
+ api_path = '/tokens/{tokenId}'
112
+ .gsub('{tokenId}', token_id)
113
+
114
114
  api_params = {}
115
115
 
116
116
  api_headers = {
@@ -138,13 +138,13 @@ module Appwrite
138
138
  token_id:,
139
139
  expire: nil
140
140
  )
141
- api_path = '/tokens/{tokenId}'
142
- .gsub('{tokenId}', token_id)
143
-
144
- if token_id.nil?
141
+ if token_id.nil? || token_id == ''
145
142
  raise Appwrite::Exception.new('Missing required parameter: "tokenId"')
146
143
  end
147
144
 
145
+ api_path = '/tokens/{tokenId}'
146
+ .gsub('{tokenId}', token_id)
147
+
148
148
  api_params = {
149
149
  expire: expire,
150
150
  }
@@ -172,18 +172,19 @@ module Appwrite
172
172
  def delete(
173
173
  token_id:
174
174
  )
175
- api_path = '/tokens/{tokenId}'
176
- .gsub('{tokenId}', token_id)
177
-
178
- if token_id.nil?
175
+ if token_id.nil? || token_id == ''
179
176
  raise Appwrite::Exception.new('Missing required parameter: "tokenId"')
180
177
  end
181
178
 
179
+ api_path = '/tokens/{tokenId}'
180
+ .gsub('{tokenId}', token_id)
181
+
182
182
  api_params = {}
183
183
 
184
184
  api_headers = {
185
185
  "X-Appwrite-Project": @client.get_config('project'),
186
186
  "content-type": 'application/json',
187
+ "accept": 'application/json',
187
188
  }
188
189
 
189
190
  @client.call(