appwrite 26.1.0 → 27.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 (46) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appwrite/client.rb +16 -2
  3. data/lib/appwrite/enums/authentication_factor.rb +1 -0
  4. data/lib/appwrite/enums/build_runtime.rb +1 -0
  5. data/lib/appwrite/enums/embedding_model.rb +10 -0
  6. data/lib/appwrite/enums/invalidation_type.rb +9 -0
  7. data/lib/appwrite/enums/project_key_scopes.rb +2 -0
  8. data/lib/appwrite/enums/project_policy_id.rb +1 -0
  9. data/lib/appwrite/enums/runtime.rb +1 -0
  10. data/lib/appwrite/models/billing_plan.rb +4 -4
  11. data/lib/appwrite/models/billing_plan_addon.rb +6 -6
  12. data/lib/appwrite/models/billing_plan_addon_details.rb +1 -1
  13. data/lib/appwrite/models/database_migration.rb +102 -0
  14. data/lib/appwrite/models/database_migration_list.rb +32 -0
  15. data/lib/appwrite/models/database_status.rb +30 -0
  16. data/lib/appwrite/models/dedicated_database.rb +0 -5
  17. data/lib/appwrite/models/dedicated_database_member.rb +1 -1
  18. data/lib/appwrite/models/dedicated_database_operation.rb +77 -0
  19. data/lib/appwrite/models/dedicated_database_operation_list.rb +32 -0
  20. data/lib/appwrite/models/dedicated_database_replicas.rb +25 -0
  21. data/lib/appwrite/models/dedicated_database_specification_pricing.rb +0 -5
  22. data/lib/appwrite/models/embedding.rb +42 -0
  23. data/lib/appwrite/models/embedding_list.rb +32 -0
  24. data/lib/appwrite/models/file.rb +10 -0
  25. data/lib/appwrite/models/mfa_challenge_secret.rb +47 -0
  26. data/lib/appwrite/models/mfa_factors.rb +8 -3
  27. data/lib/appwrite/models/organization.rb +12 -12
  28. data/lib/appwrite/models/policy_mfa_factors.rb +47 -0
  29. data/lib/appwrite/models/project.rb +5 -0
  30. data/lib/appwrite/models/proxy_invalidation.rb +42 -0
  31. data/lib/appwrite/models/usage_billing_plan.rb +9 -9
  32. data/lib/appwrite/services/account.rb +1 -33
  33. data/lib/appwrite/services/activities.rb +1 -1
  34. data/lib/appwrite/services/apps.rb +52 -10
  35. data/lib/appwrite/services/backups.rb +13 -7
  36. data/lib/appwrite/services/databases.rb +4 -4
  37. data/lib/appwrite/services/embeddings.rb +48 -0
  38. data/lib/appwrite/services/functions.rb +1 -1
  39. data/lib/appwrite/services/project.rb +52 -57
  40. data/lib/appwrite/services/proxy.rb +44 -0
  41. data/lib/appwrite/services/sites.rb +1 -1
  42. data/lib/appwrite/services/storage.rb +4 -2
  43. data/lib/appwrite/services/tables_db.rb +247 -7
  44. data/lib/appwrite/services/users.rb +38 -0
  45. data/lib/appwrite.rb +12 -0
  46. metadata +14 -2
@@ -47,9 +47,10 @@ module Appwrite
47
47
  # @param [] enabled Is the database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.
48
48
  # @param [String] specification Database specification. Defaults to `serverless`, which creates the database on the shared pool. Any other value provisions a dedicated database on that specification.
49
49
  # @param [Integer] replicas Number of high availability replicas (0-5) for the dedicated database backing this database. Requires a dedicated `specification`; must be 0 for a serverless database. High availability is enabled when greater than 0.
50
+ # @param [String] sync_mode Replication sync mode for the dedicated database backing this database. Requires a dedicated `specification`; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.
50
51
  #
51
52
  # @return [Database]
52
- def create(database_id:, name:, enabled: nil, specification: nil, replicas: nil)
53
+ def create(database_id:, name:, enabled: nil, specification: nil, replicas: nil, sync_mode: nil)
53
54
  api_path = '/tablesdb'
54
55
 
55
56
  if database_id.nil?
@@ -66,6 +67,7 @@ module Appwrite
66
67
  enabled: enabled,
67
68
  specification: specification,
68
69
  replicas: replicas,
70
+ syncMode: sync_mode,
69
71
  }
70
72
 
71
73
  api_headers = {
@@ -334,10 +336,12 @@ module Appwrite
334
336
  # @param [String] database_id Database ID.
335
337
  # @param [String] name Database name. Max length: 128 chars.
336
338
  # @param [] enabled Is database enabled? When set to 'disabled', users cannot access the database but Server SDKs with an API key can still read and write to the database. No data is lost when this is toggled.
339
+ # @param [String] specification Database specification. Resizing between dedicated specifications changes cpu, memory, storage and the connection ceiling via a rolling cutover with zero downtime. Moving a `serverless` database onto a dedicated specification is a data migration, not a resize.
337
340
  # @param [Integer] replicas Number of high availability replicas (0-5) for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification. High availability is enabled when greater than 0.
341
+ # @param [String] sync_mode Replication sync mode for the dedicated database backing this database. Only valid when the database is backed by a dedicated specification; the mode is only in force once there is at least one replica. Allowed values: async, sync, quorum.
338
342
  #
339
343
  # @return [Database]
340
- def update(database_id:, name: nil, enabled: nil, replicas: nil)
344
+ def update(database_id:, name: nil, enabled: nil, specification: nil, replicas: nil, sync_mode: nil)
341
345
  api_path = '/tablesdb/{databaseId}'
342
346
  .gsub('{databaseId}', database_id)
343
347
 
@@ -348,7 +352,9 @@ module Appwrite
348
352
  api_params = {
349
353
  name: name,
350
354
  enabled: enabled,
355
+ specification: specification,
351
356
  replicas: replicas,
357
+ syncMode: sync_mode,
352
358
  }
353
359
 
354
360
  api_headers = {
@@ -400,7 +406,9 @@ module Appwrite
400
406
 
401
407
  # Trigger a manual failover for a dedicated database with high availability
402
408
  # enabled. Promotes a replica to primary. The failover runs asynchronously;
403
- # poll the database document for status updates.
409
+ # poll the database document for status updates. A database left
410
+ # mid-operation by a failover that did not finish also accepts this call as a
411
+ # repair, provided `targetReplicaId` names the member to promote.
404
412
  #
405
413
  # @param [String] database_id Database ID.
406
414
  # @param [String] target_replica_id Target replica ID to promote. If not specified, the healthiest replica is selected.
@@ -434,6 +442,238 @@ module Appwrite
434
442
 
435
443
  end
436
444
 
445
+ # List the dedicated migrations for a TablesDB database. A database has at
446
+ # most one in-flight migration.
447
+ #
448
+ # @param [String] database_id Database ID.
449
+ #
450
+ # @return [DatabaseMigrationList]
451
+ def list_migrations(database_id:)
452
+ api_path = '/tablesdb/{databaseId}/migrations'
453
+ .gsub('{databaseId}', database_id)
454
+
455
+ if database_id.nil?
456
+ raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
457
+ end
458
+
459
+ api_params = {
460
+ }
461
+
462
+ api_headers = {
463
+ "X-Appwrite-Project": @client.get_config('project'),
464
+ "accept": 'application/json',
465
+ }
466
+
467
+ @client.call(
468
+ method: 'GET',
469
+ path: api_path,
470
+ headers: api_headers,
471
+ params: api_params,
472
+ response_type: Models::DatabaseMigrationList
473
+ )
474
+
475
+ end
476
+
477
+ # Start migrating a serverless TablesDB database onto a dedicated MySQL
478
+ # compute. Data is copied to the target while the source stays live, with a
479
+ # brief read-only window during cutover.
480
+ #
481
+ # @param [String] database_id Database ID.
482
+ # @param [String] specification Dedicated compute specification to provision as the migration target (e.g. s-2vcpu-4gb). The migration always targets a dedicated compute, so `serverless` is not accepted.
483
+ # @param [] auto_cutover Whether to cut over automatically once the copy is verified. When disabled the migration parks at ready_to_cutover and holds there until the cutover is performed manually.
484
+ #
485
+ # @return [DatabaseMigration]
486
+ def create_migration(database_id:, specification:, auto_cutover: nil)
487
+ api_path = '/tablesdb/{databaseId}/migrations'
488
+ .gsub('{databaseId}', database_id)
489
+
490
+ if database_id.nil?
491
+ raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
492
+ end
493
+
494
+ if specification.nil?
495
+ raise Appwrite::Exception.new('Missing required parameter: "specification"')
496
+ end
497
+
498
+ api_params = {
499
+ specification: specification,
500
+ autoCutover: auto_cutover,
501
+ }
502
+
503
+ api_headers = {
504
+ "X-Appwrite-Project": @client.get_config('project'),
505
+ "content-type": 'application/json',
506
+ "accept": 'application/json',
507
+ }
508
+
509
+ @client.call(
510
+ method: 'POST',
511
+ path: api_path,
512
+ headers: api_headers,
513
+ params: api_params,
514
+ response_type: Models::DatabaseMigration
515
+ )
516
+
517
+ end
518
+
519
+ # Get a single dedicated migration for a TablesDB database by its ID.
520
+ #
521
+ # @param [String] database_id Database ID.
522
+ # @param [String] migration_id Migration ID.
523
+ #
524
+ # @return [DatabaseMigration]
525
+ def get_migration(database_id:, migration_id:)
526
+ api_path = '/tablesdb/{databaseId}/migrations/{migrationId}'
527
+ .gsub('{databaseId}', database_id)
528
+ .gsub('{migrationId}', migration_id)
529
+
530
+ if database_id.nil?
531
+ raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
532
+ end
533
+
534
+ if migration_id.nil?
535
+ raise Appwrite::Exception.new('Missing required parameter: "migrationId"')
536
+ end
537
+
538
+ api_params = {
539
+ }
540
+
541
+ api_headers = {
542
+ "X-Appwrite-Project": @client.get_config('project'),
543
+ "accept": 'application/json',
544
+ }
545
+
546
+ @client.call(
547
+ method: 'GET',
548
+ path: api_path,
549
+ headers: api_headers,
550
+ params: api_params,
551
+ response_type: Models::DatabaseMigration
552
+ )
553
+
554
+ end
555
+
556
+ # Abort an in-flight TablesDB dedicated migration. Only allowed before
557
+ # cutover; once the migration has cut over it cannot be aborted.
558
+ #
559
+ # @param [String] database_id Database ID.
560
+ # @param [String] migration_id Migration ID.
561
+ #
562
+ # @return []
563
+ def delete_migration(database_id:, migration_id:)
564
+ api_path = '/tablesdb/{databaseId}/migrations/{migrationId}'
565
+ .gsub('{databaseId}', database_id)
566
+ .gsub('{migrationId}', migration_id)
567
+
568
+ if database_id.nil?
569
+ raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
570
+ end
571
+
572
+ if migration_id.nil?
573
+ raise Appwrite::Exception.new('Missing required parameter: "migrationId"')
574
+ end
575
+
576
+ api_params = {
577
+ }
578
+
579
+ api_headers = {
580
+ "X-Appwrite-Project": @client.get_config('project'),
581
+ "content-type": 'application/json',
582
+ "accept": 'application/json',
583
+ }
584
+
585
+ @client.call(
586
+ method: 'DELETE',
587
+ path: api_path,
588
+ headers: api_headers,
589
+ params: api_params,
590
+ )
591
+
592
+ end
593
+
594
+ # Cut a verified TablesDB migration over to its dedicated compute. Only
595
+ # applies to a migration created with `autoCutover` disabled, which waits at
596
+ # `ready_to_cutover` until this is called. The routing flip happens shortly
597
+ # after this returns, with a brief read-only window. One call buys one
598
+ # attempt: a cutover that fails a check returns the migration to `verifying`
599
+ # and parks it again, so call this once more to retry.
600
+ #
601
+ # @param [String] database_id Database ID.
602
+ # @param [String] migration_id Migration ID.
603
+ #
604
+ # @return [DatabaseMigration]
605
+ def cutover_migration(database_id:, migration_id:)
606
+ api_path = '/tablesdb/{databaseId}/migrations/{migrationId}/cutover'
607
+ .gsub('{databaseId}', database_id)
608
+ .gsub('{migrationId}', migration_id)
609
+
610
+ if database_id.nil?
611
+ raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
612
+ end
613
+
614
+ if migration_id.nil?
615
+ raise Appwrite::Exception.new('Missing required parameter: "migrationId"')
616
+ end
617
+
618
+ api_params = {
619
+ }
620
+
621
+ api_headers = {
622
+ "X-Appwrite-Project": @client.get_config('project'),
623
+ "content-type": 'application/json',
624
+ "accept": 'application/json',
625
+ }
626
+
627
+ @client.call(
628
+ method: 'POST',
629
+ path: api_path,
630
+ headers: api_headers,
631
+ params: api_params,
632
+ response_type: Models::DatabaseMigration
633
+ )
634
+
635
+ end
636
+
637
+ # List the lifecycle operations recorded for a dedicated database, newest
638
+ # first. Every provision, update, restore, backup and replication action is
639
+ # recorded here with its outcome, including an attempt that was abandoned
640
+ # because another worker took over the database.
641
+ #
642
+ # @param [String] database_id Database ID.
643
+ # @param [String] status Filter by operation status.
644
+ # @param [Integer] limit Maximum number of operations to return.
645
+ # @param [Integer] offset Number of operations to skip.
646
+ #
647
+ # @return [DedicatedDatabaseOperationList]
648
+ def list_operations(database_id:, status: nil, limit: nil, offset: nil)
649
+ api_path = '/tablesdb/{databaseId}/operations'
650
+ .gsub('{databaseId}', database_id)
651
+
652
+ if database_id.nil?
653
+ raise Appwrite::Exception.new('Missing required parameter: "databaseId"')
654
+ end
655
+
656
+ api_params = {
657
+ status: status,
658
+ limit: limit,
659
+ offset: offset,
660
+ }
661
+
662
+ api_headers = {
663
+ "X-Appwrite-Project": @client.get_config('project'),
664
+ "accept": 'application/json',
665
+ }
666
+
667
+ @client.call(
668
+ method: 'GET',
669
+ path: api_path,
670
+ headers: api_headers,
671
+ params: api_params,
672
+ response_type: Models::DedicatedDatabaseOperationList
673
+ )
674
+
675
+ end
676
+
437
677
  # Get high availability status for a dedicated database. Returns replica
438
678
  # statuses, replication lag, and sync mode.
439
679
  #
@@ -548,7 +788,7 @@ module Appwrite
548
788
  # @param [Array] permissions An array of permissions strings. By default, no user is granted with any permissions. [Learn more about permissions](https://appwrite.io/docs/permissions).
549
789
  # @param [] row_security Enables configuring permissions for individual rows. A user needs one of row or table level permissions to access a row. [Learn more about permissions](https://appwrite.io/docs/permissions).
550
790
  # @param [] enabled Is table enabled? When set to 'disabled', users cannot access the table but Server SDKs with and API key can still read and write to the table. No data is lost when this is toggled.
551
- # @param [Array] columns Array of column definitions to create. Each column should contain: key (string), type (string: string, integer, float, boolean, datetime, relationship), size (integer, required for string type), required (boolean, optional), default (mixed, optional), array (boolean, optional), and type-specific options.
791
+ # @param [Array] columns Array of column definitions to create. Each column should contain: key (string), type (string: string, varchar, text, mediumtext, longtext, integer, bigint, double, boolean, datetime, point, linestring, polygon, email, url, ip, enum), size (integer, required for string and varchar types), required (boolean, optional), default (mixed, optional), array (boolean, optional), and type-specific options.
552
792
  # @param [Array] indexes Array of index definitions to create. Each index should contain: key (string), type (string: key, fulltext, unique, spatial), attributes (array of column keys), orders (array of ASC/DESC, optional), and lengths (array of integers, optional).
553
793
  #
554
794
  # @return [Table]
@@ -2276,11 +2516,11 @@ module Appwrite
2276
2516
  # @param [String] database_id Database ID.
2277
2517
  # @param [String] table_id Table ID.
2278
2518
  # @param [String] related_table_id Related Table ID.
2279
- # @param [RelationshipType] type Relation type
2519
+ # @param [RelationshipType] type Relationship type. Possible values are: oneToOne, oneToMany, manyToOne, manyToMany.
2280
2520
  # @param [] two_way Is Two Way?
2281
2521
  # @param [String] key Column Key.
2282
2522
  # @param [String] two_way_key Two Way Column Key.
2283
- # @param [RelationMutate] on_delete Constraints option
2523
+ # @param [RelationMutate] on_delete Delete constraint. Possible values are: cascade, restrict, setNull.
2284
2524
  #
2285
2525
  # @return [ColumnRelationship]
2286
2526
  def create_relationship_column(database_id:, table_id:, related_table_id:, type:, two_way: nil, key: nil, two_way_key: nil, on_delete: nil)
@@ -2964,7 +3204,7 @@ module Appwrite
2964
3204
  # @param [String] database_id Database ID.
2965
3205
  # @param [String] table_id Table ID.
2966
3206
  # @param [String] key Column Key.
2967
- # @param [RelationMutate] on_delete Constraints option
3207
+ # @param [RelationMutate] on_delete Delete constraint. Possible values are: cascade, restrict, setNull.
2968
3208
  # @param [String] new_key New Column Key.
2969
3209
  #
2970
3210
  # @return [ColumnRelationship]
@@ -908,6 +908,44 @@ module Appwrite
908
908
 
909
909
  end
910
910
 
911
+ # Get a custom MFA challenge for a user, including the code to be delivered
912
+ # through your own channel.
913
+ #
914
+ # @param [String] user_id User ID.
915
+ # @param [String] challenge_id ID of the challenge.
916
+ #
917
+ # @return [MfaChallengeSecret]
918
+ def get_mfa_challenge(user_id:, challenge_id:)
919
+ api_path = '/users/{userId}/mfa/challenges/{challengeId}'
920
+ .gsub('{userId}', user_id)
921
+ .gsub('{challengeId}', challenge_id)
922
+
923
+ if user_id.nil?
924
+ raise Appwrite::Exception.new('Missing required parameter: "userId"')
925
+ end
926
+
927
+ if challenge_id.nil?
928
+ raise Appwrite::Exception.new('Missing required parameter: "challengeId"')
929
+ end
930
+
931
+ api_params = {
932
+ }
933
+
934
+ api_headers = {
935
+ "X-Appwrite-Project": @client.get_config('project'),
936
+ "accept": 'application/json',
937
+ }
938
+
939
+ @client.call(
940
+ method: 'GET',
941
+ path: api_path,
942
+ headers: api_headers,
943
+ params: api_params,
944
+ response_type: Models::MfaChallengeSecret
945
+ )
946
+
947
+ end
948
+
911
949
  # List the factors available on the account to be used as a MFA challange.
912
950
  #
913
951
  # @param [String] user_id User ID.
data/lib/appwrite.rb CHANGED
@@ -57,9 +57,11 @@ require_relative 'appwrite/models/subscriber_list'
57
57
  require_relative 'appwrite/models/target_list'
58
58
  require_relative 'appwrite/models/transaction_list'
59
59
  require_relative 'appwrite/models/specification_list'
60
+ require_relative 'appwrite/models/embedding_list'
60
61
  require_relative 'appwrite/models/insight_list'
61
62
  require_relative 'appwrite/models/report_list'
62
63
  require_relative 'appwrite/models/database'
64
+ require_relative 'appwrite/models/embedding'
63
65
  require_relative 'appwrite/models/collection'
64
66
  require_relative 'appwrite/models/attribute_list'
65
67
  require_relative 'appwrite/models/attribute_string'
@@ -194,6 +196,7 @@ require_relative 'appwrite/models/policy_session_invalidation'
194
196
  require_relative 'appwrite/models/policy_session_limit'
195
197
  require_relative 'appwrite/models/policy_user_limit'
196
198
  require_relative 'appwrite/models/policy_membership_privacy'
199
+ require_relative 'appwrite/models/policy_mfa_factors'
197
200
  require_relative 'appwrite/models/platform_web'
198
201
  require_relative 'appwrite/models/platform_apple'
199
202
  require_relative 'appwrite/models/platform_android'
@@ -211,6 +214,7 @@ require_relative 'appwrite/models/specification'
211
214
  require_relative 'appwrite/models/proxy_rule'
212
215
  require_relative 'appwrite/models/email_template'
213
216
  require_relative 'appwrite/models/mfa_challenge'
217
+ require_relative 'appwrite/models/mfa_challenge_secret'
214
218
  require_relative 'appwrite/models/mfa_recovery_codes'
215
219
  require_relative 'appwrite/models/mfa_type'
216
220
  require_relative 'appwrite/models/mfa_factors'
@@ -234,10 +238,14 @@ require_relative 'appwrite/models/billing_plan_limits'
234
238
  require_relative 'appwrite/models/billing_plan_dedicated_database_limits'
235
239
  require_relative 'appwrite/models/billing_plan_supported_addons'
236
240
  require_relative 'appwrite/models/block'
241
+ require_relative 'appwrite/models/database_migration'
237
242
  require_relative 'appwrite/models/dedicated_database'
238
243
  require_relative 'appwrite/models/database_status'
239
244
  require_relative 'appwrite/models/dedicated_database_member'
245
+ require_relative 'appwrite/models/dedicated_database_operation'
246
+ require_relative 'appwrite/models/dedicated_database_operation_list'
240
247
  require_relative 'appwrite/models/dedicated_database_replicas'
248
+ require_relative 'appwrite/models/proxy_invalidation'
241
249
  require_relative 'appwrite/models/organization'
242
250
  require_relative 'appwrite/models/backup_policy'
243
251
  require_relative 'appwrite/models/policy_deny_aliased_email'
@@ -278,6 +286,7 @@ require_relative 'appwrite/models/activity_event_list'
278
286
  require_relative 'appwrite/models/backup_archive_list'
279
287
  require_relative 'appwrite/models/backup_policy_list'
280
288
  require_relative 'appwrite/models/backup_restoration_list'
289
+ require_relative 'appwrite/models/database_migration_list'
281
290
  require_relative 'appwrite/models/apps_list'
282
291
  require_relative 'appwrite/models/app_secret_list'
283
292
  require_relative 'appwrite/models/app_scope_list'
@@ -299,6 +308,7 @@ require_relative 'appwrite/enums/relationship_type'
299
308
  require_relative 'appwrite/enums/relation_mutate'
300
309
  require_relative 'appwrite/enums/databases_index_type'
301
310
  require_relative 'appwrite/enums/order_by'
311
+ require_relative 'appwrite/enums/embedding_model'
302
312
  require_relative 'appwrite/enums/runtime'
303
313
  require_relative 'appwrite/enums/project_key_scopes'
304
314
  require_relative 'appwrite/enums/template_reference_type'
@@ -319,6 +329,7 @@ require_relative 'appwrite/enums/project_service_id'
319
329
  require_relative 'appwrite/enums/project_smtp_secure'
320
330
  require_relative 'appwrite/enums/project_email_template_id'
321
331
  require_relative 'appwrite/enums/project_email_template_locale'
332
+ require_relative 'appwrite/enums/invalidation_type'
322
333
  require_relative 'appwrite/enums/status_code'
323
334
  require_relative 'appwrite/enums/proxy_resource_type'
324
335
  require_relative 'appwrite/enums/framework'
@@ -351,6 +362,7 @@ require_relative 'appwrite/services/apps'
351
362
  require_relative 'appwrite/services/avatars'
352
363
  require_relative 'appwrite/services/backups'
353
364
  require_relative 'appwrite/services/databases'
365
+ require_relative 'appwrite/services/embeddings'
354
366
  require_relative 'appwrite/services/functions'
355
367
  require_relative 'appwrite/services/graphql'
356
368
  require_relative 'appwrite/services/locale'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appwrite
3
3
  version: !ruby/object:Gem::Version
4
- version: 26.1.0
4
+ version: 27.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Appwrite Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-07-24 00:00:00.000000000 Z
11
+ date: 2026-08-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mime-types
@@ -50,6 +50,7 @@ files:
50
50
  - lib/appwrite/enums/databases_index_type.rb
51
51
  - lib/appwrite/enums/deployment_download_type.rb
52
52
  - lib/appwrite/enums/deployment_status.rb
53
+ - lib/appwrite/enums/embedding_model.rb
53
54
  - lib/appwrite/enums/execution_method.rb
54
55
  - lib/appwrite/enums/execution_status.rb
55
56
  - lib/appwrite/enums/execution_trigger.rb
@@ -58,6 +59,7 @@ files:
58
59
  - lib/appwrite/enums/image_format.rb
59
60
  - lib/appwrite/enums/image_gravity.rb
60
61
  - lib/appwrite/enums/index_status.rb
62
+ - lib/appwrite/enums/invalidation_type.rb
61
63
  - lib/appwrite/enums/message_priority.rb
62
64
  - lib/appwrite/enums/message_status.rb
63
65
  - lib/appwrite/enums/messaging_provider_type.rb
@@ -182,12 +184,16 @@ files:
182
184
  - lib/appwrite/models/currency_list.rb
183
185
  - lib/appwrite/models/database.rb
184
186
  - lib/appwrite/models/database_list.rb
187
+ - lib/appwrite/models/database_migration.rb
188
+ - lib/appwrite/models/database_migration_list.rb
185
189
  - lib/appwrite/models/database_status.rb
186
190
  - lib/appwrite/models/database_status_connections.rb
187
191
  - lib/appwrite/models/database_status_replica.rb
188
192
  - lib/appwrite/models/database_status_volume.rb
189
193
  - lib/appwrite/models/dedicated_database.rb
190
194
  - lib/appwrite/models/dedicated_database_member.rb
195
+ - lib/appwrite/models/dedicated_database_operation.rb
196
+ - lib/appwrite/models/dedicated_database_operation_list.rb
191
197
  - lib/appwrite/models/dedicated_database_replicas.rb
192
198
  - lib/appwrite/models/dedicated_database_specification.rb
193
199
  - lib/appwrite/models/dedicated_database_specification_list.rb
@@ -199,6 +205,8 @@ files:
199
205
  - lib/appwrite/models/document_list.rb
200
206
  - lib/appwrite/models/email_template.rb
201
207
  - lib/appwrite/models/email_template_list.rb
208
+ - lib/appwrite/models/embedding.rb
209
+ - lib/appwrite/models/embedding_list.rb
202
210
  - lib/appwrite/models/ephemeral_key.rb
203
211
  - lib/appwrite/models/execution.rb
204
212
  - lib/appwrite/models/execution_list.rb
@@ -232,6 +240,7 @@ files:
232
240
  - lib/appwrite/models/message.rb
233
241
  - lib/appwrite/models/message_list.rb
234
242
  - lib/appwrite/models/mfa_challenge.rb
243
+ - lib/appwrite/models/mfa_challenge_secret.rb
235
244
  - lib/appwrite/models/mfa_factors.rb
236
245
  - lib/appwrite/models/mfa_recovery_codes.rb
237
246
  - lib/appwrite/models/mfa_type.rb
@@ -309,6 +318,7 @@ files:
309
318
  - lib/appwrite/models/policy_deny_free_email.rb
310
319
  - lib/appwrite/models/policy_list.rb
311
320
  - lib/appwrite/models/policy_membership_privacy.rb
321
+ - lib/appwrite/models/policy_mfa_factors.rb
312
322
  - lib/appwrite/models/policy_password_dictionary.rb
313
323
  - lib/appwrite/models/policy_password_history.rb
314
324
  - lib/appwrite/models/policy_password_personal_data.rb
@@ -329,6 +339,7 @@ files:
329
339
  - lib/appwrite/models/project_service.rb
330
340
  - lib/appwrite/models/provider.rb
331
341
  - lib/appwrite/models/provider_list.rb
342
+ - lib/appwrite/models/proxy_invalidation.rb
332
343
  - lib/appwrite/models/proxy_rule.rb
333
344
  - lib/appwrite/models/proxy_rule_list.rb
334
345
  - lib/appwrite/models/report.rb
@@ -377,6 +388,7 @@ files:
377
388
  - lib/appwrite/services/avatars.rb
378
389
  - lib/appwrite/services/backups.rb
379
390
  - lib/appwrite/services/databases.rb
391
+ - lib/appwrite/services/embeddings.rb
380
392
  - lib/appwrite/services/functions.rb
381
393
  - lib/appwrite/services/graphql.rb
382
394
  - lib/appwrite/services/locale.rb