appwrite 27.0.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 +27 -24
- data/lib/appwrite/enums/adapter.rb +1 -1
- data/lib/appwrite/enums/attribute_status.rb +1 -1
- data/lib/appwrite/enums/authentication_factor.rb +1 -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 +2 -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 +1 -3
- 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 +1 -1
- 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 +14 -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 +1 -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 +2 -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 +19 -10
- data/lib/appwrite/models/billing_plan_addon.rb +3 -3
- data/lib/appwrite/models/billing_plan_addon_details.rb +2 -2
- 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 +6 -1
- data/lib/appwrite/models/database_migration_list.rb +1 -1
- data/lib/appwrite/models/database_status.rb +3 -3
- 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 -3
- 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 +7 -2
- data/lib/appwrite/models/dedicated_database_operation.rb +4 -4
- data/lib/appwrite/models/dedicated_database_operation_list.rb +1 -1
- 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 +3 -3
- 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 -1
- 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 +1 -1
- data/lib/appwrite/models/embedding_list.rb +1 -1
- 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 +1 -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 +1 -1
- data/lib/appwrite/models/mfa_factors.rb +1 -1
- 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 +14 -14
- 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 +1 -1
- 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 +19 -19
- 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 +1 -1
- 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 +4 -4
- 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 +328 -289
- data/lib/appwrite/services/activities.rb +13 -14
- data/lib/appwrite/services/advisor.rb +41 -37
- data/lib/appwrite/services/apps.rb +185 -130
- data/lib/appwrite/services/avatars.rb +156 -55
- data/lib/appwrite/services/backups.rb +102 -83
- data/lib/appwrite/services/databases.rb +871 -512
- data/lib/appwrite/services/documents_db.rb +1683 -0
- data/lib/appwrite/services/embeddings.rb +9 -9
- data/lib/appwrite/services/functions.rb +276 -172
- 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 +842 -528
- data/lib/appwrite/services/proxy.rb +73 -58
- data/lib/appwrite/services/sites.rb +269 -164
- data/lib/appwrite/services/storage.rb +151 -92
- data/lib/appwrite/services/tables_db.rb +947 -568
- data/lib/appwrite/services/teams.rb +161 -122
- data/lib/appwrite/services/tokens.rb +38 -31
- data/lib/appwrite/services/users.rb +376 -274
- data/lib/appwrite/services/vectors_db.rb +1614 -0
- data/lib/appwrite/services/webhooks.rb +59 -40
- data/lib/appwrite.rb +27 -0
- metadata +31 -4
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
#frozen_string_literal: true
|
|
1
|
+
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
module Appwrite
|
|
4
4
|
class Teams < 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 [TeamList]
|
|
18
|
-
def list(
|
|
17
|
+
def list(
|
|
18
|
+
queries: nil,
|
|
19
|
+
search: nil,
|
|
20
|
+
total: nil
|
|
21
|
+
)
|
|
19
22
|
api_path = '/teams'
|
|
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,27 +39,30 @@ module Appwrite
|
|
|
36
39
|
params: api_params,
|
|
37
40
|
response_type: Models::TeamList
|
|
38
41
|
)
|
|
39
|
-
|
|
40
42
|
end
|
|
41
43
|
|
|
42
44
|
# Create a new team. The user who creates the team will automatically be
|
|
43
45
|
# assigned as the owner of the team. Only the users with the owner role can
|
|
44
46
|
# invite new members, add new owners and delete or update the team.
|
|
45
47
|
#
|
|
46
|
-
# @param [String] team_id Team 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
|
|
48
|
+
# @param [String] team_id Team 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.
|
|
47
49
|
# @param [String] name Team name. Max length: 128 chars.
|
|
48
50
|
# @param [Array] roles Array of strings. Use this param to set the roles in the team for the user who created it. The default role is **owner**. A role can be any string. Learn more about [roles and permissions](https://appwrite.io/docs/permissions). Maximum of 100 roles are allowed, each 32 characters long.
|
|
49
51
|
#
|
|
50
52
|
# @return [Team]
|
|
51
|
-
def create(
|
|
53
|
+
def create(
|
|
54
|
+
team_id:,
|
|
55
|
+
name:,
|
|
56
|
+
roles: nil
|
|
57
|
+
)
|
|
52
58
|
api_path = '/teams'
|
|
53
59
|
|
|
54
60
|
if team_id.nil?
|
|
55
|
-
|
|
61
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
56
62
|
end
|
|
57
63
|
|
|
58
64
|
if name.nil?
|
|
59
|
-
|
|
65
|
+
raise Appwrite::Exception.new('Missing required parameter: "name"')
|
|
60
66
|
end
|
|
61
67
|
|
|
62
68
|
api_params = {
|
|
@@ -64,7 +70,7 @@ module Appwrite
|
|
|
64
70
|
name: name,
|
|
65
71
|
roles: roles,
|
|
66
72
|
}
|
|
67
|
-
|
|
73
|
+
|
|
68
74
|
api_headers = {
|
|
69
75
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
70
76
|
"content-type": 'application/json',
|
|
@@ -78,7 +84,6 @@ module Appwrite
|
|
|
78
84
|
params: api_params,
|
|
79
85
|
response_type: Models::Team
|
|
80
86
|
)
|
|
81
|
-
|
|
82
87
|
end
|
|
83
88
|
|
|
84
89
|
# Get a team by its ID. All team members have read access for this resource.
|
|
@@ -86,17 +91,18 @@ module Appwrite
|
|
|
86
91
|
# @param [String] team_id Team ID.
|
|
87
92
|
#
|
|
88
93
|
# @return [Team]
|
|
89
|
-
def get(
|
|
94
|
+
def get(
|
|
95
|
+
team_id:
|
|
96
|
+
)
|
|
90
97
|
api_path = '/teams/{teamId}'
|
|
91
98
|
.gsub('{teamId}', team_id)
|
|
92
99
|
|
|
93
100
|
if team_id.nil?
|
|
94
|
-
|
|
101
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
95
102
|
end
|
|
96
103
|
|
|
97
|
-
api_params = {
|
|
98
|
-
|
|
99
|
-
|
|
104
|
+
api_params = {}
|
|
105
|
+
|
|
100
106
|
api_headers = {
|
|
101
107
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
102
108
|
"accept": 'application/json',
|
|
@@ -109,31 +115,33 @@ module Appwrite
|
|
|
109
115
|
params: api_params,
|
|
110
116
|
response_type: Models::Team
|
|
111
117
|
)
|
|
112
|
-
|
|
113
118
|
end
|
|
114
119
|
|
|
115
|
-
# Update the team
|
|
120
|
+
# Update the team's name by its unique ID.
|
|
116
121
|
#
|
|
117
122
|
# @param [String] team_id Team ID.
|
|
118
123
|
# @param [String] name New team name. Max length: 128 chars.
|
|
119
124
|
#
|
|
120
125
|
# @return [Team]
|
|
121
|
-
def update_name(
|
|
126
|
+
def update_name(
|
|
127
|
+
team_id:,
|
|
128
|
+
name:
|
|
129
|
+
)
|
|
122
130
|
api_path = '/teams/{teamId}'
|
|
123
131
|
.gsub('{teamId}', team_id)
|
|
124
132
|
|
|
125
133
|
if team_id.nil?
|
|
126
|
-
|
|
134
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
127
135
|
end
|
|
128
136
|
|
|
129
137
|
if name.nil?
|
|
130
|
-
|
|
138
|
+
raise Appwrite::Exception.new('Missing required parameter: "name"')
|
|
131
139
|
end
|
|
132
140
|
|
|
133
141
|
api_params = {
|
|
134
142
|
name: name,
|
|
135
143
|
}
|
|
136
|
-
|
|
144
|
+
|
|
137
145
|
api_headers = {
|
|
138
146
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
139
147
|
"content-type": 'application/json',
|
|
@@ -147,7 +155,6 @@ module Appwrite
|
|
|
147
155
|
params: api_params,
|
|
148
156
|
response_type: Models::Team
|
|
149
157
|
)
|
|
150
|
-
|
|
151
158
|
end
|
|
152
159
|
|
|
153
160
|
# Delete a team using its ID. Only team members with the owner role can
|
|
@@ -156,17 +163,18 @@ module Appwrite
|
|
|
156
163
|
# @param [String] team_id Team ID.
|
|
157
164
|
#
|
|
158
165
|
# @return []
|
|
159
|
-
def delete(
|
|
166
|
+
def delete(
|
|
167
|
+
team_id:
|
|
168
|
+
)
|
|
160
169
|
api_path = '/teams/{teamId}'
|
|
161
170
|
.gsub('{teamId}', team_id)
|
|
162
171
|
|
|
163
172
|
if team_id.nil?
|
|
164
|
-
|
|
173
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
165
174
|
end
|
|
166
175
|
|
|
167
|
-
api_params = {
|
|
168
|
-
|
|
169
|
-
|
|
176
|
+
api_params = {}
|
|
177
|
+
|
|
170
178
|
api_headers = {
|
|
171
179
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
172
180
|
"content-type": 'application/json',
|
|
@@ -178,7 +186,6 @@ module Appwrite
|
|
|
178
186
|
headers: api_headers,
|
|
179
187
|
params: api_params,
|
|
180
188
|
)
|
|
181
|
-
|
|
182
189
|
end
|
|
183
190
|
|
|
184
191
|
# List app installations on a team. Any team member can read installations.
|
|
@@ -188,19 +195,23 @@ module Appwrite
|
|
|
188
195
|
# @param [] total When set to false, the total count returned will be 0 and will not be calculated.
|
|
189
196
|
#
|
|
190
197
|
# @return [AppInstallationList]
|
|
191
|
-
def list_installations(
|
|
198
|
+
def list_installations(
|
|
199
|
+
team_id:,
|
|
200
|
+
queries: nil,
|
|
201
|
+
total: nil
|
|
202
|
+
)
|
|
192
203
|
api_path = '/teams/{teamId}/installations'
|
|
193
204
|
.gsub('{teamId}', team_id)
|
|
194
205
|
|
|
195
206
|
if team_id.nil?
|
|
196
|
-
|
|
207
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
197
208
|
end
|
|
198
209
|
|
|
199
210
|
api_params = {
|
|
200
211
|
queries: queries,
|
|
201
212
|
total: total,
|
|
202
213
|
}
|
|
203
|
-
|
|
214
|
+
|
|
204
215
|
api_headers = {
|
|
205
216
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
206
217
|
"accept": 'application/json',
|
|
@@ -213,7 +224,6 @@ module Appwrite
|
|
|
213
224
|
params: api_params,
|
|
214
225
|
response_type: Models::AppInstallationList
|
|
215
226
|
)
|
|
216
|
-
|
|
217
227
|
end
|
|
218
228
|
|
|
219
229
|
# Install an app on a team. When authenticated as a user, only team members
|
|
@@ -226,23 +236,27 @@ module Appwrite
|
|
|
226
236
|
# @param [String] authorization_details Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. The Appwrite Console stores authorized project IDs here.
|
|
227
237
|
#
|
|
228
238
|
# @return [AppInstallation]
|
|
229
|
-
def create_installation(
|
|
239
|
+
def create_installation(
|
|
240
|
+
team_id:,
|
|
241
|
+
app_id:,
|
|
242
|
+
authorization_details: nil
|
|
243
|
+
)
|
|
230
244
|
api_path = '/teams/{teamId}/installations'
|
|
231
245
|
.gsub('{teamId}', team_id)
|
|
232
246
|
|
|
233
247
|
if team_id.nil?
|
|
234
|
-
|
|
248
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
235
249
|
end
|
|
236
250
|
|
|
237
251
|
if app_id.nil?
|
|
238
|
-
|
|
252
|
+
raise Appwrite::Exception.new('Missing required parameter: "appId"')
|
|
239
253
|
end
|
|
240
254
|
|
|
241
255
|
api_params = {
|
|
242
256
|
appId: app_id,
|
|
243
257
|
authorizationDetails: authorization_details,
|
|
244
258
|
}
|
|
245
|
-
|
|
259
|
+
|
|
246
260
|
api_headers = {
|
|
247
261
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
248
262
|
"content-type": 'application/json',
|
|
@@ -256,7 +270,6 @@ module Appwrite
|
|
|
256
270
|
params: api_params,
|
|
257
271
|
response_type: Models::AppInstallation
|
|
258
272
|
)
|
|
259
|
-
|
|
260
273
|
end
|
|
261
274
|
|
|
262
275
|
# Get an app installation on a team by its unique ID. Any team member can
|
|
@@ -266,22 +279,24 @@ module Appwrite
|
|
|
266
279
|
# @param [String] installation_id Installation unique ID.
|
|
267
280
|
#
|
|
268
281
|
# @return [AppInstallation]
|
|
269
|
-
def get_installation(
|
|
282
|
+
def get_installation(
|
|
283
|
+
team_id:,
|
|
284
|
+
installation_id:
|
|
285
|
+
)
|
|
270
286
|
api_path = '/teams/{teamId}/installations/{installationId}'
|
|
271
287
|
.gsub('{teamId}', team_id)
|
|
272
288
|
.gsub('{installationId}', installation_id)
|
|
273
289
|
|
|
274
290
|
if team_id.nil?
|
|
275
|
-
|
|
291
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
276
292
|
end
|
|
277
293
|
|
|
278
294
|
if installation_id.nil?
|
|
279
|
-
|
|
295
|
+
raise Appwrite::Exception.new('Missing required parameter: "installationId"')
|
|
280
296
|
end
|
|
281
297
|
|
|
282
|
-
api_params = {
|
|
283
|
-
|
|
284
|
-
|
|
298
|
+
api_params = {}
|
|
299
|
+
|
|
285
300
|
api_headers = {
|
|
286
301
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
287
302
|
"accept": 'application/json',
|
|
@@ -294,11 +309,10 @@ module Appwrite
|
|
|
294
309
|
params: api_params,
|
|
295
310
|
response_type: Models::AppInstallation
|
|
296
311
|
)
|
|
297
|
-
|
|
298
312
|
end
|
|
299
313
|
|
|
300
314
|
# Update an app installation on a team. Only team members with the owner role
|
|
301
|
-
# can update installations. The installation
|
|
315
|
+
# can update installations. The installation's granted scopes are refreshed
|
|
302
316
|
# to the scopes the app currently requests; previously issued installation
|
|
303
317
|
# access tokens are revoked.
|
|
304
318
|
#
|
|
@@ -307,23 +321,27 @@ module Appwrite
|
|
|
307
321
|
# @param [String] authorization_details Authorization details granted to the installation as a JSON array of objects, each with a `type` and app-defined fields. Omit to keep the current value.
|
|
308
322
|
#
|
|
309
323
|
# @return [AppInstallation]
|
|
310
|
-
def update_installation(
|
|
324
|
+
def update_installation(
|
|
325
|
+
team_id:,
|
|
326
|
+
installation_id:,
|
|
327
|
+
authorization_details: nil
|
|
328
|
+
)
|
|
311
329
|
api_path = '/teams/{teamId}/installations/{installationId}'
|
|
312
330
|
.gsub('{teamId}', team_id)
|
|
313
331
|
.gsub('{installationId}', installation_id)
|
|
314
332
|
|
|
315
333
|
if team_id.nil?
|
|
316
|
-
|
|
334
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
317
335
|
end
|
|
318
336
|
|
|
319
337
|
if installation_id.nil?
|
|
320
|
-
|
|
338
|
+
raise Appwrite::Exception.new('Missing required parameter: "installationId"')
|
|
321
339
|
end
|
|
322
340
|
|
|
323
341
|
api_params = {
|
|
324
342
|
authorizationDetails: authorization_details,
|
|
325
343
|
}
|
|
326
|
-
|
|
344
|
+
|
|
327
345
|
api_headers = {
|
|
328
346
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
329
347
|
"content-type": 'application/json',
|
|
@@ -337,7 +355,6 @@ module Appwrite
|
|
|
337
355
|
params: api_params,
|
|
338
356
|
response_type: Models::AppInstallation
|
|
339
357
|
)
|
|
340
|
-
|
|
341
358
|
end
|
|
342
359
|
|
|
343
360
|
# Uninstall an app from a team by its installation ID. Only team members with
|
|
@@ -348,22 +365,24 @@ module Appwrite
|
|
|
348
365
|
# @param [String] installation_id Installation unique ID.
|
|
349
366
|
#
|
|
350
367
|
# @return []
|
|
351
|
-
def delete_installation(
|
|
368
|
+
def delete_installation(
|
|
369
|
+
team_id:,
|
|
370
|
+
installation_id:
|
|
371
|
+
)
|
|
352
372
|
api_path = '/teams/{teamId}/installations/{installationId}'
|
|
353
373
|
.gsub('{teamId}', team_id)
|
|
354
374
|
.gsub('{installationId}', installation_id)
|
|
355
375
|
|
|
356
376
|
if team_id.nil?
|
|
357
|
-
|
|
377
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
358
378
|
end
|
|
359
379
|
|
|
360
380
|
if installation_id.nil?
|
|
361
|
-
|
|
381
|
+
raise Appwrite::Exception.new('Missing required parameter: "installationId"')
|
|
362
382
|
end
|
|
363
383
|
|
|
364
|
-
api_params = {
|
|
365
|
-
|
|
366
|
-
|
|
384
|
+
api_params = {}
|
|
385
|
+
|
|
367
386
|
api_headers = {
|
|
368
387
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
369
388
|
"content-type": 'application/json',
|
|
@@ -376,10 +395,9 @@ module Appwrite
|
|
|
376
395
|
headers: api_headers,
|
|
377
396
|
params: api_params,
|
|
378
397
|
)
|
|
379
|
-
|
|
380
398
|
end
|
|
381
399
|
|
|
382
|
-
# Use this endpoint to list a team
|
|
400
|
+
# Use this endpoint to list a team's members using the team's ID. All team
|
|
383
401
|
# members have read access to this endpoint. Hide sensitive attributes from
|
|
384
402
|
# the response by toggling membership privacy in the Console.
|
|
385
403
|
#
|
|
@@ -389,12 +407,17 @@ module Appwrite
|
|
|
389
407
|
# @param [] total When set to false, the total count returned will be 0 and will not be calculated.
|
|
390
408
|
#
|
|
391
409
|
# @return [MembershipList]
|
|
392
|
-
def list_memberships(
|
|
410
|
+
def list_memberships(
|
|
411
|
+
team_id:,
|
|
412
|
+
queries: nil,
|
|
413
|
+
search: nil,
|
|
414
|
+
total: nil
|
|
415
|
+
)
|
|
393
416
|
api_path = '/teams/{teamId}/memberships'
|
|
394
417
|
.gsub('{teamId}', team_id)
|
|
395
418
|
|
|
396
419
|
if team_id.nil?
|
|
397
|
-
|
|
420
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
398
421
|
end
|
|
399
422
|
|
|
400
423
|
api_params = {
|
|
@@ -402,7 +425,7 @@ module Appwrite
|
|
|
402
425
|
search: search,
|
|
403
426
|
total: total,
|
|
404
427
|
}
|
|
405
|
-
|
|
428
|
+
|
|
406
429
|
api_headers = {
|
|
407
430
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
408
431
|
"accept": 'application/json',
|
|
@@ -415,50 +438,57 @@ module Appwrite
|
|
|
415
438
|
params: api_params,
|
|
416
439
|
response_type: Models::MembershipList
|
|
417
440
|
)
|
|
418
|
-
|
|
419
441
|
end
|
|
420
442
|
|
|
421
443
|
# Invite a new member to join your team. Provide an ID for existing users, or
|
|
422
444
|
# invite unregistered users using an email or phone number. If initiated from
|
|
423
445
|
# a Client SDK, Appwrite will send an email or sms with a link to join the
|
|
424
446
|
# team to the invited user, and an account will be created for them if one
|
|
425
|
-
# doesn
|
|
447
|
+
# doesn't exist. If initiated from a Server SDK, the new member will be added
|
|
426
448
|
# automatically to the team.
|
|
427
|
-
#
|
|
449
|
+
#
|
|
428
450
|
# You only need to provide one of a user ID, email, or phone number. Appwrite
|
|
429
|
-
# will prioritize accepting the user ID
|
|
451
|
+
# will prioritize accepting the user ID > email > phone number if you provide
|
|
430
452
|
# more than one of these parameters.
|
|
431
|
-
#
|
|
453
|
+
#
|
|
432
454
|
# Use the `url` parameter to redirect the user from the invitation email to
|
|
433
455
|
# your app. After the user is redirected, use the [Update Team Membership
|
|
434
456
|
# Status](https://appwrite.io/docs/references/cloud/client-web/teams#updateMembershipStatus)
|
|
435
|
-
# endpoint to allow the user to accept the invitation to the team.
|
|
436
|
-
#
|
|
457
|
+
# endpoint to allow the user to accept the invitation to the team.
|
|
458
|
+
#
|
|
437
459
|
# Please note that to avoid a [Redirect
|
|
438
460
|
# Attack](https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md)
|
|
439
461
|
# Appwrite will accept the only redirect URLs under the domains you have
|
|
440
462
|
# added as a platform on the Appwrite Console.
|
|
441
|
-
#
|
|
463
|
+
#
|
|
442
464
|
#
|
|
443
465
|
# @param [String] team_id Team ID.
|
|
444
466
|
# @param [Array] roles Array of strings. Use this param to set the user roles in the team. A role can be any string. Learn more about [roles and permissions](https://appwrite.io/docs/permissions). Maximum of 100 roles are allowed, each 81 characters long.
|
|
445
467
|
# @param [String] email Email of the new team member.
|
|
446
468
|
# @param [String] user_id ID of the user to be added to a team.
|
|
447
|
-
# @param [String] phone Phone number. Format this number with a leading
|
|
469
|
+
# @param [String] phone Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.
|
|
448
470
|
# @param [String] url URL to redirect the user back to your app from the invitation email. This parameter is not required when an API key is supplied. Only URLs from hostnames in your project platform list are allowed. This requirement helps to prevent an [open redirect](https://cheatsheetseries.owasp.org/cheatsheets/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.html) attack against your project API.
|
|
449
471
|
# @param [String] name Name of the new team member. Max length: 128 chars.
|
|
450
472
|
#
|
|
451
473
|
# @return [Membership]
|
|
452
|
-
def create_membership(
|
|
474
|
+
def create_membership(
|
|
475
|
+
team_id:,
|
|
476
|
+
roles:,
|
|
477
|
+
email: nil,
|
|
478
|
+
user_id: nil,
|
|
479
|
+
phone: nil,
|
|
480
|
+
url: nil,
|
|
481
|
+
name: nil
|
|
482
|
+
)
|
|
453
483
|
api_path = '/teams/{teamId}/memberships'
|
|
454
484
|
.gsub('{teamId}', team_id)
|
|
455
485
|
|
|
456
486
|
if team_id.nil?
|
|
457
|
-
|
|
487
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
458
488
|
end
|
|
459
489
|
|
|
460
490
|
if roles.nil?
|
|
461
|
-
|
|
491
|
+
raise Appwrite::Exception.new('Missing required parameter: "roles"')
|
|
462
492
|
end
|
|
463
493
|
|
|
464
494
|
api_params = {
|
|
@@ -469,7 +499,7 @@ module Appwrite
|
|
|
469
499
|
url: url,
|
|
470
500
|
name: name,
|
|
471
501
|
}
|
|
472
|
-
|
|
502
|
+
|
|
473
503
|
api_headers = {
|
|
474
504
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
475
505
|
"content-type": 'application/json',
|
|
@@ -483,7 +513,6 @@ module Appwrite
|
|
|
483
513
|
params: api_params,
|
|
484
514
|
response_type: Models::Membership
|
|
485
515
|
)
|
|
486
|
-
|
|
487
516
|
end
|
|
488
517
|
|
|
489
518
|
# Get a team member by the membership unique id. All team members have read
|
|
@@ -494,22 +523,24 @@ module Appwrite
|
|
|
494
523
|
# @param [String] membership_id Membership ID.
|
|
495
524
|
#
|
|
496
525
|
# @return [Membership]
|
|
497
|
-
def get_membership(
|
|
526
|
+
def get_membership(
|
|
527
|
+
team_id:,
|
|
528
|
+
membership_id:
|
|
529
|
+
)
|
|
498
530
|
api_path = '/teams/{teamId}/memberships/{membershipId}'
|
|
499
531
|
.gsub('{teamId}', team_id)
|
|
500
532
|
.gsub('{membershipId}', membership_id)
|
|
501
533
|
|
|
502
534
|
if team_id.nil?
|
|
503
|
-
|
|
535
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
504
536
|
end
|
|
505
537
|
|
|
506
538
|
if membership_id.nil?
|
|
507
|
-
|
|
539
|
+
raise Appwrite::Exception.new('Missing required parameter: "membershipId"')
|
|
508
540
|
end
|
|
509
541
|
|
|
510
|
-
api_params = {
|
|
511
|
-
|
|
512
|
-
|
|
542
|
+
api_params = {}
|
|
543
|
+
|
|
513
544
|
api_headers = {
|
|
514
545
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
515
546
|
"accept": 'application/json',
|
|
@@ -522,40 +553,43 @@ module Appwrite
|
|
|
522
553
|
params: api_params,
|
|
523
554
|
response_type: Models::Membership
|
|
524
555
|
)
|
|
525
|
-
|
|
526
556
|
end
|
|
527
557
|
|
|
528
558
|
# Modify the roles of a team member. Only team members with the owner role
|
|
529
559
|
# have access to this endpoint. Learn more about [roles and
|
|
530
560
|
# permissions](https://appwrite.io/docs/permissions).
|
|
531
|
-
#
|
|
561
|
+
#
|
|
532
562
|
#
|
|
533
563
|
# @param [String] team_id Team ID.
|
|
534
564
|
# @param [String] membership_id Membership ID.
|
|
535
|
-
# @param [Array] roles An array of strings. Use this param to set the user
|
|
565
|
+
# @param [Array] roles An array of strings. Use this param to set the user's roles in the team. A role can be any string. Learn more about [roles and permissions](https://appwrite.io/docs/permissions). Maximum of 100 roles are allowed, each 81 characters long.
|
|
536
566
|
#
|
|
537
567
|
# @return [Membership]
|
|
538
|
-
def update_membership(
|
|
568
|
+
def update_membership(
|
|
569
|
+
team_id:,
|
|
570
|
+
membership_id:,
|
|
571
|
+
roles:
|
|
572
|
+
)
|
|
539
573
|
api_path = '/teams/{teamId}/memberships/{membershipId}'
|
|
540
574
|
.gsub('{teamId}', team_id)
|
|
541
575
|
.gsub('{membershipId}', membership_id)
|
|
542
576
|
|
|
543
577
|
if team_id.nil?
|
|
544
|
-
|
|
578
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
545
579
|
end
|
|
546
580
|
|
|
547
581
|
if membership_id.nil?
|
|
548
|
-
|
|
582
|
+
raise Appwrite::Exception.new('Missing required parameter: "membershipId"')
|
|
549
583
|
end
|
|
550
584
|
|
|
551
585
|
if roles.nil?
|
|
552
|
-
|
|
586
|
+
raise Appwrite::Exception.new('Missing required parameter: "roles"')
|
|
553
587
|
end
|
|
554
588
|
|
|
555
589
|
api_params = {
|
|
556
590
|
roles: roles,
|
|
557
591
|
}
|
|
558
|
-
|
|
592
|
+
|
|
559
593
|
api_headers = {
|
|
560
594
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
561
595
|
"content-type": 'application/json',
|
|
@@ -569,7 +603,6 @@ module Appwrite
|
|
|
569
603
|
params: api_params,
|
|
570
604
|
response_type: Models::Membership
|
|
571
605
|
)
|
|
572
|
-
|
|
573
606
|
end
|
|
574
607
|
|
|
575
608
|
# This endpoint allows a user to leave a team or for a team owner to delete
|
|
@@ -580,22 +613,24 @@ module Appwrite
|
|
|
580
613
|
# @param [String] membership_id Membership ID.
|
|
581
614
|
#
|
|
582
615
|
# @return []
|
|
583
|
-
def delete_membership(
|
|
616
|
+
def delete_membership(
|
|
617
|
+
team_id:,
|
|
618
|
+
membership_id:
|
|
619
|
+
)
|
|
584
620
|
api_path = '/teams/{teamId}/memberships/{membershipId}'
|
|
585
621
|
.gsub('{teamId}', team_id)
|
|
586
622
|
.gsub('{membershipId}', membership_id)
|
|
587
623
|
|
|
588
624
|
if team_id.nil?
|
|
589
|
-
|
|
625
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
590
626
|
end
|
|
591
627
|
|
|
592
628
|
if membership_id.nil?
|
|
593
|
-
|
|
629
|
+
raise Appwrite::Exception.new('Missing required parameter: "membershipId"')
|
|
594
630
|
end
|
|
595
631
|
|
|
596
|
-
api_params = {
|
|
597
|
-
|
|
598
|
-
|
|
632
|
+
api_params = {}
|
|
633
|
+
|
|
599
634
|
api_headers = {
|
|
600
635
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
601
636
|
"content-type": 'application/json',
|
|
@@ -607,16 +642,15 @@ module Appwrite
|
|
|
607
642
|
headers: api_headers,
|
|
608
643
|
params: api_params,
|
|
609
644
|
)
|
|
610
|
-
|
|
611
645
|
end
|
|
612
646
|
|
|
613
647
|
# Use this endpoint to allow a user to accept an invitation to join a team
|
|
614
648
|
# after being redirected back to your app from the invitation email received
|
|
615
649
|
# by the user.
|
|
616
|
-
#
|
|
650
|
+
#
|
|
617
651
|
# If the request is successful, a session for the user is automatically
|
|
618
652
|
# created.
|
|
619
|
-
#
|
|
653
|
+
#
|
|
620
654
|
#
|
|
621
655
|
# @param [String] team_id Team ID.
|
|
622
656
|
# @param [String] membership_id Membership ID.
|
|
@@ -624,32 +658,37 @@ module Appwrite
|
|
|
624
658
|
# @param [String] secret Secret key.
|
|
625
659
|
#
|
|
626
660
|
# @return [Membership]
|
|
627
|
-
def update_membership_status(
|
|
661
|
+
def update_membership_status(
|
|
662
|
+
team_id:,
|
|
663
|
+
membership_id:,
|
|
664
|
+
user_id:,
|
|
665
|
+
secret:
|
|
666
|
+
)
|
|
628
667
|
api_path = '/teams/{teamId}/memberships/{membershipId}/status'
|
|
629
668
|
.gsub('{teamId}', team_id)
|
|
630
669
|
.gsub('{membershipId}', membership_id)
|
|
631
670
|
|
|
632
671
|
if team_id.nil?
|
|
633
|
-
|
|
672
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
634
673
|
end
|
|
635
674
|
|
|
636
675
|
if membership_id.nil?
|
|
637
|
-
|
|
676
|
+
raise Appwrite::Exception.new('Missing required parameter: "membershipId"')
|
|
638
677
|
end
|
|
639
678
|
|
|
640
679
|
if user_id.nil?
|
|
641
|
-
|
|
680
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
642
681
|
end
|
|
643
682
|
|
|
644
683
|
if secret.nil?
|
|
645
|
-
|
|
684
|
+
raise Appwrite::Exception.new('Missing required parameter: "secret"')
|
|
646
685
|
end
|
|
647
686
|
|
|
648
687
|
api_params = {
|
|
649
688
|
userId: user_id,
|
|
650
689
|
secret: secret,
|
|
651
690
|
}
|
|
652
|
-
|
|
691
|
+
|
|
653
692
|
api_headers = {
|
|
654
693
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
655
694
|
"content-type": 'application/json',
|
|
@@ -663,27 +702,27 @@ module Appwrite
|
|
|
663
702
|
params: api_params,
|
|
664
703
|
response_type: Models::Membership
|
|
665
704
|
)
|
|
666
|
-
|
|
667
705
|
end
|
|
668
706
|
|
|
669
|
-
# Get the team
|
|
707
|
+
# Get the team's shared preferences by its unique ID. If a preference doesn't
|
|
670
708
|
# need to be shared by all team members, prefer storing them in [user
|
|
671
709
|
# preferences](https://appwrite.io/docs/references/cloud/client-web/account#getPrefs).
|
|
672
710
|
#
|
|
673
711
|
# @param [String] team_id Team ID.
|
|
674
712
|
#
|
|
675
713
|
# @return [Preferences]
|
|
676
|
-
def get_prefs(
|
|
714
|
+
def get_prefs(
|
|
715
|
+
team_id:
|
|
716
|
+
)
|
|
677
717
|
api_path = '/teams/{teamId}/prefs'
|
|
678
718
|
.gsub('{teamId}', team_id)
|
|
679
719
|
|
|
680
720
|
if team_id.nil?
|
|
681
|
-
|
|
721
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
682
722
|
end
|
|
683
723
|
|
|
684
|
-
api_params = {
|
|
685
|
-
|
|
686
|
-
|
|
724
|
+
api_params = {}
|
|
725
|
+
|
|
687
726
|
api_headers = {
|
|
688
727
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
689
728
|
"accept": 'application/json',
|
|
@@ -696,10 +735,9 @@ module Appwrite
|
|
|
696
735
|
params: api_params,
|
|
697
736
|
response_type: Models::Preferences
|
|
698
737
|
)
|
|
699
|
-
|
|
700
738
|
end
|
|
701
739
|
|
|
702
|
-
# Update the team
|
|
740
|
+
# Update the team's preferences by its unique ID. The object you pass is
|
|
703
741
|
# stored as is and replaces any previous value. The maximum allowed prefs
|
|
704
742
|
# size is 64kB and throws an error if exceeded.
|
|
705
743
|
#
|
|
@@ -707,22 +745,25 @@ module Appwrite
|
|
|
707
745
|
# @param [Hash] prefs Prefs key-value JSON object.
|
|
708
746
|
#
|
|
709
747
|
# @return [Preferences]
|
|
710
|
-
def update_prefs(
|
|
748
|
+
def update_prefs(
|
|
749
|
+
team_id:,
|
|
750
|
+
prefs:
|
|
751
|
+
)
|
|
711
752
|
api_path = '/teams/{teamId}/prefs'
|
|
712
753
|
.gsub('{teamId}', team_id)
|
|
713
754
|
|
|
714
755
|
if team_id.nil?
|
|
715
|
-
|
|
756
|
+
raise Appwrite::Exception.new('Missing required parameter: "teamId"')
|
|
716
757
|
end
|
|
717
758
|
|
|
718
759
|
if prefs.nil?
|
|
719
|
-
|
|
760
|
+
raise Appwrite::Exception.new('Missing required parameter: "prefs"')
|
|
720
761
|
end
|
|
721
762
|
|
|
722
763
|
api_params = {
|
|
723
764
|
prefs: prefs,
|
|
724
765
|
}
|
|
725
|
-
|
|
766
|
+
|
|
726
767
|
api_headers = {
|
|
727
768
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
728
769
|
"content-type": 'application/json',
|
|
@@ -736,8 +777,6 @@ module Appwrite
|
|
|
736
777
|
params: api_params,
|
|
737
778
|
response_type: Models::Preferences
|
|
738
779
|
)
|
|
739
|
-
|
|
740
780
|
end
|
|
741
|
-
|
|
742
|
-
end
|
|
781
|
+
end
|
|
743
782
|
end
|