appwrite 25.0.0 → 26.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 (74) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appwrite/client.rb +36 -6
  3. data/lib/appwrite/enums/billing_plan_group.rb +9 -0
  4. data/lib/appwrite/enums/database_status.rb +9 -0
  5. data/lib/appwrite/enums/o_auth2_oidc_prompt.rb +10 -0
  6. data/lib/appwrite/enums/o_auth_provider.rb +1 -0
  7. data/lib/appwrite/enums/organization_key_scopes.rb +4 -0
  8. data/lib/appwrite/enums/project_key_scopes.rb +9 -2
  9. data/lib/appwrite/enums/project_o_auth2_oidc_prompt.rb +10 -0
  10. data/lib/appwrite/enums/project_o_auth_provider_id.rb +1 -0
  11. data/lib/appwrite/enums/project_policy_id.rb +2 -0
  12. data/lib/appwrite/enums/project_service_id.rb +1 -0
  13. data/lib/appwrite/models/activity_event.rb +3 -73
  14. data/lib/appwrite/models/additional_resource.rb +52 -0
  15. data/lib/appwrite/models/backup_policy.rb +5 -0
  16. data/lib/appwrite/models/billing_plan.rb +379 -0
  17. data/lib/appwrite/models/billing_plan_addon.rb +32 -0
  18. data/lib/appwrite/models/billing_plan_addon_details.rb +62 -0
  19. data/lib/appwrite/models/billing_plan_dedicated_database_limits.rb +117 -0
  20. data/lib/appwrite/models/billing_plan_limits.rb +32 -0
  21. data/lib/appwrite/models/billing_plan_supported_addons.rb +37 -0
  22. data/lib/appwrite/models/block.rb +5 -0
  23. data/lib/appwrite/models/database.rb +19 -0
  24. data/lib/appwrite/models/locale.rb +58 -3
  25. data/lib/appwrite/models/membership.rb +5 -0
  26. data/lib/appwrite/models/o_auth2_appwrite.rb +42 -0
  27. data/lib/appwrite/models/o_auth2_oidc.rb +13 -3
  28. data/lib/appwrite/models/organization.rb +197 -0
  29. data/lib/appwrite/models/policy_deny_corporate_email.rb +32 -0
  30. data/lib/appwrite/models/policy_membership_privacy.rb +8 -3
  31. data/lib/appwrite/models/policy_password_strength.rb +52 -0
  32. data/lib/appwrite/models/program.rb +67 -0
  33. data/lib/appwrite/models/project.rb +93 -13
  34. data/lib/appwrite/models/usage_billing_plan.rb +77 -0
  35. data/lib/appwrite/models/user.rb +25 -0
  36. data/lib/appwrite/query.rb +13 -1
  37. data/lib/appwrite/services/account.rb +88 -2
  38. data/lib/appwrite/services/activities.rb +4 -0
  39. data/lib/appwrite/services/advisor.rb +9 -0
  40. data/lib/appwrite/services/avatars.rb +16 -0
  41. data/lib/appwrite/services/backups.rb +37 -1
  42. data/lib/appwrite/services/databases.rb +178 -0
  43. data/lib/appwrite/services/functions.rb +56 -4
  44. data/lib/appwrite/services/graphql.rb +4 -0
  45. data/lib/appwrite/services/locale.rb +16 -0
  46. data/lib/appwrite/services/messaging.rb +188 -132
  47. data/lib/appwrite/services/organization.rb +278 -3
  48. data/lib/appwrite/services/presences.rb +9 -0
  49. data/lib/appwrite/services/project.rb +417 -49
  50. data/lib/appwrite/services/proxy.rb +15 -0
  51. data/lib/appwrite/services/sites.rb +50 -1
  52. data/lib/appwrite/services/storage.rb +24 -0
  53. data/lib/appwrite/services/tables_db.rb +139 -1
  54. data/lib/appwrite/services/teams.rb +24 -0
  55. data/lib/appwrite/services/tokens.rb +9 -0
  56. data/lib/appwrite/services/users.rb +81 -1
  57. data/lib/appwrite/services/webhooks.rb +11 -0
  58. data/lib/appwrite.rb +17 -15
  59. metadata +19 -17
  60. data/lib/appwrite/enums/health_antivirus_status.rb +0 -9
  61. data/lib/appwrite/enums/health_check_status.rb +0 -8
  62. data/lib/appwrite/enums/health_queue_name.rb +0 -19
  63. data/lib/appwrite/models/health_antivirus.rb +0 -49
  64. data/lib/appwrite/models/health_certificate.rb +0 -52
  65. data/lib/appwrite/models/health_queue.rb +0 -27
  66. data/lib/appwrite/models/health_status.rb +0 -53
  67. data/lib/appwrite/models/health_status_list.rb +0 -32
  68. data/lib/appwrite/models/health_time.rb +0 -37
  69. data/lib/appwrite/models/usage_event.rb +0 -72
  70. data/lib/appwrite/models/usage_event_list.rb +0 -32
  71. data/lib/appwrite/models/usage_gauge.rb +0 -47
  72. data/lib/appwrite/models/usage_gauge_list.rb +0 -32
  73. data/lib/appwrite/services/health.rb +0 -630
  74. data/lib/appwrite/services/usage.rb +0 -86
@@ -20,6 +20,8 @@ module Appwrite
20
20
  }
21
21
 
22
22
  api_headers = {
23
+ "X-Appwrite-Project": @client.get_config('project'),
24
+ "accept": 'application/json',
23
25
  }
24
26
 
25
27
  @client.call(
@@ -51,7 +53,9 @@ module Appwrite
51
53
  }
52
54
 
53
55
  api_headers = {
56
+ "X-Appwrite-Project": @client.get_config('project'),
54
57
  "content-type": 'application/json',
58
+ "accept": 'application/json',
55
59
  }
56
60
 
57
61
  @client.call(
@@ -81,6 +85,8 @@ module Appwrite
81
85
  }
82
86
 
83
87
  api_headers = {
88
+ "X-Appwrite-Project": @client.get_config('project'),
89
+ "accept": 'application/json',
84
90
  }
85
91
 
86
92
  @client.call(
@@ -110,7 +116,9 @@ module Appwrite
110
116
  }
111
117
 
112
118
  api_headers = {
119
+ "X-Appwrite-Project": @client.get_config('project'),
113
120
  "content-type": 'application/json',
121
+ "accept": 'application/json',
114
122
  }
115
123
 
116
124
  @client.call(
@@ -135,6 +143,8 @@ module Appwrite
135
143
  }
136
144
 
137
145
  api_headers = {
146
+ "X-Appwrite-Project": @client.get_config('project'),
147
+ "accept": 'application/json',
138
148
  }
139
149
 
140
150
  @client.call(
@@ -188,7 +198,9 @@ module Appwrite
188
198
  }
189
199
 
190
200
  api_headers = {
201
+ "X-Appwrite-Project": @client.get_config('project'),
191
202
  "content-type": 'application/json',
203
+ "accept": 'application/json',
192
204
  }
193
205
 
194
206
  @client.call(
@@ -218,6 +230,8 @@ module Appwrite
218
230
  }
219
231
 
220
232
  api_headers = {
233
+ "X-Appwrite-Project": @client.get_config('project'),
234
+ "accept": 'application/json',
221
235
  }
222
236
 
223
237
  @client.call(
@@ -255,7 +269,9 @@ module Appwrite
255
269
  }
256
270
 
257
271
  api_headers = {
272
+ "X-Appwrite-Project": @client.get_config('project'),
258
273
  "content-type": 'application/json',
274
+ "accept": 'application/json',
259
275
  }
260
276
 
261
277
  @client.call(
@@ -285,7 +301,9 @@ module Appwrite
285
301
  }
286
302
 
287
303
  api_headers = {
304
+ "X-Appwrite-Project": @client.get_config('project'),
288
305
  "content-type": 'application/json',
306
+ "accept": 'application/json',
289
307
  }
290
308
 
291
309
  @client.call(
@@ -298,14 +316,25 @@ module Appwrite
298
316
  end
299
317
 
300
318
  # Create and trigger a new restoration for a backup on a project.
319
+ #
320
+ # When restoring a DocumentsDB or VectorsDB database to a new resource, pass
321
+ # `newSpecification` to provision the restored database on a different
322
+ # specification than the archived one (for example, restoring onto a larger
323
+ # or smaller dedicated database). Use `serverless` to restore onto the shared
324
+ # pool, or a dedicated specification slug to restore onto a dedicated
325
+ # database of that size. The specification must be permitted by the
326
+ # organization's plan. `newSpecification` is not supported for
327
+ # legacy/TablesDB databases or for bucket restores.
328
+ #
301
329
  #
302
330
  # @param [String] archive_id Backup archive ID to restore
303
331
  # @param [Array] services Array of services to restore
304
332
  # @param [String] new_resource_id Unique 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.
305
333
  # @param [String] new_resource_name Database name. Max length: 128 chars.
334
+ # @param [String] new_specification Specification to provision the restored database on, when restoring a DocumentsDB or VectorsDB database to a new resource. Defaults to the archived database's specification. Use `serverless` for the shared pool or a dedicated specification slug.
306
335
  #
307
336
  # @return [BackupRestoration]
308
- def create_restoration(archive_id:, services:, new_resource_id: nil, new_resource_name: nil)
337
+ def create_restoration(archive_id:, services:, new_resource_id: nil, new_resource_name: nil, new_specification: nil)
309
338
  api_path = '/backups/restoration'
310
339
 
311
340
  if archive_id.nil?
@@ -321,10 +350,13 @@ module Appwrite
321
350
  services: services,
322
351
  newResourceId: new_resource_id,
323
352
  newResourceName: new_resource_name,
353
+ newSpecification: new_specification,
324
354
  }
325
355
 
326
356
  api_headers = {
357
+ "X-Appwrite-Project": @client.get_config('project'),
327
358
  "content-type": 'application/json',
359
+ "accept": 'application/json',
328
360
  }
329
361
 
330
362
  @client.call(
@@ -350,6 +382,8 @@ module Appwrite
350
382
  }
351
383
 
352
384
  api_headers = {
385
+ "X-Appwrite-Project": @client.get_config('project'),
386
+ "accept": 'application/json',
353
387
  }
354
388
 
355
389
  @client.call(
@@ -379,6 +413,8 @@ module Appwrite
379
413
  }
380
414
 
381
415
  api_headers = {
416
+ "X-Appwrite-Project": @client.get_config('project'),
417
+ "accept": 'application/json',
382
418
  }
383
419
 
384
420
  @client.call(