appwrite 21.1.0 → 23.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 (56) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appwrite/client.rb +48 -2
  3. data/lib/appwrite/enums/backup_services.rb +3 -0
  4. data/lib/appwrite/enums/build_runtime.rb +2 -0
  5. data/lib/appwrite/enums/database_type.rb +2 -0
  6. data/lib/appwrite/enums/databases_index_type.rb +10 -0
  7. data/lib/appwrite/enums/o_auth_provider.rb +1 -0
  8. data/lib/appwrite/enums/platform_type.rb +11 -0
  9. data/lib/appwrite/enums/protocol_id.rb +9 -0
  10. data/lib/appwrite/enums/runtime.rb +2 -0
  11. data/lib/appwrite/enums/scopes.rb +8 -0
  12. data/lib/appwrite/enums/service_id.rb +23 -0
  13. data/lib/appwrite/enums/{index_type.rb → tables_db_index_type.rb} +1 -1
  14. data/lib/appwrite/enums/template_reference_type.rb +1 -1
  15. data/lib/appwrite/models/auth_provider.rb +47 -0
  16. data/lib/appwrite/models/billing_limits.rb +62 -0
  17. data/lib/appwrite/models/block.rb +47 -0
  18. data/lib/appwrite/models/database.rb +2 -0
  19. data/lib/appwrite/models/dev_key.rb +62 -0
  20. data/lib/appwrite/models/function.rb +15 -5
  21. data/lib/appwrite/models/key.rb +67 -0
  22. data/lib/appwrite/models/key_list.rb +32 -0
  23. data/lib/appwrite/models/log.rb +5 -0
  24. data/lib/appwrite/models/mock_number.rb +32 -0
  25. data/lib/appwrite/models/platform_android.rb +71 -0
  26. data/lib/appwrite/models/platform_apple.rb +71 -0
  27. data/lib/appwrite/models/platform_linux.rb +71 -0
  28. data/lib/appwrite/models/platform_list.rb +32 -0
  29. data/lib/appwrite/models/platform_web.rb +71 -0
  30. data/lib/appwrite/models/platform_windows.rb +71 -0
  31. data/lib/appwrite/models/project.rb +412 -0
  32. data/lib/appwrite/models/site.rb +20 -5
  33. data/lib/appwrite/models/user.rb +13 -3
  34. data/lib/appwrite/models/webhook.rb +87 -0
  35. data/lib/appwrite/models/webhook_list.rb +32 -0
  36. data/lib/appwrite/service.rb +1 -1
  37. data/lib/appwrite/services/account.rb +47 -2
  38. data/lib/appwrite/services/activities.rb +3 -1
  39. data/lib/appwrite/services/avatars.rb +9 -1
  40. data/lib/appwrite/services/backups.rb +13 -1
  41. data/lib/appwrite/services/databases.rb +133 -7
  42. data/lib/appwrite/services/functions.rb +41 -7
  43. data/lib/appwrite/services/graphql.rb +5 -3
  44. data/lib/appwrite/services/health.rb +22 -117
  45. data/lib/appwrite/services/locale.rb +9 -1
  46. data/lib/appwrite/services/messaging.rb +49 -1
  47. data/lib/appwrite/services/project.rb +1011 -0
  48. data/lib/appwrite/services/sites.rb +44 -7
  49. data/lib/appwrite/services/storage.rb +14 -1
  50. data/lib/appwrite/services/tables_db.rb +133 -7
  51. data/lib/appwrite/services/teams.rb +14 -1
  52. data/lib/appwrite/services/tokens.rb +6 -1
  53. data/lib/appwrite/services/users.rb +85 -2
  54. data/lib/appwrite/services/webhooks.rb +249 -0
  55. data/lib/appwrite.rb +23 -1
  56. metadata +25 -3
@@ -34,6 +34,7 @@ module Appwrite
34
34
  params: api_params,
35
35
  response_type: Models::SiteList
36
36
  )
37
+
37
38
  end
38
39
 
39
40
  # Create a new site.
@@ -47,6 +48,7 @@ module Appwrite
47
48
  # @param [Integer] timeout Maximum request time in seconds.
48
49
  # @param [String] install_command Install Command.
49
50
  # @param [String] build_command Build Command.
51
+ # @param [String] start_command Custom start command. Leave empty to use default.
50
52
  # @param [String] output_directory Output Directory for site.
51
53
  # @param [Adapter] adapter Framework adapter defining rendering strategy. Allowed values are: static, ssr
52
54
  # @param [String] installation_id Appwrite Installation ID for VCS (Version Control System) deployment.
@@ -55,10 +57,12 @@ module Appwrite
55
57
  # @param [String] provider_branch Production branch for the repo linked to the site.
56
58
  # @param [] provider_silent_mode Is the VCS (Version Control System) connection in silent mode for the repo linked to the site? In silent mode, comments will not be made on commits and pull requests.
57
59
  # @param [String] provider_root_directory Path to site code in the linked repo.
58
- # @param [String] specification Framework specification for the site and builds.
60
+ # @param [String] build_specification Build specification for the site deployments.
61
+ # @param [String] runtime_specification Runtime specification for the SSR executions.
62
+ # @param [Integer] deployment_retention Days to keep non-active deployments before deletion. Value 0 means all deployments will be kept.
59
63
  #
60
64
  # @return [Site]
61
- def create(site_id:, name:, framework:, build_runtime:, enabled: nil, logging: nil, timeout: nil, install_command: nil, build_command: nil, output_directory: nil, adapter: nil, installation_id: nil, fallback_file: nil, provider_repository_id: nil, provider_branch: nil, provider_silent_mode: nil, provider_root_directory: nil, specification: nil)
65
+ def create(site_id:, name:, framework:, build_runtime:, enabled: nil, logging: nil, timeout: nil, install_command: nil, build_command: nil, start_command: nil, output_directory: nil, adapter: nil, installation_id: nil, fallback_file: nil, provider_repository_id: nil, provider_branch: nil, provider_silent_mode: nil, provider_root_directory: nil, build_specification: nil, runtime_specification: nil, deployment_retention: nil)
62
66
  api_path = '/sites'
63
67
 
64
68
  if site_id.nil?
@@ -86,6 +90,7 @@ module Appwrite
86
90
  timeout: timeout,
87
91
  installCommand: install_command,
88
92
  buildCommand: build_command,
93
+ startCommand: start_command,
89
94
  outputDirectory: output_directory,
90
95
  buildRuntime: build_runtime,
91
96
  adapter: adapter,
@@ -95,7 +100,9 @@ module Appwrite
95
100
  providerBranch: provider_branch,
96
101
  providerSilentMode: provider_silent_mode,
97
102
  providerRootDirectory: provider_root_directory,
98
- specification: specification,
103
+ buildSpecification: build_specification,
104
+ runtimeSpecification: runtime_specification,
105
+ deploymentRetention: deployment_retention,
99
106
  }
100
107
 
101
108
  api_headers = {
@@ -109,6 +116,7 @@ module Appwrite
109
116
  params: api_params,
110
117
  response_type: Models::Site
111
118
  )
119
+
112
120
  end
113
121
 
114
122
  # Get a list of all frameworks that are currently available on the server
@@ -132,6 +140,7 @@ module Appwrite
132
140
  params: api_params,
133
141
  response_type: Models::FrameworkList
134
142
  )
143
+
135
144
  end
136
145
 
137
146
  # List allowed site specifications for this instance.
@@ -154,6 +163,7 @@ module Appwrite
154
163
  params: api_params,
155
164
  response_type: Models::SpecificationList
156
165
  )
166
+
157
167
  end
158
168
 
159
169
  # Get a site by its unique ID.
@@ -182,6 +192,7 @@ module Appwrite
182
192
  params: api_params,
183
193
  response_type: Models::Site
184
194
  )
195
+
185
196
  end
186
197
 
187
198
  # Update site by its unique ID.
@@ -194,6 +205,7 @@ module Appwrite
194
205
  # @param [Integer] timeout Maximum request time in seconds.
195
206
  # @param [String] install_command Install Command.
196
207
  # @param [String] build_command Build Command.
208
+ # @param [String] start_command Custom start command. Leave empty to use default.
197
209
  # @param [String] output_directory Output Directory for site.
198
210
  # @param [BuildRuntime] build_runtime Runtime to use during build step.
199
211
  # @param [Adapter] adapter Framework adapter defining rendering strategy. Allowed values are: static, ssr
@@ -203,10 +215,12 @@ module Appwrite
203
215
  # @param [String] provider_branch Production branch for the repo linked to the site.
204
216
  # @param [] provider_silent_mode Is the VCS (Version Control System) connection in silent mode for the repo linked to the site? In silent mode, comments will not be made on commits and pull requests.
205
217
  # @param [String] provider_root_directory Path to site code in the linked repo.
206
- # @param [String] specification Framework specification for the site and builds.
218
+ # @param [String] build_specification Build specification for the site deployments.
219
+ # @param [String] runtime_specification Runtime specification for the SSR executions.
220
+ # @param [Integer] deployment_retention Days to keep non-active deployments before deletion. Value 0 means all deployments will be kept.
207
221
  #
208
222
  # @return [Site]
209
- def update(site_id:, name:, framework:, enabled: nil, logging: nil, timeout: nil, install_command: nil, build_command: nil, output_directory: nil, build_runtime: nil, adapter: nil, fallback_file: nil, installation_id: nil, provider_repository_id: nil, provider_branch: nil, provider_silent_mode: nil, provider_root_directory: nil, specification: nil)
223
+ def update(site_id:, name:, framework:, enabled: nil, logging: nil, timeout: nil, install_command: nil, build_command: nil, start_command: nil, output_directory: nil, build_runtime: nil, adapter: nil, fallback_file: nil, installation_id: nil, provider_repository_id: nil, provider_branch: nil, provider_silent_mode: nil, provider_root_directory: nil, build_specification: nil, runtime_specification: nil, deployment_retention: nil)
210
224
  api_path = '/sites/{siteId}'
211
225
  .gsub('{siteId}', site_id)
212
226
 
@@ -230,6 +244,7 @@ module Appwrite
230
244
  timeout: timeout,
231
245
  installCommand: install_command,
232
246
  buildCommand: build_command,
247
+ startCommand: start_command,
233
248
  outputDirectory: output_directory,
234
249
  buildRuntime: build_runtime,
235
250
  adapter: adapter,
@@ -239,7 +254,9 @@ module Appwrite
239
254
  providerBranch: provider_branch,
240
255
  providerSilentMode: provider_silent_mode,
241
256
  providerRootDirectory: provider_root_directory,
242
- specification: specification,
257
+ buildSpecification: build_specification,
258
+ runtimeSpecification: runtime_specification,
259
+ deploymentRetention: deployment_retention,
243
260
  }
244
261
 
245
262
  api_headers = {
@@ -253,6 +270,7 @@ module Appwrite
253
270
  params: api_params,
254
271
  response_type: Models::Site
255
272
  )
273
+
256
274
  end
257
275
 
258
276
  # Delete a site by its unique ID.
@@ -281,6 +299,7 @@ module Appwrite
281
299
  headers: api_headers,
282
300
  params: api_params,
283
301
  )
302
+
284
303
  end
285
304
 
286
305
  # Update the site active deployment. Use this endpoint to switch the code
@@ -317,6 +336,7 @@ module Appwrite
317
336
  params: api_params,
318
337
  response_type: Models::Site
319
338
  )
339
+
320
340
  end
321
341
 
322
342
  # Get a list of all the site's code deployments. You can use the query params
@@ -352,6 +372,7 @@ module Appwrite
352
372
  params: api_params,
353
373
  response_type: Models::DeploymentList
354
374
  )
375
+
355
376
  end
356
377
 
357
378
  # Create a new site code deployment. Use this endpoint to upload a new
@@ -402,6 +423,7 @@ module Appwrite
402
423
  on_progress: on_progress,
403
424
  response_type: Models::Deployment
404
425
  )
426
+
405
427
  end
406
428
 
407
429
  # Create a new build for an existing site deployment. This endpoint allows
@@ -441,6 +463,7 @@ module Appwrite
441
463
  params: api_params,
442
464
  response_type: Models::Deployment
443
465
  )
466
+
444
467
  end
445
468
 
446
469
  # Create a deployment based on a template.
@@ -506,6 +529,7 @@ module Appwrite
506
529
  params: api_params,
507
530
  response_type: Models::Deployment
508
531
  )
532
+
509
533
  end
510
534
 
511
535
  # Create a deployment when a site is connected to VCS.
@@ -551,6 +575,7 @@ module Appwrite
551
575
  params: api_params,
552
576
  response_type: Models::Deployment
553
577
  )
578
+
554
579
  end
555
580
 
556
581
  # Get a site deployment by its unique ID.
@@ -585,6 +610,7 @@ module Appwrite
585
610
  params: api_params,
586
611
  response_type: Models::Deployment
587
612
  )
613
+
588
614
  end
589
615
 
590
616
  # Delete a site deployment by its unique ID.
@@ -619,6 +645,7 @@ module Appwrite
619
645
  headers: api_headers,
620
646
  params: api_params,
621
647
  )
648
+
622
649
  end
623
650
 
624
651
  # Get a site deployment content by its unique ID. The endpoint response
@@ -656,6 +683,7 @@ module Appwrite
656
683
  headers: api_headers,
657
684
  params: api_params,
658
685
  )
686
+
659
687
  end
660
688
 
661
689
  # Cancel an ongoing site deployment build. If the build is already in
@@ -695,6 +723,7 @@ module Appwrite
695
723
  params: api_params,
696
724
  response_type: Models::Deployment
697
725
  )
726
+
698
727
  end
699
728
 
700
729
  # Get a list of all site logs. You can use the query params to filter your
@@ -728,6 +757,7 @@ module Appwrite
728
757
  params: api_params,
729
758
  response_type: Models::ExecutionList
730
759
  )
760
+
731
761
  end
732
762
 
733
763
  # Get a site request log by its unique ID.
@@ -762,6 +792,7 @@ module Appwrite
762
792
  params: api_params,
763
793
  response_type: Models::Execution
764
794
  )
795
+
765
796
  end
766
797
 
767
798
  # Delete a site log by its unique ID.
@@ -796,6 +827,7 @@ module Appwrite
796
827
  headers: api_headers,
797
828
  params: api_params,
798
829
  )
830
+
799
831
  end
800
832
 
801
833
  # Get a list of all variables of a specific site.
@@ -824,6 +856,7 @@ module Appwrite
824
856
  params: api_params,
825
857
  response_type: Models::VariableList
826
858
  )
859
+
827
860
  end
828
861
 
829
862
  # Create a new site variable. These variables can be accessed during build
@@ -868,6 +901,7 @@ module Appwrite
868
901
  params: api_params,
869
902
  response_type: Models::Variable
870
903
  )
904
+
871
905
  end
872
906
 
873
907
  # Get a variable by its unique ID.
@@ -902,6 +936,7 @@ module Appwrite
902
936
  params: api_params,
903
937
  response_type: Models::Variable
904
938
  )
939
+
905
940
  end
906
941
 
907
942
  # Update variable by its unique ID.
@@ -947,6 +982,7 @@ module Appwrite
947
982
  params: api_params,
948
983
  response_type: Models::Variable
949
984
  )
985
+
950
986
  end
951
987
 
952
988
  # Delete a variable by its unique ID.
@@ -981,7 +1017,8 @@ module Appwrite
981
1017
  headers: api_headers,
982
1018
  params: api_params,
983
1019
  )
1020
+
984
1021
  end
985
1022
 
986
1023
  end
987
- end
1024
+ end
@@ -34,6 +34,7 @@ module Appwrite
34
34
  params: api_params,
35
35
  response_type: Models::BucketList
36
36
  )
37
+
37
38
  end
38
39
 
39
40
  # Create a new storage bucket.
@@ -87,6 +88,7 @@ module Appwrite
87
88
  params: api_params,
88
89
  response_type: Models::Bucket
89
90
  )
91
+
90
92
  end
91
93
 
92
94
  # Get a storage bucket by its unique ID. This endpoint response returns a
@@ -116,6 +118,7 @@ module Appwrite
116
118
  params: api_params,
117
119
  response_type: Models::Bucket
118
120
  )
121
+
119
122
  end
120
123
 
121
124
  # Update a storage bucket by its unique ID.
@@ -169,6 +172,7 @@ module Appwrite
169
172
  params: api_params,
170
173
  response_type: Models::Bucket
171
174
  )
175
+
172
176
  end
173
177
 
174
178
  # Delete a storage bucket by its unique ID.
@@ -197,6 +201,7 @@ module Appwrite
197
201
  headers: api_headers,
198
202
  params: api_params,
199
203
  )
204
+
200
205
  end
201
206
 
202
207
  # Get a list of all the user files. You can use the query params to filter
@@ -232,6 +237,7 @@ module Appwrite
232
237
  params: api_params,
233
238
  response_type: Models::FileList
234
239
  )
240
+
235
241
  end
236
242
 
237
243
  # Create a new file. Before using this route, you should create a new bucket
@@ -297,6 +303,7 @@ module Appwrite
297
303
  on_progress: on_progress,
298
304
  response_type: Models::File
299
305
  )
306
+
300
307
  end
301
308
 
302
309
  # Get a file by its unique ID. This endpoint response returns a JSON object
@@ -332,6 +339,7 @@ module Appwrite
332
339
  params: api_params,
333
340
  response_type: Models::File
334
341
  )
342
+
335
343
  end
336
344
 
337
345
  # Update a file by its unique ID. Only users with write permissions have
@@ -372,6 +380,7 @@ module Appwrite
372
380
  params: api_params,
373
381
  response_type: Models::File
374
382
  )
383
+
375
384
  end
376
385
 
377
386
  # Delete a file by its unique ID. Only users with write permissions have
@@ -407,6 +416,7 @@ module Appwrite
407
416
  headers: api_headers,
408
417
  params: api_params,
409
418
  )
419
+
410
420
  end
411
421
 
412
422
  # Get a file content by its unique ID. The endpoint response return with a
@@ -444,6 +454,7 @@ module Appwrite
444
454
  headers: api_headers,
445
455
  params: api_params,
446
456
  )
457
+
447
458
  end
448
459
 
449
460
  # Get a file preview image. Currently, this method supports preview for image
@@ -505,6 +516,7 @@ module Appwrite
505
516
  headers: api_headers,
506
517
  params: api_params,
507
518
  )
519
+
508
520
  end
509
521
 
510
522
  # Get a file content by its unique ID. This endpoint is similar to the
@@ -542,7 +554,8 @@ module Appwrite
542
554
  headers: api_headers,
543
555
  params: api_params,
544
556
  )
557
+
545
558
  end
546
559
 
547
560
  end
548
- end
561
+ end