appwrite 26.1.0 → 28.0.0.rc1
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.
- checksums.yaml +4 -4
- data/lib/appwrite/client.rb +42 -25
- data/lib/appwrite/enums/adapter.rb +1 -1
- data/lib/appwrite/enums/attribute_status.rb +1 -1
- data/lib/appwrite/enums/authentication_factor.rb +2 -1
- data/lib/appwrite/enums/authenticator_type.rb +1 -1
- data/lib/appwrite/enums/backup_services.rb +1 -1
- data/lib/appwrite/enums/billing_plan_group.rb +1 -1
- data/lib/appwrite/enums/browser.rb +1 -1
- data/lib/appwrite/enums/browser_permission.rb +1 -1
- data/lib/appwrite/enums/browser_theme.rb +1 -1
- data/lib/appwrite/enums/build_runtime.rb +3 -1
- data/lib/appwrite/enums/column_status.rb +1 -1
- data/lib/appwrite/enums/compression.rb +1 -1
- data/lib/appwrite/enums/credit_card.rb +1 -1
- data/lib/appwrite/enums/database_status.rb +1 -1
- data/lib/appwrite/enums/database_type.rb +1 -1
- data/lib/appwrite/enums/databases_index_type.rb +1 -1
- data/lib/appwrite/enums/deployment_download_type.rb +1 -1
- data/lib/appwrite/enums/deployment_status.rb +1 -1
- data/lib/appwrite/enums/documents_db_index_type.rb +9 -0
- data/lib/appwrite/enums/embedding_model.rb +8 -0
- data/lib/appwrite/enums/execution_method.rb +1 -1
- data/lib/appwrite/enums/execution_resource_type.rb +8 -0
- data/lib/appwrite/enums/execution_status.rb +1 -1
- data/lib/appwrite/enums/execution_trigger.rb +1 -1
- data/lib/appwrite/enums/flag.rb +1 -1
- data/lib/appwrite/enums/framework.rb +1 -1
- data/lib/appwrite/enums/image_format.rb +1 -1
- data/lib/appwrite/enums/image_gravity.rb +1 -1
- data/lib/appwrite/enums/index_status.rb +1 -1
- data/lib/appwrite/enums/invalidation_type.rb +9 -0
- data/lib/appwrite/enums/message_priority.rb +1 -1
- data/lib/appwrite/enums/message_status.rb +1 -1
- data/lib/appwrite/enums/messaging_provider_type.rb +1 -1
- data/lib/appwrite/enums/o_auth2_google_prompt.rb +1 -1
- data/lib/appwrite/enums/o_auth2_oidc_prompt.rb +1 -1
- data/lib/appwrite/enums/o_auth_provider.rb +2 -1
- data/lib/appwrite/enums/order_by.rb +1 -1
- data/lib/appwrite/enums/organization_key_scopes.rb +1 -1
- data/lib/appwrite/enums/password_hash.rb +1 -1
- data/lib/appwrite/enums/platform_type.rb +1 -1
- data/lib/appwrite/enums/project_auth_method_id.rb +1 -1
- data/lib/appwrite/enums/project_email_template_id.rb +1 -1
- data/lib/appwrite/enums/project_email_template_locale.rb +1 -1
- data/lib/appwrite/enums/project_key_scopes.rb +16 -3
- data/lib/appwrite/enums/project_o_auth2_google_prompt.rb +1 -1
- data/lib/appwrite/enums/project_o_auth2_oidc_prompt.rb +1 -1
- data/lib/appwrite/enums/project_o_auth_provider_id.rb +2 -1
- data/lib/appwrite/enums/project_policy_id.rb +2 -1
- data/lib/appwrite/enums/project_protocol_id.rb +1 -1
- data/lib/appwrite/enums/project_service_id.rb +1 -1
- data/lib/appwrite/enums/project_smtp_secure.rb +1 -1
- data/lib/appwrite/enums/proxy_resource_type.rb +1 -1
- data/lib/appwrite/enums/proxy_rule_deployment_resource_type.rb +1 -1
- data/lib/appwrite/enums/proxy_rule_status.rb +1 -1
- data/lib/appwrite/enums/region.rb +1 -1
- data/lib/appwrite/enums/relation_mutate.rb +1 -1
- data/lib/appwrite/enums/relationship_type.rb +1 -1
- data/lib/appwrite/enums/runtime.rb +3 -1
- data/lib/appwrite/enums/smtp_encryption.rb +1 -1
- data/lib/appwrite/enums/status_code.rb +1 -1
- data/lib/appwrite/enums/tables_db_index_type.rb +1 -1
- data/lib/appwrite/enums/template_reference_type.rb +1 -1
- data/lib/appwrite/enums/timezone.rb +1 -1
- data/lib/appwrite/enums/vcs_reference_type.rb +1 -1
- data/lib/appwrite/enums/vectors_db_index_type.rb +12 -0
- data/lib/appwrite/exception.rb +1 -1
- data/lib/appwrite/id.rb +3 -3
- data/lib/appwrite/input_file.rb +1 -1
- data/lib/appwrite/models/activity_event.rb +1 -1
- data/lib/appwrite/models/activity_event_list.rb +1 -1
- data/lib/appwrite/models/additional_resource.rb +1 -1
- data/lib/appwrite/models/algo_argon2.rb +1 -1
- data/lib/appwrite/models/algo_bcrypt.rb +1 -1
- data/lib/appwrite/models/algo_md5.rb +1 -1
- data/lib/appwrite/models/algo_phpass.rb +1 -1
- data/lib/appwrite/models/algo_scrypt.rb +1 -1
- data/lib/appwrite/models/algo_scrypt_modified.rb +1 -1
- data/lib/appwrite/models/algo_sha.rb +1 -1
- data/lib/appwrite/models/app.rb +1 -1
- data/lib/appwrite/models/app_installation.rb +2 -2
- data/lib/appwrite/models/app_installation_list.rb +1 -1
- data/lib/appwrite/models/app_key.rb +2 -2
- data/lib/appwrite/models/app_key_list.rb +1 -1
- data/lib/appwrite/models/app_scope.rb +1 -1
- data/lib/appwrite/models/app_scope_list.rb +1 -1
- data/lib/appwrite/models/app_secret.rb +2 -2
- data/lib/appwrite/models/app_secret_list.rb +1 -1
- data/lib/appwrite/models/app_secret_plaintext.rb +2 -2
- data/lib/appwrite/models/apps_list.rb +1 -1
- data/lib/appwrite/models/attribute_bigint.rb +5 -6
- data/lib/appwrite/models/attribute_boolean.rb +3 -4
- data/lib/appwrite/models/attribute_datetime.rb +3 -4
- data/lib/appwrite/models/attribute_email.rb +3 -4
- data/lib/appwrite/models/attribute_enum.rb +3 -4
- data/lib/appwrite/models/attribute_float.rb +5 -6
- data/lib/appwrite/models/attribute_integer.rb +5 -6
- data/lib/appwrite/models/attribute_ip.rb +3 -4
- data/lib/appwrite/models/attribute_line.rb +3 -4
- data/lib/appwrite/models/attribute_list.rb +1 -1
- data/lib/appwrite/models/attribute_longtext.rb +4 -5
- data/lib/appwrite/models/attribute_mediumtext.rb +4 -5
- data/lib/appwrite/models/attribute_object.rb +80 -0
- data/lib/appwrite/models/attribute_point.rb +3 -4
- data/lib/appwrite/models/attribute_polygon.rb +3 -4
- data/lib/appwrite/models/attribute_relationship.rb +2 -3
- data/lib/appwrite/models/attribute_string.rb +4 -5
- data/lib/appwrite/models/attribute_text.rb +4 -5
- data/lib/appwrite/models/attribute_url.rb +3 -4
- data/lib/appwrite/models/attribute_varchar.rb +4 -5
- data/lib/appwrite/models/attribute_vector.rb +85 -0
- data/lib/appwrite/models/backup_archive.rb +3 -3
- data/lib/appwrite/models/backup_archive_list.rb +1 -1
- data/lib/appwrite/models/backup_policy.rb +3 -3
- data/lib/appwrite/models/backup_policy_list.rb +1 -1
- data/lib/appwrite/models/backup_restoration.rb +1 -1
- data/lib/appwrite/models/backup_restoration_list.rb +1 -1
- data/lib/appwrite/models/billing_limits.rb +9 -9
- data/lib/appwrite/models/billing_plan.rb +15 -6
- data/lib/appwrite/models/billing_plan_addon.rb +5 -5
- data/lib/appwrite/models/billing_plan_addon_details.rb +1 -1
- data/lib/appwrite/models/billing_plan_dedicated_database_limits.rb +20 -20
- data/lib/appwrite/models/billing_plan_limits.rb +3 -3
- data/lib/appwrite/models/billing_plan_supported_addons.rb +1 -1
- data/lib/appwrite/models/block.rb +3 -3
- data/lib/appwrite/models/bucket.rb +1 -1
- data/lib/appwrite/models/bucket_list.rb +1 -1
- data/lib/appwrite/models/collection.rb +1 -1
- data/lib/appwrite/models/collection_list.rb +1 -1
- data/lib/appwrite/models/column_bigint.rb +5 -6
- data/lib/appwrite/models/column_boolean.rb +3 -4
- data/lib/appwrite/models/column_datetime.rb +3 -4
- data/lib/appwrite/models/column_email.rb +3 -4
- data/lib/appwrite/models/column_enum.rb +3 -4
- data/lib/appwrite/models/column_float.rb +5 -6
- data/lib/appwrite/models/column_index.rb +2 -2
- data/lib/appwrite/models/column_index_list.rb +1 -1
- data/lib/appwrite/models/column_integer.rb +5 -6
- data/lib/appwrite/models/column_ip.rb +3 -4
- data/lib/appwrite/models/column_line.rb +3 -4
- data/lib/appwrite/models/column_list.rb +1 -1
- data/lib/appwrite/models/column_longtext.rb +4 -5
- data/lib/appwrite/models/column_mediumtext.rb +4 -5
- data/lib/appwrite/models/column_point.rb +3 -4
- data/lib/appwrite/models/column_polygon.rb +3 -4
- data/lib/appwrite/models/column_relationship.rb +2 -3
- data/lib/appwrite/models/column_string.rb +4 -5
- data/lib/appwrite/models/column_text.rb +4 -5
- data/lib/appwrite/models/column_url.rb +3 -4
- data/lib/appwrite/models/column_varchar.rb +4 -5
- data/lib/appwrite/models/continent.rb +1 -1
- data/lib/appwrite/models/continent_list.rb +1 -1
- data/lib/appwrite/models/country.rb +1 -1
- data/lib/appwrite/models/country_list.rb +1 -1
- data/lib/appwrite/models/currency.rb +1 -1
- data/lib/appwrite/models/currency_list.rb +1 -1
- data/lib/appwrite/models/database.rb +22 -8
- data/lib/appwrite/models/database_list.rb +1 -1
- data/lib/appwrite/models/database_migration.rb +107 -0
- data/lib/appwrite/models/database_migration_list.rb +32 -0
- data/lib/appwrite/models/database_status.rb +31 -1
- data/lib/appwrite/models/database_status_connections.rb +1 -1
- data/lib/appwrite/models/database_status_replica.rb +7 -2
- data/lib/appwrite/models/database_status_volume.rb +1 -1
- data/lib/appwrite/models/dedicated_database.rb +3 -8
- data/lib/appwrite/models/dedicated_database_backup.rb +107 -0
- data/lib/appwrite/models/dedicated_database_backup_list.rb +32 -0
- data/lib/appwrite/models/dedicated_database_backup_storage.rb +47 -0
- data/lib/appwrite/models/dedicated_database_branch.rb +82 -0
- data/lib/appwrite/models/dedicated_database_branch_list.rb +32 -0
- data/lib/appwrite/models/dedicated_database_execution.rb +52 -0
- data/lib/appwrite/models/dedicated_database_execution_column.rb +32 -0
- data/lib/appwrite/models/dedicated_database_extensions.rb +37 -0
- data/lib/appwrite/models/dedicated_database_list.rb +32 -0
- data/lib/appwrite/models/dedicated_database_member.rb +6 -1
- data/lib/appwrite/models/dedicated_database_operation.rb +77 -0
- data/lib/appwrite/models/dedicated_database_operation_list.rb +32 -0
- data/lib/appwrite/models/dedicated_database_pitr_windows.rb +32 -0
- data/lib/appwrite/models/dedicated_database_pooler.rb +72 -0
- data/lib/appwrite/models/dedicated_database_replicas.rb +26 -1
- data/lib/appwrite/models/dedicated_database_restoration.rb +82 -0
- data/lib/appwrite/models/dedicated_database_restoration_list.rb +32 -0
- data/lib/appwrite/models/dedicated_database_specification.rb +1 -1
- data/lib/appwrite/models/dedicated_database_specification_list.rb +1 -1
- data/lib/appwrite/models/dedicated_database_specification_pricing.rb +1 -6
- data/lib/appwrite/models/deployment.rb +1 -2
- data/lib/appwrite/models/deployment_list.rb +1 -1
- data/lib/appwrite/models/dev_key.rb +1 -1
- data/lib/appwrite/models/document.rb +1 -1
- data/lib/appwrite/models/document_list.rb +1 -1
- data/lib/appwrite/models/email_template.rb +1 -1
- data/lib/appwrite/models/email_template_list.rb +1 -1
- data/lib/appwrite/models/embedding.rb +42 -0
- data/lib/appwrite/models/embedding_list.rb +32 -0
- data/lib/appwrite/models/ephemeral_key.rb +1 -1
- data/lib/appwrite/models/execution.rb +25 -8
- data/lib/appwrite/models/execution_list.rb +1 -1
- data/lib/appwrite/models/file.rb +11 -1
- data/lib/appwrite/models/file_list.rb +1 -1
- data/lib/appwrite/models/framework.rb +1 -1
- data/lib/appwrite/models/framework_adapter.rb +1 -1
- data/lib/appwrite/models/framework_list.rb +1 -1
- data/lib/appwrite/models/function.rb +1 -1
- data/lib/appwrite/models/function_list.rb +1 -1
- data/lib/appwrite/models/headers.rb +1 -1
- data/lib/appwrite/models/identity.rb +1 -1
- data/lib/appwrite/models/identity_list.rb +1 -1
- data/lib/appwrite/models/index.rb +2 -3
- data/lib/appwrite/models/index_list.rb +1 -1
- data/lib/appwrite/models/insight.rb +4 -4
- data/lib/appwrite/models/insight_cta.rb +1 -1
- data/lib/appwrite/models/insight_list.rb +1 -1
- data/lib/appwrite/models/jwt.rb +1 -1
- data/lib/appwrite/models/key.rb +1 -1
- data/lib/appwrite/models/key_list.rb +1 -1
- data/lib/appwrite/models/language.rb +1 -1
- data/lib/appwrite/models/language_list.rb +1 -1
- data/lib/appwrite/models/locale.rb +12 -12
- data/lib/appwrite/models/locale_code.rb +1 -1
- data/lib/appwrite/models/locale_code_list.rb +1 -1
- data/lib/appwrite/models/log.rb +1 -1
- data/lib/appwrite/models/log_list.rb +1 -1
- data/lib/appwrite/models/membership.rb +1 -1
- data/lib/appwrite/models/membership_list.rb +1 -1
- data/lib/appwrite/models/message.rb +4 -5
- data/lib/appwrite/models/message_list.rb +1 -1
- data/lib/appwrite/models/mfa_challenge.rb +1 -1
- data/lib/appwrite/models/mfa_challenge_secret.rb +47 -0
- data/lib/appwrite/models/mfa_factors.rb +9 -4
- data/lib/appwrite/models/mfa_recovery_codes.rb +1 -1
- data/lib/appwrite/models/mfa_type.rb +1 -1
- data/lib/appwrite/models/mock_number.rb +1 -1
- data/lib/appwrite/models/mock_number_list.rb +1 -1
- data/lib/appwrite/models/o_auth2_amazon.rb +1 -1
- data/lib/appwrite/models/o_auth2_apple.rb +1 -1
- data/lib/appwrite/models/o_auth2_appwrite.rb +1 -1
- data/lib/appwrite/models/o_auth2_auth0.rb +1 -1
- data/lib/appwrite/models/o_auth2_authentik.rb +1 -1
- data/lib/appwrite/models/o_auth2_autodesk.rb +1 -1
- data/lib/appwrite/models/o_auth2_bitbucket.rb +1 -1
- data/lib/appwrite/models/o_auth2_bitly.rb +1 -1
- data/lib/appwrite/models/o_auth2_box.rb +1 -1
- data/lib/appwrite/models/o_auth2_dailymotion.rb +1 -1
- data/lib/appwrite/models/o_auth2_discord.rb +1 -1
- data/lib/appwrite/models/o_auth2_disqus.rb +1 -1
- data/lib/appwrite/models/o_auth2_dropbox.rb +1 -1
- data/lib/appwrite/models/o_auth2_etsy.rb +1 -1
- data/lib/appwrite/models/o_auth2_facebook.rb +1 -1
- data/lib/appwrite/models/o_auth2_figma.rb +1 -1
- data/lib/appwrite/models/o_auth2_fusion_auth.rb +1 -1
- data/lib/appwrite/models/o_auth2_github.rb +1 -1
- data/lib/appwrite/models/o_auth2_gitlab.rb +1 -1
- data/lib/appwrite/models/o_auth2_google.rb +18 -2
- data/lib/appwrite/models/o_auth2_hugging_face.rb +42 -0
- data/lib/appwrite/models/o_auth2_keycloak.rb +1 -1
- data/lib/appwrite/models/o_auth2_kick.rb +1 -1
- data/lib/appwrite/models/o_auth2_linkedin.rb +1 -1
- data/lib/appwrite/models/o_auth2_microsoft.rb +1 -1
- data/lib/appwrite/models/o_auth2_notion.rb +1 -1
- data/lib/appwrite/models/o_auth2_oidc.rb +20 -3
- data/lib/appwrite/models/o_auth2_okta.rb +1 -1
- data/lib/appwrite/models/o_auth2_paypal.rb +1 -1
- data/lib/appwrite/models/o_auth2_podio.rb +1 -1
- data/lib/appwrite/models/o_auth2_provider_list.rb +1 -1
- data/lib/appwrite/models/o_auth2_salesforce.rb +1 -1
- data/lib/appwrite/models/o_auth2_slack.rb +1 -1
- data/lib/appwrite/models/o_auth2_spotify.rb +1 -1
- data/lib/appwrite/models/o_auth2_stripe.rb +1 -1
- data/lib/appwrite/models/o_auth2_tradeshift.rb +1 -1
- data/lib/appwrite/models/o_auth2_twitch.rb +1 -1
- data/lib/appwrite/models/o_auth2_word_press.rb +1 -1
- data/lib/appwrite/models/o_auth2_x.rb +1 -1
- data/lib/appwrite/models/o_auth2_yahoo.rb +1 -1
- data/lib/appwrite/models/o_auth2_yandex.rb +1 -1
- data/lib/appwrite/models/o_auth2_zoho.rb +1 -1
- data/lib/appwrite/models/o_auth2_zoom.rb +1 -1
- data/lib/appwrite/models/oauth2_approve.rb +1 -1
- data/lib/appwrite/models/oauth2_authorize.rb +1 -1
- data/lib/appwrite/models/oauth2_consent.rb +1 -1
- data/lib/appwrite/models/oauth2_consent_list.rb +1 -1
- data/lib/appwrite/models/oauth2_consent_token.rb +1 -1
- data/lib/appwrite/models/oauth2_consent_token_list.rb +1 -1
- data/lib/appwrite/models/oauth2_device_authorization.rb +1 -1
- data/lib/appwrite/models/oauth2_grant.rb +1 -1
- data/lib/appwrite/models/oauth2_organization.rb +1 -1
- data/lib/appwrite/models/oauth2_organization_list.rb +1 -1
- data/lib/appwrite/models/oauth2_par.rb +1 -1
- data/lib/appwrite/models/oauth2_project.rb +1 -1
- data/lib/appwrite/models/oauth2_project_list.rb +1 -1
- data/lib/appwrite/models/oauth2_reject.rb +1 -1
- data/lib/appwrite/models/oauth2_token.rb +3 -3
- data/lib/appwrite/models/organization.rb +2 -2
- data/lib/appwrite/models/phone.rb +1 -1
- data/lib/appwrite/models/phone_list.rb +1 -1
- data/lib/appwrite/models/platform_android.rb +1 -2
- data/lib/appwrite/models/platform_apple.rb +1 -2
- data/lib/appwrite/models/platform_linux.rb +1 -2
- data/lib/appwrite/models/platform_list.rb +1 -1
- data/lib/appwrite/models/platform_web.rb +1 -2
- data/lib/appwrite/models/platform_windows.rb +1 -2
- data/lib/appwrite/models/policy_deny_aliased_email.rb +1 -1
- data/lib/appwrite/models/policy_deny_corporate_email.rb +1 -1
- data/lib/appwrite/models/policy_deny_disposable_email.rb +1 -1
- data/lib/appwrite/models/policy_deny_free_email.rb +1 -1
- data/lib/appwrite/models/policy_list.rb +1 -1
- data/lib/appwrite/models/policy_membership_privacy.rb +1 -1
- data/lib/appwrite/models/policy_mfa_factors.rb +47 -0
- data/lib/appwrite/models/policy_password_dictionary.rb +1 -1
- data/lib/appwrite/models/policy_password_history.rb +1 -1
- data/lib/appwrite/models/policy_password_personal_data.rb +1 -1
- data/lib/appwrite/models/policy_password_strength.rb +1 -1
- data/lib/appwrite/models/policy_session_alert.rb +1 -1
- data/lib/appwrite/models/policy_session_duration.rb +1 -1
- data/lib/appwrite/models/policy_session_invalidation.rb +1 -1
- data/lib/appwrite/models/policy_session_limit.rb +1 -1
- data/lib/appwrite/models/policy_user_limit.rb +1 -1
- data/lib/appwrite/models/postgres_extension.rb +42 -0
- data/lib/appwrite/models/preferences.rb +1 -1
- data/lib/appwrite/models/presence.rb +4 -4
- data/lib/appwrite/models/presence_list.rb +1 -1
- data/lib/appwrite/models/program.rb +1 -1
- data/lib/appwrite/models/project.rb +23 -18
- data/lib/appwrite/models/project_auth_method.rb +1 -2
- data/lib/appwrite/models/project_list.rb +1 -1
- data/lib/appwrite/models/project_protocol.rb +1 -2
- data/lib/appwrite/models/project_service.rb +1 -2
- data/lib/appwrite/models/provider.rb +2 -2
- data/lib/appwrite/models/provider_list.rb +1 -1
- data/lib/appwrite/models/proxy_invalidation.rb +42 -0
- data/lib/appwrite/models/proxy_rule.rb +2 -3
- data/lib/appwrite/models/proxy_rule_list.rb +1 -1
- data/lib/appwrite/models/report.rb +2 -2
- data/lib/appwrite/models/report_list.rb +1 -1
- data/lib/appwrite/models/resource_token.rb +1 -1
- data/lib/appwrite/models/resource_token_list.rb +1 -1
- data/lib/appwrite/models/row.rb +1 -1
- data/lib/appwrite/models/row_list.rb +1 -1
- data/lib/appwrite/models/runtime.rb +1 -1
- data/lib/appwrite/models/runtime_list.rb +1 -1
- data/lib/appwrite/models/session.rb +1 -1
- data/lib/appwrite/models/session_list.rb +1 -1
- data/lib/appwrite/models/site.rb +6 -1
- data/lib/appwrite/models/site_list.rb +1 -1
- data/lib/appwrite/models/specification.rb +1 -1
- data/lib/appwrite/models/specification_list.rb +1 -1
- data/lib/appwrite/models/subscriber.rb +1 -1
- data/lib/appwrite/models/subscriber_list.rb +1 -1
- data/lib/appwrite/models/table.rb +1 -1
- data/lib/appwrite/models/table_list.rb +1 -1
- data/lib/appwrite/models/target.rb +2 -2
- data/lib/appwrite/models/target_list.rb +1 -1
- data/lib/appwrite/models/team.rb +1 -1
- data/lib/appwrite/models/team_list.rb +1 -1
- data/lib/appwrite/models/token.rb +1 -1
- data/lib/appwrite/models/topic.rb +1 -1
- data/lib/appwrite/models/topic_list.rb +1 -1
- data/lib/appwrite/models/transaction.rb +1 -1
- data/lib/appwrite/models/transaction_list.rb +1 -1
- data/lib/appwrite/models/usage_billing_plan.rb +7 -7
- data/lib/appwrite/models/user.rb +11 -11
- data/lib/appwrite/models/user_list.rb +1 -1
- data/lib/appwrite/models/variable.rb +1 -1
- data/lib/appwrite/models/variable_list.rb +1 -1
- data/lib/appwrite/models/vectorsdb_collection.rb +87 -0
- data/lib/appwrite/models/vectorsdb_collection_list.rb +32 -0
- data/lib/appwrite/models/webhook.rb +1 -1
- data/lib/appwrite/models/webhook_list.rb +1 -1
- data/lib/appwrite/operator.rb +6 -0
- data/lib/appwrite/permission.rb +4 -0
- data/lib/appwrite/query.rb +4 -4
- data/lib/appwrite/role.rb +12 -14
- data/lib/appwrite/service.rb +1 -1
- data/lib/appwrite/services/account.rb +329 -322
- data/lib/appwrite/services/activities.rb +14 -15
- data/lib/appwrite/services/advisor.rb +41 -37
- data/lib/appwrite/services/apps.rb +228 -131
- data/lib/appwrite/services/avatars.rb +156 -55
- data/lib/appwrite/services/backups.rb +113 -88
- data/lib/appwrite/services/databases.rb +875 -516
- data/lib/appwrite/services/documents_db.rb +1683 -0
- data/lib/appwrite/services/embeddings.rb +48 -0
- data/lib/appwrite/services/functions.rb +277 -173
- data/lib/appwrite/services/graphql.rb +12 -12
- data/lib/appwrite/services/locale.rb +19 -37
- data/lib/appwrite/services/messaging.rb +544 -259
- data/lib/appwrite/services/mongo.rb +1359 -0
- data/lib/appwrite/services/mysql.rb +1503 -0
- data/lib/appwrite/services/oauth2.rb +122 -53
- data/lib/appwrite/services/organization.rb +153 -123
- data/lib/appwrite/services/postgresql.rb +1615 -0
- data/lib/appwrite/services/presences.rb +49 -35
- data/lib/appwrite/services/project.rb +889 -580
- data/lib/appwrite/services/proxy.rb +111 -52
- data/lib/appwrite/services/sites.rb +270 -165
- data/lib/appwrite/services/storage.rb +153 -92
- data/lib/appwrite/services/tables_db.rb +1153 -534
- data/lib/appwrite/services/teams.rb +161 -122
- data/lib/appwrite/services/tokens.rb +38 -31
- data/lib/appwrite/services/users.rb +406 -266
- data/lib/appwrite/services/vectors_db.rb +1614 -0
- data/lib/appwrite/services/webhooks.rb +59 -40
- data/lib/appwrite.rb +39 -0
- metadata +43 -4
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
#frozen_string_literal: true
|
|
1
|
+
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
module Appwrite
|
|
4
4
|
class Storage < Service
|
|
5
|
-
|
|
6
5
|
def initialize(client)
|
|
7
6
|
@client = client
|
|
8
7
|
end
|
|
@@ -15,7 +14,11 @@ module Appwrite
|
|
|
15
14
|
# @param [] total When set to false, the total count returned will be 0 and will not be calculated.
|
|
16
15
|
#
|
|
17
16
|
# @return [BucketList]
|
|
18
|
-
def list_buckets(
|
|
17
|
+
def list_buckets(
|
|
18
|
+
queries: nil,
|
|
19
|
+
search: nil,
|
|
20
|
+
total: nil
|
|
21
|
+
)
|
|
19
22
|
api_path = '/storage/buckets'
|
|
20
23
|
|
|
21
24
|
api_params = {
|
|
@@ -23,7 +26,7 @@ module Appwrite
|
|
|
23
26
|
search: search,
|
|
24
27
|
total: total,
|
|
25
28
|
}
|
|
26
|
-
|
|
29
|
+
|
|
27
30
|
api_headers = {
|
|
28
31
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
29
32
|
"accept": 'application/json',
|
|
@@ -36,33 +39,44 @@ module Appwrite
|
|
|
36
39
|
params: api_params,
|
|
37
40
|
response_type: Models::BucketList
|
|
38
41
|
)
|
|
39
|
-
|
|
40
42
|
end
|
|
41
43
|
|
|
42
44
|
# Create a new storage bucket.
|
|
43
45
|
#
|
|
44
|
-
# @param [String] bucket_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
|
|
46
|
+
# @param [String] bucket_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.
|
|
45
47
|
# @param [String] name Bucket name
|
|
46
48
|
# @param [Array] permissions An array of permission strings. By default, no user is granted with any permissions. [Learn more about permissions](https://appwrite.io/docs/permissions).
|
|
47
49
|
# @param [] file_security Enables configuring permissions for individual file. A user needs one of file or bucket level permissions to access a file. [Learn more about permissions](https://appwrite.io/docs/permissions).
|
|
48
|
-
# @param [] enabled Is bucket enabled? When set to
|
|
50
|
+
# @param [] enabled Is bucket enabled? When set to 'disabled', users cannot access the files in this bucket but Server SDKs with and API key can still access the bucket. No files are lost when this is toggled.
|
|
49
51
|
# @param [Integer] maximum_file_size Maximum file size allowed in bytes. Maximum allowed value is 5GB.
|
|
50
52
|
# @param [Array] allowed_file_extensions Allowed file extensions. Maximum of 100 extensions are allowed, each 64 characters long.
|
|
51
|
-
# @param [Compression] compression Compression algorithm chosen for compression. Can be one of none, [gzip](https://en.wikipedia.org/wiki/Gzip), or [zstd](https://en.wikipedia.org/wiki/Zstd), For file size above 20MB compression is skipped even if it
|
|
52
|
-
# @param [] encryption Is encryption enabled? For file size above 20MB encryption is skipped even if it
|
|
53
|
-
# @param [] antivirus Is virus scanning enabled? For file size above 20MB AntiVirus scanning is skipped even if it
|
|
53
|
+
# @param [Compression] compression Compression algorithm chosen for compression. Can be one of none, [gzip](https://en.wikipedia.org/wiki/Gzip), or [zstd](https://en.wikipedia.org/wiki/Zstd), For file size above 20MB compression is skipped even if it's enabled
|
|
54
|
+
# @param [] encryption Is encryption enabled? For file size above 20MB encryption is skipped even if it's enabled
|
|
55
|
+
# @param [] antivirus Is virus scanning enabled? For file size above 20MB AntiVirus scanning is skipped even if it's enabled
|
|
54
56
|
# @param [] transformations Are image transformations enabled?
|
|
55
57
|
#
|
|
56
58
|
# @return [Bucket]
|
|
57
|
-
def create_bucket(
|
|
59
|
+
def create_bucket(
|
|
60
|
+
bucket_id:,
|
|
61
|
+
name:,
|
|
62
|
+
permissions: nil,
|
|
63
|
+
file_security: nil,
|
|
64
|
+
enabled: nil,
|
|
65
|
+
maximum_file_size: nil,
|
|
66
|
+
allowed_file_extensions: nil,
|
|
67
|
+
compression: nil,
|
|
68
|
+
encryption: nil,
|
|
69
|
+
antivirus: nil,
|
|
70
|
+
transformations: nil
|
|
71
|
+
)
|
|
58
72
|
api_path = '/storage/buckets'
|
|
59
73
|
|
|
60
74
|
if bucket_id.nil?
|
|
61
|
-
|
|
75
|
+
raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
|
|
62
76
|
end
|
|
63
77
|
|
|
64
78
|
if name.nil?
|
|
65
|
-
|
|
79
|
+
raise Appwrite::Exception.new('Missing required parameter: "name"')
|
|
66
80
|
end
|
|
67
81
|
|
|
68
82
|
api_params = {
|
|
@@ -78,7 +92,7 @@ module Appwrite
|
|
|
78
92
|
antivirus: antivirus,
|
|
79
93
|
transformations: transformations,
|
|
80
94
|
}
|
|
81
|
-
|
|
95
|
+
|
|
82
96
|
api_headers = {
|
|
83
97
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
84
98
|
"content-type": 'application/json',
|
|
@@ -92,7 +106,6 @@ module Appwrite
|
|
|
92
106
|
params: api_params,
|
|
93
107
|
response_type: Models::Bucket
|
|
94
108
|
)
|
|
95
|
-
|
|
96
109
|
end
|
|
97
110
|
|
|
98
111
|
# Get a storage bucket by its unique ID. This endpoint response returns a
|
|
@@ -101,17 +114,18 @@ module Appwrite
|
|
|
101
114
|
# @param [String] bucket_id Bucket unique ID.
|
|
102
115
|
#
|
|
103
116
|
# @return [Bucket]
|
|
104
|
-
def get_bucket(
|
|
117
|
+
def get_bucket(
|
|
118
|
+
bucket_id:
|
|
119
|
+
)
|
|
105
120
|
api_path = '/storage/buckets/{bucketId}'
|
|
106
121
|
.gsub('{bucketId}', bucket_id)
|
|
107
122
|
|
|
108
123
|
if bucket_id.nil?
|
|
109
|
-
|
|
124
|
+
raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
|
|
110
125
|
end
|
|
111
126
|
|
|
112
|
-
api_params = {
|
|
113
|
-
|
|
114
|
-
|
|
127
|
+
api_params = {}
|
|
128
|
+
|
|
115
129
|
api_headers = {
|
|
116
130
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
117
131
|
"accept": 'application/json',
|
|
@@ -124,7 +138,6 @@ module Appwrite
|
|
|
124
138
|
params: api_params,
|
|
125
139
|
response_type: Models::Bucket
|
|
126
140
|
)
|
|
127
|
-
|
|
128
141
|
end
|
|
129
142
|
|
|
130
143
|
# Update a storage bucket by its unique ID.
|
|
@@ -133,25 +146,37 @@ module Appwrite
|
|
|
133
146
|
# @param [String] name Bucket name
|
|
134
147
|
# @param [Array] permissions An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https://appwrite.io/docs/permissions).
|
|
135
148
|
# @param [] file_security Enables configuring permissions for individual file. A user needs one of file or bucket level permissions to access a file. [Learn more about permissions](https://appwrite.io/docs/permissions).
|
|
136
|
-
# @param [] enabled Is bucket enabled? When set to
|
|
149
|
+
# @param [] enabled Is bucket enabled? When set to 'disabled', users cannot access the files in this bucket but Server SDKs with and API key can still access the bucket. No files are lost when this is toggled.
|
|
137
150
|
# @param [Integer] maximum_file_size Maximum file size allowed in bytes. Maximum allowed value is 5GB.
|
|
138
151
|
# @param [Array] allowed_file_extensions Allowed file extensions. Maximum of 100 extensions are allowed, each 64 characters long.
|
|
139
|
-
# @param [Compression] compression Compression algorithm chosen for compression. Can be one of none, [gzip](https://en.wikipedia.org/wiki/Gzip), or [zstd](https://en.wikipedia.org/wiki/Zstd), For file size above 20MB compression is skipped even if it
|
|
140
|
-
# @param [] encryption Is encryption enabled? For file size above 20MB encryption is skipped even if it
|
|
141
|
-
# @param [] antivirus Is virus scanning enabled? For file size above 20MB AntiVirus scanning is skipped even if it
|
|
152
|
+
# @param [Compression] compression Compression algorithm chosen for compression. Can be one of none, [gzip](https://en.wikipedia.org/wiki/Gzip), or [zstd](https://en.wikipedia.org/wiki/Zstd), For file size above 20MB compression is skipped even if it's enabled
|
|
153
|
+
# @param [] encryption Is encryption enabled? For file size above 20MB encryption is skipped even if it's enabled
|
|
154
|
+
# @param [] antivirus Is virus scanning enabled? For file size above 20MB AntiVirus scanning is skipped even if it's enabled
|
|
142
155
|
# @param [] transformations Are image transformations enabled?
|
|
143
156
|
#
|
|
144
157
|
# @return [Bucket]
|
|
145
|
-
def update_bucket(
|
|
158
|
+
def update_bucket(
|
|
159
|
+
bucket_id:,
|
|
160
|
+
name:,
|
|
161
|
+
permissions: nil,
|
|
162
|
+
file_security: nil,
|
|
163
|
+
enabled: nil,
|
|
164
|
+
maximum_file_size: nil,
|
|
165
|
+
allowed_file_extensions: nil,
|
|
166
|
+
compression: nil,
|
|
167
|
+
encryption: nil,
|
|
168
|
+
antivirus: nil,
|
|
169
|
+
transformations: nil
|
|
170
|
+
)
|
|
146
171
|
api_path = '/storage/buckets/{bucketId}'
|
|
147
172
|
.gsub('{bucketId}', bucket_id)
|
|
148
173
|
|
|
149
174
|
if bucket_id.nil?
|
|
150
|
-
|
|
175
|
+
raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
|
|
151
176
|
end
|
|
152
177
|
|
|
153
178
|
if name.nil?
|
|
154
|
-
|
|
179
|
+
raise Appwrite::Exception.new('Missing required parameter: "name"')
|
|
155
180
|
end
|
|
156
181
|
|
|
157
182
|
api_params = {
|
|
@@ -166,7 +191,7 @@ module Appwrite
|
|
|
166
191
|
antivirus: antivirus,
|
|
167
192
|
transformations: transformations,
|
|
168
193
|
}
|
|
169
|
-
|
|
194
|
+
|
|
170
195
|
api_headers = {
|
|
171
196
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
172
197
|
"content-type": 'application/json',
|
|
@@ -180,7 +205,6 @@ module Appwrite
|
|
|
180
205
|
params: api_params,
|
|
181
206
|
response_type: Models::Bucket
|
|
182
207
|
)
|
|
183
|
-
|
|
184
208
|
end
|
|
185
209
|
|
|
186
210
|
# Delete a storage bucket by its unique ID.
|
|
@@ -188,17 +212,18 @@ module Appwrite
|
|
|
188
212
|
# @param [String] bucket_id Bucket unique ID.
|
|
189
213
|
#
|
|
190
214
|
# @return []
|
|
191
|
-
def delete_bucket(
|
|
215
|
+
def delete_bucket(
|
|
216
|
+
bucket_id:
|
|
217
|
+
)
|
|
192
218
|
api_path = '/storage/buckets/{bucketId}'
|
|
193
219
|
.gsub('{bucketId}', bucket_id)
|
|
194
220
|
|
|
195
221
|
if bucket_id.nil?
|
|
196
|
-
|
|
222
|
+
raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
|
|
197
223
|
end
|
|
198
224
|
|
|
199
|
-
api_params = {
|
|
200
|
-
|
|
201
|
-
|
|
225
|
+
api_params = {}
|
|
226
|
+
|
|
202
227
|
api_headers = {
|
|
203
228
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
204
229
|
"content-type": 'application/json',
|
|
@@ -210,24 +235,28 @@ module Appwrite
|
|
|
210
235
|
headers: api_headers,
|
|
211
236
|
params: api_params,
|
|
212
237
|
)
|
|
213
|
-
|
|
214
238
|
end
|
|
215
239
|
|
|
216
240
|
# Get a list of all the user files. You can use the query params to filter
|
|
217
241
|
# your results.
|
|
218
242
|
#
|
|
219
243
|
# @param [String] bucket_id Storage bucket unique ID. You can create a new storage bucket using the Storage service [server integration](https://appwrite.io/docs/server/storage#createBucket).
|
|
220
|
-
# @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: name, signature, mimeType, sizeOriginal, chunksTotal, chunksUploaded
|
|
244
|
+
# @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: name, folder, signature, mimeType, sizeOriginal, chunksTotal, chunksUploaded
|
|
221
245
|
# @param [String] search Search term to filter your list results. Max length: 256 chars.
|
|
222
246
|
# @param [] total When set to false, the total count returned will be 0 and will not be calculated.
|
|
223
247
|
#
|
|
224
248
|
# @return [FileList]
|
|
225
|
-
def list_files(
|
|
249
|
+
def list_files(
|
|
250
|
+
bucket_id:,
|
|
251
|
+
queries: nil,
|
|
252
|
+
search: nil,
|
|
253
|
+
total: nil
|
|
254
|
+
)
|
|
226
255
|
api_path = '/storage/buckets/{bucketId}/files'
|
|
227
256
|
.gsub('{bucketId}', bucket_id)
|
|
228
257
|
|
|
229
258
|
if bucket_id.nil?
|
|
230
|
-
|
|
259
|
+
raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
|
|
231
260
|
end
|
|
232
261
|
|
|
233
262
|
api_params = {
|
|
@@ -235,7 +264,7 @@ module Appwrite
|
|
|
235
264
|
search: search,
|
|
236
265
|
total: total,
|
|
237
266
|
}
|
|
238
|
-
|
|
267
|
+
|
|
239
268
|
api_headers = {
|
|
240
269
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
241
270
|
"accept": 'application/json',
|
|
@@ -248,56 +277,64 @@ module Appwrite
|
|
|
248
277
|
params: api_params,
|
|
249
278
|
response_type: Models::FileList
|
|
250
279
|
)
|
|
251
|
-
|
|
252
280
|
end
|
|
253
281
|
|
|
254
282
|
# Create a new file. Before using this route, you should create a new bucket
|
|
255
283
|
# resource using either a [server
|
|
256
284
|
# integration](https://appwrite.io/docs/server/storage#storageCreateBucket)
|
|
257
285
|
# API or directly from your Appwrite console.
|
|
258
|
-
#
|
|
286
|
+
#
|
|
259
287
|
# Larger files should be uploaded using multiple requests with the
|
|
260
288
|
# [content-range](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Range)
|
|
261
289
|
# header to send a partial request with a maximum supported chunk of `5MB`.
|
|
262
290
|
# The `content-range` header values should always be in bytes.
|
|
263
|
-
#
|
|
291
|
+
#
|
|
264
292
|
# When the first request is sent, the server will return the **File** object,
|
|
265
|
-
# and the subsequent part request must include the file
|
|
293
|
+
# and the subsequent part request must include the file's **id** in
|
|
266
294
|
# `x-appwrite-id` header to allow the server to know that the partial upload
|
|
267
295
|
# is for the existing file and not for a new one.
|
|
268
|
-
#
|
|
269
|
-
# If you
|
|
296
|
+
#
|
|
297
|
+
# If you're creating a new file using one of the Appwrite SDKs, all the
|
|
270
298
|
# chunking logic will be managed by the SDK internally.
|
|
271
|
-
#
|
|
299
|
+
#
|
|
272
300
|
#
|
|
273
301
|
# @param [String] bucket_id Storage bucket unique ID. You can create a new storage bucket using the Storage service [server integration](https://appwrite.io/docs/server/storage#createBucket).
|
|
274
|
-
# @param [String] file_id File 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
|
|
302
|
+
# @param [String] file_id File 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.
|
|
275
303
|
# @param [file] file Binary file. Appwrite SDKs provide helpers to handle file input. [Learn about file input](https://appwrite.io/docs/products/storage/upload-download#input-file).
|
|
276
304
|
# @param [Array] permissions An array of permission strings. By default, only the current user is granted all permissions. [Learn more about permissions](https://appwrite.io/docs/permissions).
|
|
305
|
+
# @param [String] folder Virtual folder to place the file in, for example "photos/2026". Nest folders with `/`. Defaults to the bucket root.
|
|
277
306
|
#
|
|
278
307
|
# @return [File]
|
|
279
|
-
def create_file(
|
|
308
|
+
def create_file(
|
|
309
|
+
bucket_id:,
|
|
310
|
+
file_id:,
|
|
311
|
+
file:,
|
|
312
|
+
permissions: nil,
|
|
313
|
+
folder: nil,
|
|
314
|
+
on_progress: nil
|
|
315
|
+
)
|
|
280
316
|
api_path = '/storage/buckets/{bucketId}/files'
|
|
281
317
|
.gsub('{bucketId}', bucket_id)
|
|
282
318
|
|
|
283
319
|
if bucket_id.nil?
|
|
284
|
-
|
|
320
|
+
raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
|
|
285
321
|
end
|
|
286
322
|
|
|
287
323
|
if file_id.nil?
|
|
288
|
-
|
|
324
|
+
raise Appwrite::Exception.new('Missing required parameter: "fileId"')
|
|
289
325
|
end
|
|
290
326
|
|
|
291
327
|
if file.nil?
|
|
292
|
-
|
|
328
|
+
raise Appwrite::Exception.new('Missing required parameter: "file"')
|
|
293
329
|
end
|
|
294
330
|
|
|
295
331
|
api_params = {
|
|
296
332
|
fileId: file_id,
|
|
297
333
|
file: file,
|
|
298
334
|
permissions: permissions,
|
|
335
|
+
folder: folder,
|
|
299
336
|
}
|
|
300
|
-
|
|
337
|
+
|
|
301
338
|
api_headers = {
|
|
302
339
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
303
340
|
"content-type": 'multipart/form-data',
|
|
@@ -316,7 +353,6 @@ module Appwrite
|
|
|
316
353
|
on_progress: on_progress,
|
|
317
354
|
response_type: Models::File
|
|
318
355
|
)
|
|
319
|
-
|
|
320
356
|
end
|
|
321
357
|
|
|
322
358
|
# Get a file by its unique ID. This endpoint response returns a JSON object
|
|
@@ -326,22 +362,24 @@ module Appwrite
|
|
|
326
362
|
# @param [String] file_id File ID.
|
|
327
363
|
#
|
|
328
364
|
# @return [File]
|
|
329
|
-
def get_file(
|
|
365
|
+
def get_file(
|
|
366
|
+
bucket_id:,
|
|
367
|
+
file_id:
|
|
368
|
+
)
|
|
330
369
|
api_path = '/storage/buckets/{bucketId}/files/{fileId}'
|
|
331
370
|
.gsub('{bucketId}', bucket_id)
|
|
332
371
|
.gsub('{fileId}', file_id)
|
|
333
372
|
|
|
334
373
|
if bucket_id.nil?
|
|
335
|
-
|
|
374
|
+
raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
|
|
336
375
|
end
|
|
337
376
|
|
|
338
377
|
if file_id.nil?
|
|
339
|
-
|
|
378
|
+
raise Appwrite::Exception.new('Missing required parameter: "fileId"')
|
|
340
379
|
end
|
|
341
380
|
|
|
342
|
-
api_params = {
|
|
343
|
-
|
|
344
|
-
|
|
381
|
+
api_params = {}
|
|
382
|
+
|
|
345
383
|
api_headers = {
|
|
346
384
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
347
385
|
"accept": 'application/json',
|
|
@@ -354,7 +392,6 @@ module Appwrite
|
|
|
354
392
|
params: api_params,
|
|
355
393
|
response_type: Models::File
|
|
356
394
|
)
|
|
357
|
-
|
|
358
395
|
end
|
|
359
396
|
|
|
360
397
|
# Update a file by its unique ID. Only users with write permissions have
|
|
@@ -366,24 +403,29 @@ module Appwrite
|
|
|
366
403
|
# @param [Array] permissions An array of permission strings. By default, the current permissions are inherited. [Learn more about permissions](https://appwrite.io/docs/permissions).
|
|
367
404
|
#
|
|
368
405
|
# @return [File]
|
|
369
|
-
def update_file(
|
|
406
|
+
def update_file(
|
|
407
|
+
bucket_id:,
|
|
408
|
+
file_id:,
|
|
409
|
+
name: nil,
|
|
410
|
+
permissions: nil
|
|
411
|
+
)
|
|
370
412
|
api_path = '/storage/buckets/{bucketId}/files/{fileId}'
|
|
371
413
|
.gsub('{bucketId}', bucket_id)
|
|
372
414
|
.gsub('{fileId}', file_id)
|
|
373
415
|
|
|
374
416
|
if bucket_id.nil?
|
|
375
|
-
|
|
417
|
+
raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
|
|
376
418
|
end
|
|
377
419
|
|
|
378
420
|
if file_id.nil?
|
|
379
|
-
|
|
421
|
+
raise Appwrite::Exception.new('Missing required parameter: "fileId"')
|
|
380
422
|
end
|
|
381
423
|
|
|
382
424
|
api_params = {
|
|
383
425
|
name: name,
|
|
384
426
|
permissions: permissions,
|
|
385
427
|
}
|
|
386
|
-
|
|
428
|
+
|
|
387
429
|
api_headers = {
|
|
388
430
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
389
431
|
"content-type": 'application/json',
|
|
@@ -397,7 +439,6 @@ module Appwrite
|
|
|
397
439
|
params: api_params,
|
|
398
440
|
response_type: Models::File
|
|
399
441
|
)
|
|
400
|
-
|
|
401
442
|
end
|
|
402
443
|
|
|
403
444
|
# Delete a file by its unique ID. Only users with write permissions have
|
|
@@ -407,22 +448,24 @@ module Appwrite
|
|
|
407
448
|
# @param [String] file_id File ID.
|
|
408
449
|
#
|
|
409
450
|
# @return []
|
|
410
|
-
def delete_file(
|
|
451
|
+
def delete_file(
|
|
452
|
+
bucket_id:,
|
|
453
|
+
file_id:
|
|
454
|
+
)
|
|
411
455
|
api_path = '/storage/buckets/{bucketId}/files/{fileId}'
|
|
412
456
|
.gsub('{bucketId}', bucket_id)
|
|
413
457
|
.gsub('{fileId}', file_id)
|
|
414
458
|
|
|
415
459
|
if bucket_id.nil?
|
|
416
|
-
|
|
460
|
+
raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
|
|
417
461
|
end
|
|
418
462
|
|
|
419
463
|
if file_id.nil?
|
|
420
|
-
|
|
464
|
+
raise Appwrite::Exception.new('Missing required parameter: "fileId"')
|
|
421
465
|
end
|
|
422
466
|
|
|
423
|
-
api_params = {
|
|
424
|
-
|
|
425
|
-
|
|
467
|
+
api_params = {}
|
|
468
|
+
|
|
426
469
|
api_headers = {
|
|
427
470
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
428
471
|
"content-type": 'application/json',
|
|
@@ -434,11 +477,10 @@ module Appwrite
|
|
|
434
477
|
headers: api_headers,
|
|
435
478
|
params: api_params,
|
|
436
479
|
)
|
|
437
|
-
|
|
438
480
|
end
|
|
439
481
|
|
|
440
482
|
# Get a file content by its unique ID. The endpoint response return with a
|
|
441
|
-
#
|
|
483
|
+
# 'Content-Disposition: attachment' header that tells the browser to start
|
|
442
484
|
# downloading the file to user downloads directory.
|
|
443
485
|
#
|
|
444
486
|
# @param [String] bucket_id Storage bucket ID. You can create a new storage bucket using the Storage service [server integration](https://appwrite.io/docs/server/storage#createBucket).
|
|
@@ -446,23 +488,27 @@ module Appwrite
|
|
|
446
488
|
# @param [String] token File token for accessing this file.
|
|
447
489
|
#
|
|
448
490
|
# @return []
|
|
449
|
-
def get_file_download(
|
|
491
|
+
def get_file_download(
|
|
492
|
+
bucket_id:,
|
|
493
|
+
file_id:,
|
|
494
|
+
token: nil
|
|
495
|
+
)
|
|
450
496
|
api_path = '/storage/buckets/{bucketId}/files/{fileId}/download'
|
|
451
497
|
.gsub('{bucketId}', bucket_id)
|
|
452
498
|
.gsub('{fileId}', file_id)
|
|
453
499
|
|
|
454
500
|
if bucket_id.nil?
|
|
455
|
-
|
|
501
|
+
raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
|
|
456
502
|
end
|
|
457
503
|
|
|
458
504
|
if file_id.nil?
|
|
459
|
-
|
|
505
|
+
raise Appwrite::Exception.new('Missing required parameter: "fileId"')
|
|
460
506
|
end
|
|
461
507
|
|
|
462
508
|
api_params = {
|
|
463
509
|
token: token,
|
|
464
510
|
}
|
|
465
|
-
|
|
511
|
+
|
|
466
512
|
api_headers = {
|
|
467
513
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
468
514
|
"accept": '*/*',
|
|
@@ -474,7 +520,6 @@ module Appwrite
|
|
|
474
520
|
headers: api_headers,
|
|
475
521
|
params: api_params,
|
|
476
522
|
)
|
|
477
|
-
|
|
478
523
|
end
|
|
479
524
|
|
|
480
525
|
# Get a file preview image. Currently, this method supports preview for image
|
|
@@ -499,17 +544,32 @@ module Appwrite
|
|
|
499
544
|
# @param [String] token File token for accessing this file.
|
|
500
545
|
#
|
|
501
546
|
# @return []
|
|
502
|
-
def get_file_preview(
|
|
547
|
+
def get_file_preview(
|
|
548
|
+
bucket_id:,
|
|
549
|
+
file_id:,
|
|
550
|
+
width: nil,
|
|
551
|
+
height: nil,
|
|
552
|
+
gravity: nil,
|
|
553
|
+
quality: nil,
|
|
554
|
+
border_width: nil,
|
|
555
|
+
border_color: nil,
|
|
556
|
+
border_radius: nil,
|
|
557
|
+
opacity: nil,
|
|
558
|
+
rotation: nil,
|
|
559
|
+
background: nil,
|
|
560
|
+
output: nil,
|
|
561
|
+
token: nil
|
|
562
|
+
)
|
|
503
563
|
api_path = '/storage/buckets/{bucketId}/files/{fileId}/preview'
|
|
504
564
|
.gsub('{bucketId}', bucket_id)
|
|
505
565
|
.gsub('{fileId}', file_id)
|
|
506
566
|
|
|
507
567
|
if bucket_id.nil?
|
|
508
|
-
|
|
568
|
+
raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
|
|
509
569
|
end
|
|
510
570
|
|
|
511
571
|
if file_id.nil?
|
|
512
|
-
|
|
572
|
+
raise Appwrite::Exception.new('Missing required parameter: "fileId"')
|
|
513
573
|
end
|
|
514
574
|
|
|
515
575
|
api_params = {
|
|
@@ -526,7 +586,7 @@ module Appwrite
|
|
|
526
586
|
output: output,
|
|
527
587
|
token: token,
|
|
528
588
|
}
|
|
529
|
-
|
|
589
|
+
|
|
530
590
|
api_headers = {
|
|
531
591
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
532
592
|
"accept": 'image/*',
|
|
@@ -538,11 +598,10 @@ module Appwrite
|
|
|
538
598
|
headers: api_headers,
|
|
539
599
|
params: api_params,
|
|
540
600
|
)
|
|
541
|
-
|
|
542
601
|
end
|
|
543
602
|
|
|
544
603
|
# Get a file content by its unique ID. This endpoint is similar to the
|
|
545
|
-
# download method but returns with no
|
|
604
|
+
# download method but returns with no 'Content-Disposition: attachment'
|
|
546
605
|
# header.
|
|
547
606
|
#
|
|
548
607
|
# @param [String] bucket_id Storage bucket unique ID. You can create a new storage bucket using the Storage service [server integration](https://appwrite.io/docs/server/storage#createBucket).
|
|
@@ -550,23 +609,27 @@ module Appwrite
|
|
|
550
609
|
# @param [String] token File token for accessing this file.
|
|
551
610
|
#
|
|
552
611
|
# @return []
|
|
553
|
-
def get_file_view(
|
|
612
|
+
def get_file_view(
|
|
613
|
+
bucket_id:,
|
|
614
|
+
file_id:,
|
|
615
|
+
token: nil
|
|
616
|
+
)
|
|
554
617
|
api_path = '/storage/buckets/{bucketId}/files/{fileId}/view'
|
|
555
618
|
.gsub('{bucketId}', bucket_id)
|
|
556
619
|
.gsub('{fileId}', file_id)
|
|
557
620
|
|
|
558
621
|
if bucket_id.nil?
|
|
559
|
-
|
|
622
|
+
raise Appwrite::Exception.new('Missing required parameter: "bucketId"')
|
|
560
623
|
end
|
|
561
624
|
|
|
562
625
|
if file_id.nil?
|
|
563
|
-
|
|
626
|
+
raise Appwrite::Exception.new('Missing required parameter: "fileId"')
|
|
564
627
|
end
|
|
565
628
|
|
|
566
629
|
api_params = {
|
|
567
630
|
token: token,
|
|
568
631
|
}
|
|
569
|
-
|
|
632
|
+
|
|
570
633
|
api_headers = {
|
|
571
634
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
572
635
|
"accept": '*/*',
|
|
@@ -578,8 +641,6 @@ module Appwrite
|
|
|
578
641
|
headers: api_headers,
|
|
579
642
|
params: api_params,
|
|
580
643
|
)
|
|
581
|
-
|
|
582
644
|
end
|
|
583
|
-
|
|
584
|
-
end
|
|
645
|
+
end
|
|
585
646
|
end
|