appwrite 29.0.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 (76) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appwrite/client.rb +3 -3
  3. data/lib/appwrite/models/attribute_bigint.rb +6 -1
  4. data/lib/appwrite/models/attribute_boolean.rb +6 -1
  5. data/lib/appwrite/models/attribute_datetime.rb +6 -1
  6. data/lib/appwrite/models/attribute_email.rb +6 -1
  7. data/lib/appwrite/models/attribute_enum.rb +6 -1
  8. data/lib/appwrite/models/attribute_float.rb +6 -1
  9. data/lib/appwrite/models/attribute_integer.rb +6 -1
  10. data/lib/appwrite/models/attribute_ip.rb +6 -1
  11. data/lib/appwrite/models/attribute_line.rb +6 -1
  12. data/lib/appwrite/models/attribute_longtext.rb +6 -1
  13. data/lib/appwrite/models/attribute_mediumtext.rb +6 -1
  14. data/lib/appwrite/models/attribute_object.rb +6 -1
  15. data/lib/appwrite/models/attribute_point.rb +6 -1
  16. data/lib/appwrite/models/attribute_polygon.rb +6 -1
  17. data/lib/appwrite/models/attribute_relationship.rb +6 -1
  18. data/lib/appwrite/models/attribute_string.rb +6 -1
  19. data/lib/appwrite/models/attribute_text.rb +6 -1
  20. data/lib/appwrite/models/attribute_url.rb +6 -1
  21. data/lib/appwrite/models/attribute_varchar.rb +6 -1
  22. data/lib/appwrite/models/attribute_vector.rb +6 -1
  23. data/lib/appwrite/models/billing_plan.rb +6 -1
  24. data/lib/appwrite/models/bucket.rb +11 -1
  25. data/lib/appwrite/models/collection.rb +6 -1
  26. data/lib/appwrite/models/column_bigint.rb +6 -1
  27. data/lib/appwrite/models/column_boolean.rb +6 -1
  28. data/lib/appwrite/models/column_datetime.rb +6 -1
  29. data/lib/appwrite/models/column_email.rb +6 -1
  30. data/lib/appwrite/models/column_enum.rb +6 -1
  31. data/lib/appwrite/models/column_float.rb +6 -1
  32. data/lib/appwrite/models/column_index.rb +6 -1
  33. data/lib/appwrite/models/column_integer.rb +6 -1
  34. data/lib/appwrite/models/column_ip.rb +6 -1
  35. data/lib/appwrite/models/column_line.rb +6 -1
  36. data/lib/appwrite/models/column_longtext.rb +6 -1
  37. data/lib/appwrite/models/column_mediumtext.rb +6 -1
  38. data/lib/appwrite/models/column_point.rb +6 -1
  39. data/lib/appwrite/models/column_polygon.rb +6 -1
  40. data/lib/appwrite/models/column_relationship.rb +6 -1
  41. data/lib/appwrite/models/column_string.rb +6 -1
  42. data/lib/appwrite/models/column_text.rb +6 -1
  43. data/lib/appwrite/models/column_url.rb +6 -1
  44. data/lib/appwrite/models/column_varchar.rb +6 -1
  45. data/lib/appwrite/models/database.rb +6 -1
  46. data/lib/appwrite/models/ephemeral_key.rb +6 -1
  47. data/lib/appwrite/models/function.rb +6 -1
  48. data/lib/appwrite/models/index.rb +6 -1
  49. data/lib/appwrite/models/key.rb +6 -1
  50. data/lib/appwrite/models/policy_password_dictionary.rb +9 -4
  51. data/lib/appwrite/models/policy_password_personal_data.rb +9 -4
  52. data/lib/appwrite/models/site.rb +6 -1
  53. data/lib/appwrite/models/table.rb +6 -1
  54. data/lib/appwrite/models/topic.rb +6 -1
  55. data/lib/appwrite/models/variable.rb +6 -1
  56. data/lib/appwrite/models/vectorsdb_collection.rb +6 -1
  57. data/lib/appwrite/models/webhook.rb +6 -1
  58. data/lib/appwrite/services/account.rb +48 -0
  59. data/lib/appwrite/services/activities.rb +4 -1
  60. data/lib/appwrite/services/backups.rb +12 -3
  61. data/lib/appwrite/services/databases.rb +233 -42
  62. data/lib/appwrite/services/documents_db.rb +74 -3
  63. data/lib/appwrite/services/domains.rb +8 -2
  64. data/lib/appwrite/services/functions.rb +15 -3
  65. data/lib/appwrite/services/messaging.rb +16 -4
  66. data/lib/appwrite/services/mongo.rb +12 -3
  67. data/lib/appwrite/services/mysql.rb +12 -3
  68. data/lib/appwrite/services/organization.rb +4 -1
  69. data/lib/appwrite/services/postgresql.rb +12 -3
  70. data/lib/appwrite/services/project.rb +38 -5
  71. data/lib/appwrite/services/sites.rb +16 -4
  72. data/lib/appwrite/services/storage.rb +15 -3
  73. data/lib/appwrite/services/tables_db.rb +227 -40
  74. data/lib/appwrite/services/vectors_db.rb +18 -3
  75. data/lib/appwrite/services/webhooks.rb +8 -2
  76. metadata +3 -3
@@ -7,6 +7,7 @@ module Appwrite
7
7
  attr_reader :created_at
8
8
  attr_reader :updated_at
9
9
  attr_reader :name
10
+ attr_reader :description
10
11
  attr_reader :expire
11
12
  attr_reader :scopes
12
13
  attr_reader :secret
@@ -18,6 +19,7 @@ module Appwrite
18
19
  created_at:,
19
20
  updated_at:,
20
21
  name:,
22
+ description:,
21
23
  expire:,
22
24
  scopes:,
23
25
  secret:,
@@ -28,6 +30,7 @@ module Appwrite
28
30
  @created_at = created_at
29
31
  @updated_at = updated_at
30
32
  @name = name
33
+ @description = description
31
34
  @expire = expire
32
35
  @scopes = scopes
33
36
  @secret = secret
@@ -36,12 +39,13 @@ module Appwrite
36
39
  end
37
40
 
38
41
  def self.from(map:)
39
- map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "name" => "", "expire" => "", "scopes" => [], "secret" => "", "accessedAt" => "", "sdks" => [] }.merge(map)
42
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "name" => "", "description" => "", "expire" => "", "scopes" => [], "secret" => "", "accessedAt" => "", "sdks" => [] }.merge(map)
40
43
  EphemeralKey.new(
41
44
  id: map["$id"],
42
45
  created_at: map["$createdAt"],
43
46
  updated_at: map["$updatedAt"],
44
47
  name: map["name"],
48
+ description: map["description"],
45
49
  expire: map["expire"],
46
50
  scopes: map["scopes"],
47
51
  secret: map["secret"],
@@ -56,6 +60,7 @@ module Appwrite
56
60
  "$createdAt": @created_at,
57
61
  "$updatedAt": @updated_at,
58
62
  "name": @name,
63
+ "description": @description,
59
64
  "expire": @expire,
60
65
  "scopes": @scopes,
61
66
  "secret": @secret,
@@ -8,6 +8,7 @@ module Appwrite
8
8
  attr_reader :updated_at
9
9
  attr_reader :execute
10
10
  attr_reader :name
11
+ attr_reader :description
11
12
  attr_reader :enabled
12
13
  attr_reader :live
13
14
  attr_reader :logging
@@ -44,6 +45,7 @@ module Appwrite
44
45
  updated_at:,
45
46
  execute:,
46
47
  name:,
48
+ description:,
47
49
  enabled:,
48
50
  live:,
49
51
  logging:,
@@ -79,6 +81,7 @@ module Appwrite
79
81
  @updated_at = updated_at
80
82
  @execute = execute
81
83
  @name = name
84
+ @description = description
82
85
  @enabled = enabled
83
86
  @live = live
84
87
  @logging = logging
@@ -111,13 +114,14 @@ module Appwrite
111
114
  end
112
115
 
113
116
  def self.from(map:)
114
- map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "execute" => [], "name" => "", "enabled" => true, "live" => true, "logging" => true, "runtime" => "", "deploymentRetention" => 0, "deploymentId" => "", "deploymentCreatedAt" => "", "latestDeploymentId" => "", "latestDeploymentCreatedAt" => "", "latestDeploymentStatus" => "", "scopes" => [], "vars" => [], "events" => [], "schedule" => "", "timeout" => 15, "entrypoint" => "", "commands" => "", "version" => "v5", "installationId" => "", "providerRepositoryId" => "", "providerBranch" => "", "providerRootDirectory" => "", "providerSilentMode" => false, "providerBranches" => [], "providerPaths" => [], "buildSpecification" => "s-1vcpu-512mb", "runtimeSpecification" => "s-1vcpu-512mb", "emailEnabled" => false }.merge(map)
117
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "execute" => [], "name" => "", "description" => "", "enabled" => true, "live" => true, "logging" => true, "runtime" => "", "deploymentRetention" => 0, "deploymentId" => "", "deploymentCreatedAt" => "", "latestDeploymentId" => "", "latestDeploymentCreatedAt" => "", "latestDeploymentStatus" => "", "scopes" => [], "vars" => [], "events" => [], "schedule" => "", "timeout" => 15, "entrypoint" => "", "commands" => "", "version" => "v5", "installationId" => "", "providerRepositoryId" => "", "providerBranch" => "", "providerRootDirectory" => "", "providerSilentMode" => false, "providerBranches" => [], "providerPaths" => [], "buildSpecification" => "s-1vcpu-512mb", "runtimeSpecification" => "s-1vcpu-512mb", "emailEnabled" => false }.merge(map)
115
118
  Function.new(
116
119
  id: map["$id"],
117
120
  created_at: map["$createdAt"],
118
121
  updated_at: map["$updatedAt"],
119
122
  execute: map["execute"],
120
123
  name: map["name"],
124
+ description: map["description"],
121
125
  enabled: map["enabled"],
122
126
  live: map["live"],
123
127
  logging: map["logging"],
@@ -157,6 +161,7 @@ module Appwrite
157
161
  "$updatedAt": @updated_at,
158
162
  "execute": @execute,
159
163
  "name": @name,
164
+ "description": @description,
160
165
  "enabled": @enabled,
161
166
  "live": @live,
162
167
  "logging": @logging,
@@ -7,6 +7,7 @@ module Appwrite
7
7
  attr_reader :created_at
8
8
  attr_reader :updated_at
9
9
  attr_reader :key
10
+ attr_reader :description
10
11
  attr_reader :type
11
12
  attr_reader :status
12
13
  attr_reader :error
@@ -19,6 +20,7 @@ module Appwrite
19
20
  created_at:,
20
21
  updated_at:,
21
22
  key:,
23
+ description:,
22
24
  type:,
23
25
  status:,
24
26
  error:,
@@ -30,6 +32,7 @@ module Appwrite
30
32
  @created_at = created_at
31
33
  @updated_at = updated_at
32
34
  @key = key
35
+ @description = description
33
36
  @type = type
34
37
  @status = validate_status(status)
35
38
  @error = error
@@ -39,12 +42,13 @@ module Appwrite
39
42
  end
40
43
 
41
44
  def self.from(map:)
42
- map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "key" => "", "type" => "", "error" => "", "attributes" => [], "lengths" => [] }.merge(map)
45
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "key" => "", "description" => "", "type" => "", "error" => "", "attributes" => [], "lengths" => [] }.merge(map)
43
46
  Index.new(
44
47
  id: map["$id"],
45
48
  created_at: map["$createdAt"],
46
49
  updated_at: map["$updatedAt"],
47
50
  key: map["key"],
51
+ description: map["description"],
48
52
  type: map["type"],
49
53
  status: map["status"],
50
54
  error: map["error"],
@@ -60,6 +64,7 @@ module Appwrite
60
64
  "$createdAt": @created_at,
61
65
  "$updatedAt": @updated_at,
62
66
  "key": @key,
67
+ "description": @description,
63
68
  "type": @type,
64
69
  "status": @status,
65
70
  "error": @error,
@@ -7,6 +7,7 @@ module Appwrite
7
7
  attr_reader :created_at
8
8
  attr_reader :updated_at
9
9
  attr_reader :name
10
+ attr_reader :description
10
11
  attr_reader :expire
11
12
  attr_reader :scopes
12
13
  attr_reader :secret
@@ -18,6 +19,7 @@ module Appwrite
18
19
  created_at:,
19
20
  updated_at:,
20
21
  name:,
22
+ description:,
21
23
  expire:,
22
24
  scopes:,
23
25
  secret:,
@@ -28,6 +30,7 @@ module Appwrite
28
30
  @created_at = created_at
29
31
  @updated_at = updated_at
30
32
  @name = name
33
+ @description = description
31
34
  @expire = expire
32
35
  @scopes = scopes
33
36
  @secret = secret
@@ -36,12 +39,13 @@ module Appwrite
36
39
  end
37
40
 
38
41
  def self.from(map:)
39
- map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "name" => "", "expire" => "", "scopes" => [], "secret" => "", "accessedAt" => "", "sdks" => [] }.merge(map)
42
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "name" => "", "description" => "", "expire" => "", "scopes" => [], "secret" => "", "accessedAt" => "", "sdks" => [] }.merge(map)
40
43
  Key.new(
41
44
  id: map["$id"],
42
45
  created_at: map["$createdAt"],
43
46
  updated_at: map["$updatedAt"],
44
47
  name: map["name"],
48
+ description: map["description"],
45
49
  expire: map["expire"],
46
50
  scopes: map["scopes"],
47
51
  secret: map["secret"],
@@ -56,6 +60,7 @@ module Appwrite
56
60
  "$createdAt": @created_at,
57
61
  "$updatedAt": @updated_at,
58
62
  "name": @name,
63
+ "description": @description,
59
64
  "expire": @expire,
60
65
  "scopes": @scopes,
61
66
  "secret": @secret,
@@ -5,27 +5,32 @@ module Appwrite
5
5
  class PolicyPasswordDictionary
6
6
  attr_reader :id
7
7
  attr_reader :enabled
8
+ attr_reader :deny_list
8
9
 
9
10
  def initialize(
10
11
  id:,
11
- enabled:
12
+ enabled:,
13
+ deny_list:
12
14
  )
13
15
  @id = id
14
16
  @enabled = enabled
17
+ @deny_list = deny_list
15
18
  end
16
19
 
17
20
  def self.from(map:)
18
- map = { "$id" => "", "enabled" => false }.merge(map)
21
+ map = { "$id" => "", "enabled" => false, "denyList" => [] }.merge(map)
19
22
  PolicyPasswordDictionary.new(
20
23
  id: map["$id"],
21
- enabled: map["enabled"]
24
+ enabled: map["enabled"],
25
+ deny_list: map["denyList"]
22
26
  )
23
27
  end
24
28
 
25
29
  def to_map
26
30
  {
27
31
  "$id": @id,
28
- "enabled": @enabled
32
+ "enabled": @enabled,
33
+ "denyList": @deny_list
29
34
  }
30
35
  end
31
36
  end
@@ -5,27 +5,32 @@ module Appwrite
5
5
  class PolicyPasswordPersonalData
6
6
  attr_reader :id
7
7
  attr_reader :enabled
8
+ attr_reader :deny_list
8
9
 
9
10
  def initialize(
10
11
  id:,
11
- enabled:
12
+ enabled:,
13
+ deny_list:
12
14
  )
13
15
  @id = id
14
16
  @enabled = enabled
17
+ @deny_list = deny_list
15
18
  end
16
19
 
17
20
  def self.from(map:)
18
- map = { "$id" => "", "enabled" => false }.merge(map)
21
+ map = { "$id" => "", "enabled" => false, "denyList" => [] }.merge(map)
19
22
  PolicyPasswordPersonalData.new(
20
23
  id: map["$id"],
21
- enabled: map["enabled"]
24
+ enabled: map["enabled"],
25
+ deny_list: map["denyList"]
22
26
  )
23
27
  end
24
28
 
25
29
  def to_map
26
30
  {
27
31
  "$id": @id,
28
- "enabled": @enabled
32
+ "enabled": @enabled,
33
+ "denyList": @deny_list
29
34
  }
30
35
  end
31
36
  end
@@ -7,6 +7,7 @@ module Appwrite
7
7
  attr_reader :created_at
8
8
  attr_reader :updated_at
9
9
  attr_reader :name
10
+ attr_reader :description
10
11
  attr_reader :enabled
11
12
  attr_reader :live
12
13
  attr_reader :logging
@@ -44,6 +45,7 @@ module Appwrite
44
45
  created_at:,
45
46
  updated_at:,
46
47
  name:,
48
+ description:,
47
49
  enabled:,
48
50
  live:,
49
51
  logging:,
@@ -80,6 +82,7 @@ module Appwrite
80
82
  @created_at = created_at
81
83
  @updated_at = updated_at
82
84
  @name = name
85
+ @description = description
83
86
  @enabled = enabled
84
87
  @live = live
85
88
  @logging = logging
@@ -114,12 +117,13 @@ module Appwrite
114
117
  end
115
118
 
116
119
  def self.from(map:)
117
- map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "name" => "", "enabled" => true, "live" => true, "logging" => true, "framework" => "", "deploymentRetention" => 0, "deploymentId" => "", "deploymentCreatedAt" => "", "deploymentScreenshotLight" => "", "deploymentScreenshotDark" => "", "latestDeploymentId" => "", "latestDeploymentCreatedAt" => "", "latestDeploymentStatus" => "", "scopes" => [], "vars" => [], "timeout" => 15, "installCommand" => "", "buildCommand" => "", "startCommand" => "", "outputDirectory" => "", "installationId" => "", "providerRepositoryId" => "", "providerBranch" => "", "providerRootDirectory" => "", "providerSilentMode" => false, "providerBranches" => [], "providerPaths" => [], "buildSpecification" => "s-1vcpu-512mb", "runtimeSpecification" => "s-1vcpu-512mb", "buildRuntime" => "" }.merge(map)
120
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "name" => "", "description" => "", "enabled" => true, "live" => true, "logging" => true, "framework" => "", "deploymentRetention" => 0, "deploymentId" => "", "deploymentCreatedAt" => "", "deploymentScreenshotLight" => "", "deploymentScreenshotDark" => "", "latestDeploymentId" => "", "latestDeploymentCreatedAt" => "", "latestDeploymentStatus" => "", "scopes" => [], "vars" => [], "timeout" => 15, "installCommand" => "", "buildCommand" => "", "startCommand" => "", "outputDirectory" => "", "installationId" => "", "providerRepositoryId" => "", "providerBranch" => "", "providerRootDirectory" => "", "providerSilentMode" => false, "providerBranches" => [], "providerPaths" => [], "buildSpecification" => "s-1vcpu-512mb", "runtimeSpecification" => "s-1vcpu-512mb", "buildRuntime" => "" }.merge(map)
118
121
  Site.new(
119
122
  id: map["$id"],
120
123
  created_at: map["$createdAt"],
121
124
  updated_at: map["$updatedAt"],
122
125
  name: map["name"],
126
+ description: map["description"],
123
127
  enabled: map["enabled"],
124
128
  live: map["live"],
125
129
  logging: map["logging"],
@@ -160,6 +164,7 @@ module Appwrite
160
164
  "$createdAt": @created_at,
161
165
  "$updatedAt": @updated_at,
162
166
  "name": @name,
167
+ "description": @description,
163
168
  "enabled": @enabled,
164
169
  "live": @live,
165
170
  "logging": @logging,
@@ -9,6 +9,7 @@ module Appwrite
9
9
  attr_reader :permissions
10
10
  attr_reader :database_id
11
11
  attr_reader :name
12
+ attr_reader :description
12
13
  attr_reader :enabled
13
14
  attr_reader :row_security
14
15
  attr_reader :columns
@@ -23,6 +24,7 @@ module Appwrite
23
24
  permissions:,
24
25
  database_id:,
25
26
  name:,
27
+ description:,
26
28
  enabled:,
27
29
  row_security:,
28
30
  columns:,
@@ -36,6 +38,7 @@ module Appwrite
36
38
  @permissions = permissions
37
39
  @database_id = database_id
38
40
  @name = name
41
+ @description = description
39
42
  @enabled = enabled
40
43
  @row_security = row_security
41
44
  @columns = columns
@@ -45,7 +48,7 @@ module Appwrite
45
48
  end
46
49
 
47
50
  def self.from(map:)
48
- map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "$permissions" => [], "databaseId" => "", "name" => "", "enabled" => true, "rowSecurity" => false, "columns" => [], "indexes" => [], "bytesMax" => 0, "bytesUsed" => 0 }.merge(map)
51
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "$permissions" => [], "databaseId" => "", "name" => "", "description" => "", "enabled" => true, "rowSecurity" => false, "columns" => [], "indexes" => [], "bytesMax" => 0, "bytesUsed" => 0 }.merge(map)
49
52
  Table.new(
50
53
  id: map["$id"],
51
54
  created_at: map["$createdAt"],
@@ -53,6 +56,7 @@ module Appwrite
53
56
  permissions: map["$permissions"],
54
57
  database_id: map["databaseId"],
55
58
  name: map["name"],
59
+ description: map["description"],
56
60
  enabled: map["enabled"],
57
61
  row_security: map["rowSecurity"],
58
62
  columns: map["columns"],
@@ -70,6 +74,7 @@ module Appwrite
70
74
  "$permissions": @permissions,
71
75
  "databaseId": @database_id,
72
76
  "name": @name,
77
+ "description": @description,
73
78
  "enabled": @enabled,
74
79
  "rowSecurity": @row_security,
75
80
  "columns": @columns,
@@ -7,6 +7,7 @@ module Appwrite
7
7
  attr_reader :created_at
8
8
  attr_reader :updated_at
9
9
  attr_reader :name
10
+ attr_reader :description
10
11
  attr_reader :email_total
11
12
  attr_reader :sms_total
12
13
  attr_reader :push_total
@@ -19,6 +20,7 @@ module Appwrite
19
20
  created_at:,
20
21
  updated_at:,
21
22
  name:,
23
+ description:,
22
24
  email_total:,
23
25
  sms_total:,
24
26
  push_total:,
@@ -30,6 +32,7 @@ module Appwrite
30
32
  @created_at = created_at
31
33
  @updated_at = updated_at
32
34
  @name = name
35
+ @description = description
33
36
  @email_total = email_total
34
37
  @sms_total = sms_total
35
38
  @push_total = push_total
@@ -39,12 +42,13 @@ module Appwrite
39
42
  end
40
43
 
41
44
  def self.from(map:)
42
- map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "name" => "", "emailTotal" => 0, "smsTotal" => 0, "pushTotal" => 0, "subscribe" => ["users"] }.merge(map)
45
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "name" => "", "description" => "", "emailTotal" => 0, "smsTotal" => 0, "pushTotal" => 0, "subscribe" => ["users"] }.merge(map)
43
46
  Topic.new(
44
47
  id: map["$id"],
45
48
  created_at: map["$createdAt"],
46
49
  updated_at: map["$updatedAt"],
47
50
  name: map["name"],
51
+ description: map["description"],
48
52
  email_total: map["emailTotal"],
49
53
  sms_total: map["smsTotal"],
50
54
  push_total: map["pushTotal"],
@@ -60,6 +64,7 @@ module Appwrite
60
64
  "$createdAt": @created_at,
61
65
  "$updatedAt": @updated_at,
62
66
  "name": @name,
67
+ "description": @description,
63
68
  "emailTotal": @email_total,
64
69
  "smsTotal": @sms_total,
65
70
  "pushTotal": @push_total,
@@ -7,6 +7,7 @@ module Appwrite
7
7
  attr_reader :created_at
8
8
  attr_reader :updated_at
9
9
  attr_reader :key
10
+ attr_reader :description
10
11
  attr_reader :value
11
12
  attr_reader :secret
12
13
  attr_reader :resource_type
@@ -17,6 +18,7 @@ module Appwrite
17
18
  created_at:,
18
19
  updated_at:,
19
20
  key:,
21
+ description:,
20
22
  value:,
21
23
  secret:,
22
24
  resource_type:,
@@ -26,6 +28,7 @@ module Appwrite
26
28
  @created_at = created_at
27
29
  @updated_at = updated_at
28
30
  @key = key
31
+ @description = description
29
32
  @value = value
30
33
  @secret = secret
31
34
  @resource_type = resource_type
@@ -33,12 +36,13 @@ module Appwrite
33
36
  end
34
37
 
35
38
  def self.from(map:)
36
- map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "key" => "", "value" => "", "secret" => false, "resourceType" => "", "resourceId" => "" }.merge(map)
39
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "key" => "", "description" => "", "value" => "", "secret" => false, "resourceType" => "", "resourceId" => "" }.merge(map)
37
40
  Variable.new(
38
41
  id: map["$id"],
39
42
  created_at: map["$createdAt"],
40
43
  updated_at: map["$updatedAt"],
41
44
  key: map["key"],
45
+ description: map["description"],
42
46
  value: map["value"],
43
47
  secret: map["secret"],
44
48
  resource_type: map["resourceType"],
@@ -52,6 +56,7 @@ module Appwrite
52
56
  "$createdAt": @created_at,
53
57
  "$updatedAt": @updated_at,
54
58
  "key": @key,
59
+ "description": @description,
55
60
  "value": @value,
56
61
  "secret": @secret,
57
62
  "resourceType": @resource_type,
@@ -9,6 +9,7 @@ module Appwrite
9
9
  attr_reader :permissions
10
10
  attr_reader :database_id
11
11
  attr_reader :name
12
+ attr_reader :description
12
13
  attr_reader :enabled
13
14
  attr_reader :document_security
14
15
  attr_reader :attributes
@@ -24,6 +25,7 @@ module Appwrite
24
25
  permissions:,
25
26
  database_id:,
26
27
  name:,
28
+ description:,
27
29
  enabled:,
28
30
  document_security:,
29
31
  attributes:,
@@ -38,6 +40,7 @@ module Appwrite
38
40
  @permissions = permissions
39
41
  @database_id = database_id
40
42
  @name = name
43
+ @description = description
41
44
  @enabled = enabled
42
45
  @document_security = document_security
43
46
  @attributes = attributes
@@ -48,7 +51,7 @@ module Appwrite
48
51
  end
49
52
 
50
53
  def self.from(map:)
51
- map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "$permissions" => [], "databaseId" => "", "name" => "", "enabled" => true, "documentSecurity" => false, "attributes" => [], "indexes" => [], "bytesMax" => 0, "bytesUsed" => 0, "dimension" => 0 }.merge(map)
54
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "$permissions" => [], "databaseId" => "", "name" => "", "description" => "", "enabled" => true, "documentSecurity" => false, "attributes" => [], "indexes" => [], "bytesMax" => 0, "bytesUsed" => 0, "dimension" => 0 }.merge(map)
52
55
  VectorsdbCollection.new(
53
56
  id: map["$id"],
54
57
  created_at: map["$createdAt"],
@@ -56,6 +59,7 @@ module Appwrite
56
59
  permissions: map["$permissions"],
57
60
  database_id: map["databaseId"],
58
61
  name: map["name"],
62
+ description: map["description"],
59
63
  enabled: map["enabled"],
60
64
  document_security: map["documentSecurity"],
61
65
  attributes: map["attributes"],
@@ -74,6 +78,7 @@ module Appwrite
74
78
  "$permissions": @permissions,
75
79
  "databaseId": @database_id,
76
80
  "name": @name,
81
+ "description": @description,
77
82
  "enabled": @enabled,
78
83
  "documentSecurity": @document_security,
79
84
  "attributes": @attributes,
@@ -7,6 +7,7 @@ module Appwrite
7
7
  attr_reader :created_at
8
8
  attr_reader :updated_at
9
9
  attr_reader :name
10
+ attr_reader :description
10
11
  attr_reader :url
11
12
  attr_reader :events
12
13
  attr_reader :tls
@@ -22,6 +23,7 @@ module Appwrite
22
23
  created_at:,
23
24
  updated_at:,
24
25
  name:,
26
+ description:,
25
27
  url:,
26
28
  events:,
27
29
  tls:,
@@ -36,6 +38,7 @@ module Appwrite
36
38
  @created_at = created_at
37
39
  @updated_at = updated_at
38
40
  @name = name
41
+ @description = description
39
42
  @url = url
40
43
  @events = events
41
44
  @tls = tls
@@ -48,12 +51,13 @@ module Appwrite
48
51
  end
49
52
 
50
53
  def self.from(map:)
51
- map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "name" => "", "url" => "", "events" => [], "tls" => true, "authUsername" => "", "authPassword" => "", "secret" => "", "enabled" => true, "logs" => "", "attempts" => 0 }.merge(map)
54
+ map = { "$id" => "", "$createdAt" => "", "$updatedAt" => "", "name" => "", "description" => "", "url" => "", "events" => [], "tls" => true, "authUsername" => "", "authPassword" => "", "secret" => "", "enabled" => true, "logs" => "", "attempts" => 0 }.merge(map)
52
55
  Webhook.new(
53
56
  id: map["$id"],
54
57
  created_at: map["$createdAt"],
55
58
  updated_at: map["$updatedAt"],
56
59
  name: map["name"],
60
+ description: map["description"],
57
61
  url: map["url"],
58
62
  events: map["events"],
59
63
  tls: map["tls"],
@@ -72,6 +76,7 @@ module Appwrite
72
76
  "$createdAt": @created_at,
73
77
  "$updatedAt": @updated_at,
74
78
  "name": @name,
79
+ "description": @description,
75
80
  "url": @url,
76
81
  "events": @events,
77
82
  "tls": @tls,
@@ -410,6 +410,37 @@ module Appwrite
410
410
  )
411
411
  end
412
412
 
413
+ # Get the team memberships of the currently logged in user.
414
+ #
415
+ # @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: userId, teamId, invited, joined, confirm, roles
416
+ # @param [] total When set to false, the total count returned will be 0 and will not be calculated.
417
+ #
418
+ # @return [MembershipList]
419
+ def list_memberships(
420
+ queries: nil,
421
+ total: nil
422
+ )
423
+ api_path = '/account/memberships'
424
+
425
+ api_params = {
426
+ queries: queries,
427
+ total: total,
428
+ }
429
+
430
+ api_headers = {
431
+ "X-Appwrite-Project": @client.get_config('project'),
432
+ "accept": 'application/json',
433
+ }
434
+
435
+ @client.call(
436
+ method: 'GET',
437
+ path: api_path,
438
+ headers: api_headers,
439
+ params: api_params,
440
+ response_type: Models::MembershipList
441
+ )
442
+ end
443
+
413
444
  # Enable or disable MFA on an account.
414
445
  #
415
446
  # @param [] mfa Enable or disable MFA.
@@ -1185,6 +1216,15 @@ module Appwrite
1185
1216
  # the only valid redirect URLs are the ones from domains you have set when
1186
1217
  # adding your platforms in the console interface.
1187
1218
  #
1219
+ # The new password must satisfy the project's enabled password policies,
1220
+ # including custom deny lists. Dictionary entries match the entire password
1221
+ # case-sensitively; personal-data terms match substrings case-insensitively.
1222
+ # Personal-data validation runs after token verification against the
1223
+ # recovered user's ID, name, email, and phone, closing the previous recovery
1224
+ # gap for profile-based checks. A rejected password leaves the existing
1225
+ # credentials unchanged and the recovery token usable.
1226
+ #
1227
+ #
1188
1228
  # @param [String] user_id User ID.
1189
1229
  # @param [String] secret Valid reset token.
1190
1230
  # @param [String] password New user password. Must be between 8 and 256 chars.
@@ -1286,6 +1326,14 @@ module Appwrite
1286
1326
  # email and the new **password** to set. If confirmed, this route will return
1287
1327
  # a 200 status code, the code is consumed and the user's password is updated.
1288
1328
  #
1329
+ # The new password must satisfy the project's enabled password policies,
1330
+ # including custom deny lists. Dictionary entries match the entire password
1331
+ # case-sensitively; personal-data terms match substrings case-insensitively.
1332
+ # Personal-data validation runs after token verification against the
1333
+ # recovered user's ID, name, email, and phone, closing the previous recovery
1334
+ # gap for profile-based checks. A rejected password leaves the existing
1335
+ # credentials unchanged and the recovery token usable.
1336
+ #
1289
1337
  #
1290
1338
  # @param [String] user_id User ID.
1291
1339
  # @param [String] secret Valid recovery OTP code.
@@ -9,15 +9,18 @@ module Appwrite
9
9
  # List all events for selected filters.
10
10
  #
11
11
  # @param [Array] queries Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/databases#querying-documents). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on attributes such as userId, teamId, etc.
12
+ # @param [] total When set to false, the total count returned will be 0 and will not be calculated.
12
13
  #
13
14
  # @return [ActivityEventList]
14
15
  def list_events(
15
- queries: nil
16
+ queries: nil,
17
+ total: nil
16
18
  )
17
19
  api_path = '/activities/events'
18
20
 
19
21
  api_params = {
20
22
  queries: queries,
23
+ total: total,
21
24
  }
22
25
 
23
26
  api_headers = {