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,13 +1,12 @@
|
|
|
1
|
-
#frozen_string_literal: true
|
|
1
|
+
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
module Appwrite
|
|
4
4
|
class Users < Service
|
|
5
|
-
|
|
6
5
|
def initialize(client)
|
|
7
6
|
@client = client
|
|
8
7
|
end
|
|
9
8
|
|
|
10
|
-
# Get a list of all the project
|
|
9
|
+
# Get a list of all the project's users. You can use the query params to
|
|
11
10
|
# filter your results.
|
|
12
11
|
#
|
|
13
12
|
# @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, email, phone, status, passwordUpdate, registration, emailVerification, phoneVerification, labels, impersonator, accessedAt
|
|
@@ -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 [UserList]
|
|
18
|
-
def list(
|
|
17
|
+
def list(
|
|
18
|
+
queries: nil,
|
|
19
|
+
search: nil,
|
|
20
|
+
total: nil
|
|
21
|
+
)
|
|
19
22
|
api_path = '/users'
|
|
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,23 +39,28 @@ module Appwrite
|
|
|
36
39
|
params: api_params,
|
|
37
40
|
response_type: Models::UserList
|
|
38
41
|
)
|
|
39
|
-
|
|
40
42
|
end
|
|
41
43
|
|
|
42
44
|
# Create a new user.
|
|
43
45
|
#
|
|
44
|
-
# @param [String] user_id User 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] user_id User 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] email User email.
|
|
46
|
-
# @param [String] phone Phone number. Format this number with a leading
|
|
48
|
+
# @param [String] phone Phone number. Format this number with a leading '+' and a country code, e.g., +16175551212.
|
|
47
49
|
# @param [String] password Plain text user password. Must be at least 8 chars.
|
|
48
50
|
# @param [String] name User name. Max length: 128 chars.
|
|
49
51
|
#
|
|
50
52
|
# @return [User]
|
|
51
|
-
def create(
|
|
53
|
+
def create(
|
|
54
|
+
user_id:,
|
|
55
|
+
email: nil,
|
|
56
|
+
phone: nil,
|
|
57
|
+
password: nil,
|
|
58
|
+
name: nil
|
|
59
|
+
)
|
|
52
60
|
api_path = '/users'
|
|
53
61
|
|
|
54
62
|
if user_id.nil?
|
|
55
|
-
|
|
63
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
56
64
|
end
|
|
57
65
|
|
|
58
66
|
api_params = {
|
|
@@ -62,7 +70,7 @@ module Appwrite
|
|
|
62
70
|
password: password,
|
|
63
71
|
name: name,
|
|
64
72
|
}
|
|
65
|
-
|
|
73
|
+
|
|
66
74
|
api_headers = {
|
|
67
75
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
68
76
|
"content-type": 'application/json',
|
|
@@ -76,7 +84,6 @@ module Appwrite
|
|
|
76
84
|
params: api_params,
|
|
77
85
|
response_type: Models::User
|
|
78
86
|
)
|
|
79
|
-
|
|
80
87
|
end
|
|
81
88
|
|
|
82
89
|
# Create a new user. Password provided must be hashed with the
|
|
@@ -84,25 +91,30 @@ module Appwrite
|
|
|
84
91
|
# /users](https://appwrite.io/docs/server/users#usersCreate) endpoint to
|
|
85
92
|
# create users with a plain text password.
|
|
86
93
|
#
|
|
87
|
-
# @param [String] user_id User 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
|
|
94
|
+
# @param [String] user_id User 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.
|
|
88
95
|
# @param [String] email User email.
|
|
89
96
|
# @param [String] password User password hashed using Argon2.
|
|
90
97
|
# @param [String] name User name. Max length: 128 chars.
|
|
91
98
|
#
|
|
92
99
|
# @return [User]
|
|
93
|
-
def create_argon2_user(
|
|
100
|
+
def create_argon2_user(
|
|
101
|
+
user_id:,
|
|
102
|
+
email:,
|
|
103
|
+
password:,
|
|
104
|
+
name: nil
|
|
105
|
+
)
|
|
94
106
|
api_path = '/users/argon2'
|
|
95
107
|
|
|
96
108
|
if user_id.nil?
|
|
97
|
-
|
|
109
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
98
110
|
end
|
|
99
111
|
|
|
100
112
|
if email.nil?
|
|
101
|
-
|
|
113
|
+
raise Appwrite::Exception.new('Missing required parameter: "email"')
|
|
102
114
|
end
|
|
103
115
|
|
|
104
116
|
if password.nil?
|
|
105
|
-
|
|
117
|
+
raise Appwrite::Exception.new('Missing required parameter: "password"')
|
|
106
118
|
end
|
|
107
119
|
|
|
108
120
|
api_params = {
|
|
@@ -111,7 +123,7 @@ module Appwrite
|
|
|
111
123
|
password: password,
|
|
112
124
|
name: name,
|
|
113
125
|
}
|
|
114
|
-
|
|
126
|
+
|
|
115
127
|
api_headers = {
|
|
116
128
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
117
129
|
"content-type": 'application/json',
|
|
@@ -125,7 +137,6 @@ module Appwrite
|
|
|
125
137
|
params: api_params,
|
|
126
138
|
response_type: Models::User
|
|
127
139
|
)
|
|
128
|
-
|
|
129
140
|
end
|
|
130
141
|
|
|
131
142
|
# Create a new user. Password provided must be hashed with the
|
|
@@ -133,25 +144,30 @@ module Appwrite
|
|
|
133
144
|
# /users](https://appwrite.io/docs/server/users#usersCreate) endpoint to
|
|
134
145
|
# create users with a plain text password.
|
|
135
146
|
#
|
|
136
|
-
# @param [String] user_id User 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
|
|
147
|
+
# @param [String] user_id User 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.
|
|
137
148
|
# @param [String] email User email.
|
|
138
149
|
# @param [String] password User password hashed using Bcrypt.
|
|
139
150
|
# @param [String] name User name. Max length: 128 chars.
|
|
140
151
|
#
|
|
141
152
|
# @return [User]
|
|
142
|
-
def create_bcrypt_user(
|
|
153
|
+
def create_bcrypt_user(
|
|
154
|
+
user_id:,
|
|
155
|
+
email:,
|
|
156
|
+
password:,
|
|
157
|
+
name: nil
|
|
158
|
+
)
|
|
143
159
|
api_path = '/users/bcrypt'
|
|
144
160
|
|
|
145
161
|
if user_id.nil?
|
|
146
|
-
|
|
162
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
147
163
|
end
|
|
148
164
|
|
|
149
165
|
if email.nil?
|
|
150
|
-
|
|
166
|
+
raise Appwrite::Exception.new('Missing required parameter: "email"')
|
|
151
167
|
end
|
|
152
168
|
|
|
153
169
|
if password.nil?
|
|
154
|
-
|
|
170
|
+
raise Appwrite::Exception.new('Missing required parameter: "password"')
|
|
155
171
|
end
|
|
156
172
|
|
|
157
173
|
api_params = {
|
|
@@ -160,7 +176,7 @@ module Appwrite
|
|
|
160
176
|
password: password,
|
|
161
177
|
name: name,
|
|
162
178
|
}
|
|
163
|
-
|
|
179
|
+
|
|
164
180
|
api_headers = {
|
|
165
181
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
166
182
|
"content-type": 'application/json',
|
|
@@ -174,7 +190,6 @@ module Appwrite
|
|
|
174
190
|
params: api_params,
|
|
175
191
|
response_type: Models::User
|
|
176
192
|
)
|
|
177
|
-
|
|
178
193
|
end
|
|
179
194
|
|
|
180
195
|
# Get identities for all users.
|
|
@@ -184,7 +199,11 @@ module Appwrite
|
|
|
184
199
|
# @param [] total When set to false, the total count returned will be 0 and will not be calculated.
|
|
185
200
|
#
|
|
186
201
|
# @return [IdentityList]
|
|
187
|
-
def list_identities(
|
|
202
|
+
def list_identities(
|
|
203
|
+
queries: nil,
|
|
204
|
+
search: nil,
|
|
205
|
+
total: nil
|
|
206
|
+
)
|
|
188
207
|
api_path = '/users/identities'
|
|
189
208
|
|
|
190
209
|
api_params = {
|
|
@@ -192,7 +211,7 @@ module Appwrite
|
|
|
192
211
|
search: search,
|
|
193
212
|
total: total,
|
|
194
213
|
}
|
|
195
|
-
|
|
214
|
+
|
|
196
215
|
api_headers = {
|
|
197
216
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
198
217
|
"accept": 'application/json',
|
|
@@ -205,7 +224,6 @@ module Appwrite
|
|
|
205
224
|
params: api_params,
|
|
206
225
|
response_type: Models::IdentityList
|
|
207
226
|
)
|
|
208
|
-
|
|
209
227
|
end
|
|
210
228
|
|
|
211
229
|
# Delete an identity by its unique ID.
|
|
@@ -213,17 +231,18 @@ module Appwrite
|
|
|
213
231
|
# @param [String] identity_id Identity ID.
|
|
214
232
|
#
|
|
215
233
|
# @return []
|
|
216
|
-
def delete_identity(
|
|
234
|
+
def delete_identity(
|
|
235
|
+
identity_id:
|
|
236
|
+
)
|
|
217
237
|
api_path = '/users/identities/{identityId}'
|
|
218
238
|
.gsub('{identityId}', identity_id)
|
|
219
239
|
|
|
220
240
|
if identity_id.nil?
|
|
221
|
-
|
|
241
|
+
raise Appwrite::Exception.new('Missing required parameter: "identityId"')
|
|
222
242
|
end
|
|
223
243
|
|
|
224
|
-
api_params = {
|
|
225
|
-
|
|
226
|
-
|
|
244
|
+
api_params = {}
|
|
245
|
+
|
|
227
246
|
api_headers = {
|
|
228
247
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
229
248
|
"content-type": 'application/json',
|
|
@@ -235,7 +254,6 @@ module Appwrite
|
|
|
235
254
|
headers: api_headers,
|
|
236
255
|
params: api_params,
|
|
237
256
|
)
|
|
238
|
-
|
|
239
257
|
end
|
|
240
258
|
|
|
241
259
|
# Create a new user. Password provided must be hashed with the
|
|
@@ -243,25 +261,30 @@ module Appwrite
|
|
|
243
261
|
# /users](https://appwrite.io/docs/server/users#usersCreate) endpoint to
|
|
244
262
|
# create users with a plain text password.
|
|
245
263
|
#
|
|
246
|
-
# @param [String] user_id User 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
|
|
264
|
+
# @param [String] user_id User 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.
|
|
247
265
|
# @param [String] email User email.
|
|
248
266
|
# @param [String] password User password hashed using MD5.
|
|
249
267
|
# @param [String] name User name. Max length: 128 chars.
|
|
250
268
|
#
|
|
251
269
|
# @return [User]
|
|
252
|
-
def create_md5_user(
|
|
270
|
+
def create_md5_user(
|
|
271
|
+
user_id:,
|
|
272
|
+
email:,
|
|
273
|
+
password:,
|
|
274
|
+
name: nil
|
|
275
|
+
)
|
|
253
276
|
api_path = '/users/md5'
|
|
254
277
|
|
|
255
278
|
if user_id.nil?
|
|
256
|
-
|
|
279
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
257
280
|
end
|
|
258
281
|
|
|
259
282
|
if email.nil?
|
|
260
|
-
|
|
283
|
+
raise Appwrite::Exception.new('Missing required parameter: "email"')
|
|
261
284
|
end
|
|
262
285
|
|
|
263
286
|
if password.nil?
|
|
264
|
-
|
|
287
|
+
raise Appwrite::Exception.new('Missing required parameter: "password"')
|
|
265
288
|
end
|
|
266
289
|
|
|
267
290
|
api_params = {
|
|
@@ -270,7 +293,7 @@ module Appwrite
|
|
|
270
293
|
password: password,
|
|
271
294
|
name: name,
|
|
272
295
|
}
|
|
273
|
-
|
|
296
|
+
|
|
274
297
|
api_headers = {
|
|
275
298
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
276
299
|
"content-type": 'application/json',
|
|
@@ -284,7 +307,6 @@ module Appwrite
|
|
|
284
307
|
params: api_params,
|
|
285
308
|
response_type: Models::User
|
|
286
309
|
)
|
|
287
|
-
|
|
288
310
|
end
|
|
289
311
|
|
|
290
312
|
# Create a new user. Password provided must be hashed with the
|
|
@@ -292,25 +314,30 @@ module Appwrite
|
|
|
292
314
|
# /users](https://appwrite.io/docs/server/users#usersCreate) endpoint to
|
|
293
315
|
# create users with a plain text password.
|
|
294
316
|
#
|
|
295
|
-
# @param [String] user_id User ID. Choose a custom ID or pass the string `ID.unique()`to auto generate it. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can
|
|
317
|
+
# @param [String] user_id User ID. Choose a custom ID or pass the string `ID.unique()`to auto generate it. 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.
|
|
296
318
|
# @param [String] email User email.
|
|
297
319
|
# @param [String] password User password hashed using PHPass.
|
|
298
320
|
# @param [String] name User name. Max length: 128 chars.
|
|
299
321
|
#
|
|
300
322
|
# @return [User]
|
|
301
|
-
def create_ph_pass_user(
|
|
323
|
+
def create_ph_pass_user(
|
|
324
|
+
user_id:,
|
|
325
|
+
email:,
|
|
326
|
+
password:,
|
|
327
|
+
name: nil
|
|
328
|
+
)
|
|
302
329
|
api_path = '/users/phpass'
|
|
303
330
|
|
|
304
331
|
if user_id.nil?
|
|
305
|
-
|
|
332
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
306
333
|
end
|
|
307
334
|
|
|
308
335
|
if email.nil?
|
|
309
|
-
|
|
336
|
+
raise Appwrite::Exception.new('Missing required parameter: "email"')
|
|
310
337
|
end
|
|
311
338
|
|
|
312
339
|
if password.nil?
|
|
313
|
-
|
|
340
|
+
raise Appwrite::Exception.new('Missing required parameter: "password"')
|
|
314
341
|
end
|
|
315
342
|
|
|
316
343
|
api_params = {
|
|
@@ -319,7 +346,7 @@ module Appwrite
|
|
|
319
346
|
password: password,
|
|
320
347
|
name: name,
|
|
321
348
|
}
|
|
322
|
-
|
|
349
|
+
|
|
323
350
|
api_headers = {
|
|
324
351
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
325
352
|
"content-type": 'application/json',
|
|
@@ -333,7 +360,6 @@ module Appwrite
|
|
|
333
360
|
params: api_params,
|
|
334
361
|
response_type: Models::User
|
|
335
362
|
)
|
|
336
|
-
|
|
337
363
|
end
|
|
338
364
|
|
|
339
365
|
# Create a new user. Password provided must be hashed with the
|
|
@@ -341,7 +367,7 @@ module Appwrite
|
|
|
341
367
|
# /users](https://appwrite.io/docs/server/users#usersCreate) endpoint to
|
|
342
368
|
# create users with a plain text password.
|
|
343
369
|
#
|
|
344
|
-
# @param [String] user_id User 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
|
|
370
|
+
# @param [String] user_id User 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.
|
|
345
371
|
# @param [String] email User email.
|
|
346
372
|
# @param [String] password User password hashed using Scrypt.
|
|
347
373
|
# @param [String] password_salt Optional salt used to hash password.
|
|
@@ -352,39 +378,49 @@ module Appwrite
|
|
|
352
378
|
# @param [String] name User name. Max length: 128 chars.
|
|
353
379
|
#
|
|
354
380
|
# @return [User]
|
|
355
|
-
def create_scrypt_user(
|
|
381
|
+
def create_scrypt_user(
|
|
382
|
+
user_id:,
|
|
383
|
+
email:,
|
|
384
|
+
password:,
|
|
385
|
+
password_salt:,
|
|
386
|
+
password_cpu:,
|
|
387
|
+
password_memory:,
|
|
388
|
+
password_parallel:,
|
|
389
|
+
password_length:,
|
|
390
|
+
name: nil
|
|
391
|
+
)
|
|
356
392
|
api_path = '/users/scrypt'
|
|
357
393
|
|
|
358
394
|
if user_id.nil?
|
|
359
|
-
|
|
395
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
360
396
|
end
|
|
361
397
|
|
|
362
398
|
if email.nil?
|
|
363
|
-
|
|
399
|
+
raise Appwrite::Exception.new('Missing required parameter: "email"')
|
|
364
400
|
end
|
|
365
401
|
|
|
366
402
|
if password.nil?
|
|
367
|
-
|
|
403
|
+
raise Appwrite::Exception.new('Missing required parameter: "password"')
|
|
368
404
|
end
|
|
369
405
|
|
|
370
406
|
if password_salt.nil?
|
|
371
|
-
|
|
407
|
+
raise Appwrite::Exception.new('Missing required parameter: "passwordSalt"')
|
|
372
408
|
end
|
|
373
409
|
|
|
374
410
|
if password_cpu.nil?
|
|
375
|
-
|
|
411
|
+
raise Appwrite::Exception.new('Missing required parameter: "passwordCpu"')
|
|
376
412
|
end
|
|
377
413
|
|
|
378
414
|
if password_memory.nil?
|
|
379
|
-
|
|
415
|
+
raise Appwrite::Exception.new('Missing required parameter: "passwordMemory"')
|
|
380
416
|
end
|
|
381
417
|
|
|
382
418
|
if password_parallel.nil?
|
|
383
|
-
|
|
419
|
+
raise Appwrite::Exception.new('Missing required parameter: "passwordParallel"')
|
|
384
420
|
end
|
|
385
421
|
|
|
386
422
|
if password_length.nil?
|
|
387
|
-
|
|
423
|
+
raise Appwrite::Exception.new('Missing required parameter: "passwordLength"')
|
|
388
424
|
end
|
|
389
425
|
|
|
390
426
|
api_params = {
|
|
@@ -398,7 +434,7 @@ module Appwrite
|
|
|
398
434
|
passwordLength: password_length,
|
|
399
435
|
name: name,
|
|
400
436
|
}
|
|
401
|
-
|
|
437
|
+
|
|
402
438
|
api_headers = {
|
|
403
439
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
404
440
|
"content-type": 'application/json',
|
|
@@ -412,7 +448,6 @@ module Appwrite
|
|
|
412
448
|
params: api_params,
|
|
413
449
|
response_type: Models::User
|
|
414
450
|
)
|
|
415
|
-
|
|
416
451
|
end
|
|
417
452
|
|
|
418
453
|
# Create a new user. Password provided must be hashed with the [Scrypt
|
|
@@ -421,7 +456,7 @@ module Appwrite
|
|
|
421
456
|
# /users](https://appwrite.io/docs/server/users#usersCreate) endpoint to
|
|
422
457
|
# create users with a plain text password.
|
|
423
458
|
#
|
|
424
|
-
# @param [String] user_id User 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
|
|
459
|
+
# @param [String] user_id User 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.
|
|
425
460
|
# @param [String] email User email.
|
|
426
461
|
# @param [String] password User password hashed using Scrypt Modified.
|
|
427
462
|
# @param [String] password_salt Salt used to hash password.
|
|
@@ -430,31 +465,39 @@ module Appwrite
|
|
|
430
465
|
# @param [String] name User name. Max length: 128 chars.
|
|
431
466
|
#
|
|
432
467
|
# @return [User]
|
|
433
|
-
def create_scrypt_modified_user(
|
|
468
|
+
def create_scrypt_modified_user(
|
|
469
|
+
user_id:,
|
|
470
|
+
email:,
|
|
471
|
+
password:,
|
|
472
|
+
password_salt:,
|
|
473
|
+
password_salt_separator:,
|
|
474
|
+
password_signer_key:,
|
|
475
|
+
name: nil
|
|
476
|
+
)
|
|
434
477
|
api_path = '/users/scrypt-modified'
|
|
435
478
|
|
|
436
479
|
if user_id.nil?
|
|
437
|
-
|
|
480
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
438
481
|
end
|
|
439
482
|
|
|
440
483
|
if email.nil?
|
|
441
|
-
|
|
484
|
+
raise Appwrite::Exception.new('Missing required parameter: "email"')
|
|
442
485
|
end
|
|
443
486
|
|
|
444
487
|
if password.nil?
|
|
445
|
-
|
|
488
|
+
raise Appwrite::Exception.new('Missing required parameter: "password"')
|
|
446
489
|
end
|
|
447
490
|
|
|
448
491
|
if password_salt.nil?
|
|
449
|
-
|
|
492
|
+
raise Appwrite::Exception.new('Missing required parameter: "passwordSalt"')
|
|
450
493
|
end
|
|
451
494
|
|
|
452
495
|
if password_salt_separator.nil?
|
|
453
|
-
|
|
496
|
+
raise Appwrite::Exception.new('Missing required parameter: "passwordSaltSeparator"')
|
|
454
497
|
end
|
|
455
498
|
|
|
456
499
|
if password_signer_key.nil?
|
|
457
|
-
|
|
500
|
+
raise Appwrite::Exception.new('Missing required parameter: "passwordSignerKey"')
|
|
458
501
|
end
|
|
459
502
|
|
|
460
503
|
api_params = {
|
|
@@ -466,7 +509,7 @@ module Appwrite
|
|
|
466
509
|
passwordSignerKey: password_signer_key,
|
|
467
510
|
name: name,
|
|
468
511
|
}
|
|
469
|
-
|
|
512
|
+
|
|
470
513
|
api_headers = {
|
|
471
514
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
472
515
|
"content-type": 'application/json',
|
|
@@ -480,7 +523,6 @@ module Appwrite
|
|
|
480
523
|
params: api_params,
|
|
481
524
|
response_type: Models::User
|
|
482
525
|
)
|
|
483
|
-
|
|
484
526
|
end
|
|
485
527
|
|
|
486
528
|
# Create a new user. Password provided must be hashed with the
|
|
@@ -488,26 +530,32 @@ module Appwrite
|
|
|
488
530
|
# the [POST /users](https://appwrite.io/docs/server/users#usersCreate)
|
|
489
531
|
# endpoint to create users with a plain text password.
|
|
490
532
|
#
|
|
491
|
-
# @param [String] user_id User 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
|
|
533
|
+
# @param [String] user_id User 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.
|
|
492
534
|
# @param [String] email User email.
|
|
493
535
|
# @param [String] password User password hashed using SHA.
|
|
494
|
-
# @param [PasswordHash] password_version Optional SHA version used to hash password. Allowed values are:
|
|
536
|
+
# @param [PasswordHash] password_version Optional SHA version used to hash password. Allowed values are: 'sha1', 'sha224', 'sha256', 'sha384', 'sha512/224', 'sha512/256', 'sha512', 'sha3-224', 'sha3-256', 'sha3-384', 'sha3-512'
|
|
495
537
|
# @param [String] name User name. Max length: 128 chars.
|
|
496
538
|
#
|
|
497
539
|
# @return [User]
|
|
498
|
-
def create_sha_user(
|
|
540
|
+
def create_sha_user(
|
|
541
|
+
user_id:,
|
|
542
|
+
email:,
|
|
543
|
+
password:,
|
|
544
|
+
password_version: nil,
|
|
545
|
+
name: nil
|
|
546
|
+
)
|
|
499
547
|
api_path = '/users/sha'
|
|
500
548
|
|
|
501
549
|
if user_id.nil?
|
|
502
|
-
|
|
550
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
503
551
|
end
|
|
504
552
|
|
|
505
553
|
if email.nil?
|
|
506
|
-
|
|
554
|
+
raise Appwrite::Exception.new('Missing required parameter: "email"')
|
|
507
555
|
end
|
|
508
556
|
|
|
509
557
|
if password.nil?
|
|
510
|
-
|
|
558
|
+
raise Appwrite::Exception.new('Missing required parameter: "password"')
|
|
511
559
|
end
|
|
512
560
|
|
|
513
561
|
api_params = {
|
|
@@ -517,7 +565,7 @@ module Appwrite
|
|
|
517
565
|
passwordVersion: password_version,
|
|
518
566
|
name: name,
|
|
519
567
|
}
|
|
520
|
-
|
|
568
|
+
|
|
521
569
|
api_headers = {
|
|
522
570
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
523
571
|
"content-type": 'application/json',
|
|
@@ -531,7 +579,6 @@ module Appwrite
|
|
|
531
579
|
params: api_params,
|
|
532
580
|
response_type: Models::User
|
|
533
581
|
)
|
|
534
|
-
|
|
535
582
|
end
|
|
536
583
|
|
|
537
584
|
# Get a user by its unique ID.
|
|
@@ -539,17 +586,18 @@ module Appwrite
|
|
|
539
586
|
# @param [String] user_id User ID.
|
|
540
587
|
#
|
|
541
588
|
# @return [User]
|
|
542
|
-
def get(
|
|
589
|
+
def get(
|
|
590
|
+
user_id:
|
|
591
|
+
)
|
|
543
592
|
api_path = '/users/{userId}'
|
|
544
593
|
.gsub('{userId}', user_id)
|
|
545
594
|
|
|
546
595
|
if user_id.nil?
|
|
547
|
-
|
|
596
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
548
597
|
end
|
|
549
598
|
|
|
550
|
-
api_params = {
|
|
551
|
-
|
|
552
|
-
|
|
599
|
+
api_params = {}
|
|
600
|
+
|
|
553
601
|
api_headers = {
|
|
554
602
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
555
603
|
"accept": 'application/json',
|
|
@@ -562,10 +610,9 @@ module Appwrite
|
|
|
562
610
|
params: api_params,
|
|
563
611
|
response_type: Models::User
|
|
564
612
|
)
|
|
565
|
-
|
|
566
613
|
end
|
|
567
614
|
|
|
568
|
-
# Delete a user by its unique ID, thereby releasing it
|
|
615
|
+
# Delete a user by its unique ID, thereby releasing it's ID. Since ID is
|
|
569
616
|
# released and can be reused, all user-related resources like documents or
|
|
570
617
|
# storage files should be deleted before user deletion. If you want to keep
|
|
571
618
|
# ID reserved, use the
|
|
@@ -575,17 +622,18 @@ module Appwrite
|
|
|
575
622
|
# @param [String] user_id User ID.
|
|
576
623
|
#
|
|
577
624
|
# @return []
|
|
578
|
-
def delete(
|
|
625
|
+
def delete(
|
|
626
|
+
user_id:
|
|
627
|
+
)
|
|
579
628
|
api_path = '/users/{userId}'
|
|
580
629
|
.gsub('{userId}', user_id)
|
|
581
630
|
|
|
582
631
|
if user_id.nil?
|
|
583
|
-
|
|
632
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
584
633
|
end
|
|
585
634
|
|
|
586
|
-
api_params = {
|
|
587
|
-
|
|
588
|
-
|
|
635
|
+
api_params = {}
|
|
636
|
+
|
|
589
637
|
api_headers = {
|
|
590
638
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
591
639
|
"content-type": 'application/json',
|
|
@@ -597,7 +645,6 @@ module Appwrite
|
|
|
597
645
|
headers: api_headers,
|
|
598
646
|
params: api_params,
|
|
599
647
|
)
|
|
600
|
-
|
|
601
648
|
end
|
|
602
649
|
|
|
603
650
|
# Update the user email by its unique ID.
|
|
@@ -606,22 +653,25 @@ module Appwrite
|
|
|
606
653
|
# @param [String] email User email.
|
|
607
654
|
#
|
|
608
655
|
# @return [User]
|
|
609
|
-
def update_email(
|
|
656
|
+
def update_email(
|
|
657
|
+
user_id:,
|
|
658
|
+
email:
|
|
659
|
+
)
|
|
610
660
|
api_path = '/users/{userId}/email'
|
|
611
661
|
.gsub('{userId}', user_id)
|
|
612
662
|
|
|
613
663
|
if user_id.nil?
|
|
614
|
-
|
|
664
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
615
665
|
end
|
|
616
666
|
|
|
617
667
|
if email.nil?
|
|
618
|
-
|
|
668
|
+
raise Appwrite::Exception.new('Missing required parameter: "email"')
|
|
619
669
|
end
|
|
620
670
|
|
|
621
671
|
api_params = {
|
|
622
672
|
email: email,
|
|
623
673
|
}
|
|
624
|
-
|
|
674
|
+
|
|
625
675
|
api_headers = {
|
|
626
676
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
627
677
|
"content-type": 'application/json',
|
|
@@ -635,7 +685,6 @@ module Appwrite
|
|
|
635
685
|
params: api_params,
|
|
636
686
|
response_type: Models::User
|
|
637
687
|
)
|
|
638
|
-
|
|
639
688
|
end
|
|
640
689
|
|
|
641
690
|
# Enable or disable whether a user can impersonate other users. When
|
|
@@ -643,28 +692,31 @@ module Appwrite
|
|
|
643
692
|
# behavior, while internal audit logs still attribute the action to the
|
|
644
693
|
# original impersonator and store the impersonated target details only in
|
|
645
694
|
# internal audit payload data.
|
|
646
|
-
#
|
|
695
|
+
#
|
|
647
696
|
#
|
|
648
697
|
# @param [String] user_id User ID.
|
|
649
698
|
# @param [] impersonator Whether the user can impersonate other users. When true, the user can browse project users to choose a target and can pass impersonation headers to act as that user. Internal audit logs still attribute impersonated actions to the original impersonator and store the target user details only in internal audit payload data.
|
|
650
699
|
#
|
|
651
700
|
# @return [User]
|
|
652
|
-
def update_impersonator(
|
|
701
|
+
def update_impersonator(
|
|
702
|
+
user_id:,
|
|
703
|
+
impersonator:
|
|
704
|
+
)
|
|
653
705
|
api_path = '/users/{userId}/impersonator'
|
|
654
706
|
.gsub('{userId}', user_id)
|
|
655
707
|
|
|
656
708
|
if user_id.nil?
|
|
657
|
-
|
|
709
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
658
710
|
end
|
|
659
711
|
|
|
660
712
|
if impersonator.nil?
|
|
661
|
-
|
|
713
|
+
raise Appwrite::Exception.new('Missing required parameter: "impersonator"')
|
|
662
714
|
end
|
|
663
715
|
|
|
664
716
|
api_params = {
|
|
665
717
|
impersonator: impersonator,
|
|
666
718
|
}
|
|
667
|
-
|
|
719
|
+
|
|
668
720
|
api_headers = {
|
|
669
721
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
670
722
|
"content-type": 'application/json',
|
|
@@ -678,7 +730,6 @@ module Appwrite
|
|
|
678
730
|
params: api_params,
|
|
679
731
|
response_type: Models::User
|
|
680
732
|
)
|
|
681
|
-
|
|
682
733
|
end
|
|
683
734
|
|
|
684
735
|
# Use this endpoint to create a JSON Web Token for user by its unique ID. You
|
|
@@ -686,23 +737,27 @@ module Appwrite
|
|
|
686
737
|
# secret will become invalid if the session it uses gets deleted.
|
|
687
738
|
#
|
|
688
739
|
# @param [String] user_id User ID.
|
|
689
|
-
# @param [String] session_id Session ID. Use the string
|
|
740
|
+
# @param [String] session_id Session ID. Use the string 'recent()' to use the most recent session, which is also the default.
|
|
690
741
|
# @param [Integer] duration Time in seconds before JWT expires. Default duration is 900 seconds, and maximum is 3600 seconds.
|
|
691
742
|
#
|
|
692
743
|
# @return [Jwt]
|
|
693
|
-
def create_jwt(
|
|
744
|
+
def create_jwt(
|
|
745
|
+
user_id:,
|
|
746
|
+
session_id: nil,
|
|
747
|
+
duration: nil
|
|
748
|
+
)
|
|
694
749
|
api_path = '/users/{userId}/jwts'
|
|
695
750
|
.gsub('{userId}', user_id)
|
|
696
751
|
|
|
697
752
|
if user_id.nil?
|
|
698
|
-
|
|
753
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
699
754
|
end
|
|
700
755
|
|
|
701
756
|
api_params = {
|
|
702
757
|
sessionId: session_id,
|
|
703
758
|
duration: duration,
|
|
704
759
|
}
|
|
705
|
-
|
|
760
|
+
|
|
706
761
|
api_headers = {
|
|
707
762
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
708
763
|
"content-type": 'application/json',
|
|
@@ -716,13 +771,12 @@ module Appwrite
|
|
|
716
771
|
params: api_params,
|
|
717
772
|
response_type: Models::Jwt
|
|
718
773
|
)
|
|
719
|
-
|
|
720
774
|
end
|
|
721
775
|
|
|
722
|
-
# Update the user labels by its unique ID.
|
|
723
|
-
#
|
|
776
|
+
# Update the user labels by its unique ID.
|
|
777
|
+
#
|
|
724
778
|
# Labels can be used to grant access to resources. While teams are a way for
|
|
725
|
-
# user
|
|
779
|
+
# user's to share access to a resource, labels can be defined by the
|
|
726
780
|
# developer to grant access without an invitation. See the [Permissions
|
|
727
781
|
# docs](https://appwrite.io/docs/permissions) for more info.
|
|
728
782
|
#
|
|
@@ -730,22 +784,25 @@ module Appwrite
|
|
|
730
784
|
# @param [Array] labels Array of user labels. Replaces the previous labels. Maximum of 1000 labels are allowed, each up to 36 alphanumeric characters long.
|
|
731
785
|
#
|
|
732
786
|
# @return [User]
|
|
733
|
-
def update_labels(
|
|
787
|
+
def update_labels(
|
|
788
|
+
user_id:,
|
|
789
|
+
labels:
|
|
790
|
+
)
|
|
734
791
|
api_path = '/users/{userId}/labels'
|
|
735
792
|
.gsub('{userId}', user_id)
|
|
736
793
|
|
|
737
794
|
if user_id.nil?
|
|
738
|
-
|
|
795
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
739
796
|
end
|
|
740
797
|
|
|
741
798
|
if labels.nil?
|
|
742
|
-
|
|
799
|
+
raise Appwrite::Exception.new('Missing required parameter: "labels"')
|
|
743
800
|
end
|
|
744
801
|
|
|
745
802
|
api_params = {
|
|
746
803
|
labels: labels,
|
|
747
804
|
}
|
|
748
|
-
|
|
805
|
+
|
|
749
806
|
api_headers = {
|
|
750
807
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
751
808
|
"content-type": 'application/json',
|
|
@@ -759,7 +816,6 @@ module Appwrite
|
|
|
759
816
|
params: api_params,
|
|
760
817
|
response_type: Models::User
|
|
761
818
|
)
|
|
762
|
-
|
|
763
819
|
end
|
|
764
820
|
|
|
765
821
|
# Get the user activity logs list by its unique ID.
|
|
@@ -769,19 +825,23 @@ module Appwrite
|
|
|
769
825
|
# @param [] total When set to false, the total count returned will be 0 and will not be calculated.
|
|
770
826
|
#
|
|
771
827
|
# @return [LogList]
|
|
772
|
-
def list_logs(
|
|
828
|
+
def list_logs(
|
|
829
|
+
user_id:,
|
|
830
|
+
queries: nil,
|
|
831
|
+
total: nil
|
|
832
|
+
)
|
|
773
833
|
api_path = '/users/{userId}/logs'
|
|
774
834
|
.gsub('{userId}', user_id)
|
|
775
835
|
|
|
776
836
|
if user_id.nil?
|
|
777
|
-
|
|
837
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
778
838
|
end
|
|
779
839
|
|
|
780
840
|
api_params = {
|
|
781
841
|
queries: queries,
|
|
782
842
|
total: total,
|
|
783
843
|
}
|
|
784
|
-
|
|
844
|
+
|
|
785
845
|
api_headers = {
|
|
786
846
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
787
847
|
"accept": 'application/json',
|
|
@@ -794,7 +854,6 @@ module Appwrite
|
|
|
794
854
|
params: api_params,
|
|
795
855
|
response_type: Models::LogList
|
|
796
856
|
)
|
|
797
|
-
|
|
798
857
|
end
|
|
799
858
|
|
|
800
859
|
# Get the user membership list by its unique ID.
|
|
@@ -805,12 +864,17 @@ module Appwrite
|
|
|
805
864
|
# @param [] total When set to false, the total count returned will be 0 and will not be calculated.
|
|
806
865
|
#
|
|
807
866
|
# @return [MembershipList]
|
|
808
|
-
def list_memberships(
|
|
867
|
+
def list_memberships(
|
|
868
|
+
user_id:,
|
|
869
|
+
queries: nil,
|
|
870
|
+
search: nil,
|
|
871
|
+
total: nil
|
|
872
|
+
)
|
|
809
873
|
api_path = '/users/{userId}/memberships'
|
|
810
874
|
.gsub('{userId}', user_id)
|
|
811
875
|
|
|
812
876
|
if user_id.nil?
|
|
813
|
-
|
|
877
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
814
878
|
end
|
|
815
879
|
|
|
816
880
|
api_params = {
|
|
@@ -818,7 +882,7 @@ module Appwrite
|
|
|
818
882
|
search: search,
|
|
819
883
|
total: total,
|
|
820
884
|
}
|
|
821
|
-
|
|
885
|
+
|
|
822
886
|
api_headers = {
|
|
823
887
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
824
888
|
"accept": 'application/json',
|
|
@@ -831,7 +895,6 @@ module Appwrite
|
|
|
831
895
|
params: api_params,
|
|
832
896
|
response_type: Models::MembershipList
|
|
833
897
|
)
|
|
834
|
-
|
|
835
898
|
end
|
|
836
899
|
|
|
837
900
|
# Enable or disable MFA on a user account.
|
|
@@ -840,22 +903,25 @@ module Appwrite
|
|
|
840
903
|
# @param [] mfa Enable or disable MFA.
|
|
841
904
|
#
|
|
842
905
|
# @return [User]
|
|
843
|
-
def update_mfa(
|
|
906
|
+
def update_mfa(
|
|
907
|
+
user_id:,
|
|
908
|
+
mfa:
|
|
909
|
+
)
|
|
844
910
|
api_path = '/users/{userId}/mfa'
|
|
845
911
|
.gsub('{userId}', user_id)
|
|
846
912
|
|
|
847
913
|
if user_id.nil?
|
|
848
|
-
|
|
914
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
849
915
|
end
|
|
850
916
|
|
|
851
917
|
if mfa.nil?
|
|
852
|
-
|
|
918
|
+
raise Appwrite::Exception.new('Missing required parameter: "mfa"')
|
|
853
919
|
end
|
|
854
920
|
|
|
855
921
|
api_params = {
|
|
856
922
|
mfa: mfa,
|
|
857
923
|
}
|
|
858
|
-
|
|
924
|
+
|
|
859
925
|
api_headers = {
|
|
860
926
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
861
927
|
"content-type": 'application/json',
|
|
@@ -869,7 +935,6 @@ module Appwrite
|
|
|
869
935
|
params: api_params,
|
|
870
936
|
response_type: Models::User
|
|
871
937
|
)
|
|
872
|
-
|
|
873
938
|
end
|
|
874
939
|
|
|
875
940
|
# Delete an authenticator app.
|
|
@@ -878,22 +943,24 @@ module Appwrite
|
|
|
878
943
|
# @param [AuthenticatorType] type Type of authenticator.
|
|
879
944
|
#
|
|
880
945
|
# @return []
|
|
881
|
-
def delete_mfa_authenticator(
|
|
946
|
+
def delete_mfa_authenticator(
|
|
947
|
+
user_id:,
|
|
948
|
+
type:
|
|
949
|
+
)
|
|
882
950
|
api_path = '/users/{userId}/mfa/authenticators/{type}'
|
|
883
951
|
.gsub('{userId}', user_id)
|
|
884
952
|
.gsub('{type}', type)
|
|
885
953
|
|
|
886
954
|
if user_id.nil?
|
|
887
|
-
|
|
955
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
888
956
|
end
|
|
889
957
|
|
|
890
958
|
if type.nil?
|
|
891
|
-
|
|
959
|
+
raise Appwrite::Exception.new('Missing required parameter: "type"')
|
|
892
960
|
end
|
|
893
961
|
|
|
894
|
-
api_params = {
|
|
895
|
-
|
|
896
|
-
|
|
962
|
+
api_params = {}
|
|
963
|
+
|
|
897
964
|
api_headers = {
|
|
898
965
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
899
966
|
"content-type": 'application/json',
|
|
@@ -905,7 +972,6 @@ module Appwrite
|
|
|
905
972
|
headers: api_headers,
|
|
906
973
|
params: api_params,
|
|
907
974
|
)
|
|
908
|
-
|
|
909
975
|
end
|
|
910
976
|
|
|
911
977
|
# Get a custom MFA challenge for a user, including the code to be delivered
|
|
@@ -915,22 +981,24 @@ module Appwrite
|
|
|
915
981
|
# @param [String] challenge_id ID of the challenge.
|
|
916
982
|
#
|
|
917
983
|
# @return [MfaChallengeSecret]
|
|
918
|
-
def get_mfa_challenge(
|
|
984
|
+
def get_mfa_challenge(
|
|
985
|
+
user_id:,
|
|
986
|
+
challenge_id:
|
|
987
|
+
)
|
|
919
988
|
api_path = '/users/{userId}/mfa/challenges/{challengeId}'
|
|
920
989
|
.gsub('{userId}', user_id)
|
|
921
990
|
.gsub('{challengeId}', challenge_id)
|
|
922
991
|
|
|
923
992
|
if user_id.nil?
|
|
924
|
-
|
|
993
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
925
994
|
end
|
|
926
995
|
|
|
927
996
|
if challenge_id.nil?
|
|
928
|
-
|
|
997
|
+
raise Appwrite::Exception.new('Missing required parameter: "challengeId"')
|
|
929
998
|
end
|
|
930
999
|
|
|
931
|
-
api_params = {
|
|
932
|
-
|
|
933
|
-
|
|
1000
|
+
api_params = {}
|
|
1001
|
+
|
|
934
1002
|
api_headers = {
|
|
935
1003
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
936
1004
|
"accept": 'application/json',
|
|
@@ -943,7 +1011,6 @@ module Appwrite
|
|
|
943
1011
|
params: api_params,
|
|
944
1012
|
response_type: Models::MfaChallengeSecret
|
|
945
1013
|
)
|
|
946
|
-
|
|
947
1014
|
end
|
|
948
1015
|
|
|
949
1016
|
# List the factors available on the account to be used as a MFA challange.
|
|
@@ -951,17 +1018,18 @@ module Appwrite
|
|
|
951
1018
|
# @param [String] user_id User ID.
|
|
952
1019
|
#
|
|
953
1020
|
# @return [MfaFactors]
|
|
954
|
-
def list_mfa_factors(
|
|
1021
|
+
def list_mfa_factors(
|
|
1022
|
+
user_id:
|
|
1023
|
+
)
|
|
955
1024
|
api_path = '/users/{userId}/mfa/factors'
|
|
956
1025
|
.gsub('{userId}', user_id)
|
|
957
1026
|
|
|
958
1027
|
if user_id.nil?
|
|
959
|
-
|
|
1028
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
960
1029
|
end
|
|
961
1030
|
|
|
962
|
-
api_params = {
|
|
963
|
-
|
|
964
|
-
|
|
1031
|
+
api_params = {}
|
|
1032
|
+
|
|
965
1033
|
api_headers = {
|
|
966
1034
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
967
1035
|
"accept": 'application/json',
|
|
@@ -974,7 +1042,6 @@ module Appwrite
|
|
|
974
1042
|
params: api_params,
|
|
975
1043
|
response_type: Models::MfaFactors
|
|
976
1044
|
)
|
|
977
|
-
|
|
978
1045
|
end
|
|
979
1046
|
|
|
980
1047
|
# Get recovery codes that can be used as backup for MFA flow by User ID.
|
|
@@ -985,17 +1052,18 @@ module Appwrite
|
|
|
985
1052
|
# @param [String] user_id User ID.
|
|
986
1053
|
#
|
|
987
1054
|
# @return [MfaRecoveryCodes]
|
|
988
|
-
def get_mfa_recovery_codes(
|
|
1055
|
+
def get_mfa_recovery_codes(
|
|
1056
|
+
user_id:
|
|
1057
|
+
)
|
|
989
1058
|
api_path = '/users/{userId}/mfa/recovery-codes'
|
|
990
1059
|
.gsub('{userId}', user_id)
|
|
991
1060
|
|
|
992
1061
|
if user_id.nil?
|
|
993
|
-
|
|
1062
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
994
1063
|
end
|
|
995
1064
|
|
|
996
|
-
api_params = {
|
|
997
|
-
|
|
998
|
-
|
|
1065
|
+
api_params = {}
|
|
1066
|
+
|
|
999
1067
|
api_headers = {
|
|
1000
1068
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1001
1069
|
"accept": 'application/json',
|
|
@@ -1008,7 +1076,6 @@ module Appwrite
|
|
|
1008
1076
|
params: api_params,
|
|
1009
1077
|
response_type: Models::MfaRecoveryCodes
|
|
1010
1078
|
)
|
|
1011
|
-
|
|
1012
1079
|
end
|
|
1013
1080
|
|
|
1014
1081
|
# Regenerate recovery codes that can be used as backup for MFA flow by User
|
|
@@ -1019,17 +1086,18 @@ module Appwrite
|
|
|
1019
1086
|
# @param [String] user_id User ID.
|
|
1020
1087
|
#
|
|
1021
1088
|
# @return [MfaRecoveryCodes]
|
|
1022
|
-
def update_mfa_recovery_codes(
|
|
1089
|
+
def update_mfa_recovery_codes(
|
|
1090
|
+
user_id:
|
|
1091
|
+
)
|
|
1023
1092
|
api_path = '/users/{userId}/mfa/recovery-codes'
|
|
1024
1093
|
.gsub('{userId}', user_id)
|
|
1025
1094
|
|
|
1026
1095
|
if user_id.nil?
|
|
1027
|
-
|
|
1096
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1028
1097
|
end
|
|
1029
1098
|
|
|
1030
|
-
api_params = {
|
|
1031
|
-
|
|
1032
|
-
|
|
1099
|
+
api_params = {}
|
|
1100
|
+
|
|
1033
1101
|
api_headers = {
|
|
1034
1102
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1035
1103
|
"content-type": 'application/json',
|
|
@@ -1043,7 +1111,6 @@ module Appwrite
|
|
|
1043
1111
|
params: api_params,
|
|
1044
1112
|
response_type: Models::MfaRecoveryCodes
|
|
1045
1113
|
)
|
|
1046
|
-
|
|
1047
1114
|
end
|
|
1048
1115
|
|
|
1049
1116
|
# Generate recovery codes used as backup for MFA flow for User ID. Recovery
|
|
@@ -1054,17 +1121,18 @@ module Appwrite
|
|
|
1054
1121
|
# @param [String] user_id User ID.
|
|
1055
1122
|
#
|
|
1056
1123
|
# @return [MfaRecoveryCodes]
|
|
1057
|
-
def create_mfa_recovery_codes(
|
|
1124
|
+
def create_mfa_recovery_codes(
|
|
1125
|
+
user_id:
|
|
1126
|
+
)
|
|
1058
1127
|
api_path = '/users/{userId}/mfa/recovery-codes'
|
|
1059
1128
|
.gsub('{userId}', user_id)
|
|
1060
1129
|
|
|
1061
1130
|
if user_id.nil?
|
|
1062
|
-
|
|
1131
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1063
1132
|
end
|
|
1064
1133
|
|
|
1065
|
-
api_params = {
|
|
1066
|
-
|
|
1067
|
-
|
|
1134
|
+
api_params = {}
|
|
1135
|
+
|
|
1068
1136
|
api_headers = {
|
|
1069
1137
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1070
1138
|
"content-type": 'application/json',
|
|
@@ -1078,7 +1146,6 @@ module Appwrite
|
|
|
1078
1146
|
params: api_params,
|
|
1079
1147
|
response_type: Models::MfaRecoveryCodes
|
|
1080
1148
|
)
|
|
1081
|
-
|
|
1082
1149
|
end
|
|
1083
1150
|
|
|
1084
1151
|
# Update the user name by its unique ID.
|
|
@@ -1087,22 +1154,25 @@ module Appwrite
|
|
|
1087
1154
|
# @param [String] name User name. Max length: 128 chars.
|
|
1088
1155
|
#
|
|
1089
1156
|
# @return [User]
|
|
1090
|
-
def update_name(
|
|
1157
|
+
def update_name(
|
|
1158
|
+
user_id:,
|
|
1159
|
+
name:
|
|
1160
|
+
)
|
|
1091
1161
|
api_path = '/users/{userId}/name'
|
|
1092
1162
|
.gsub('{userId}', user_id)
|
|
1093
1163
|
|
|
1094
1164
|
if user_id.nil?
|
|
1095
|
-
|
|
1165
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1096
1166
|
end
|
|
1097
1167
|
|
|
1098
1168
|
if name.nil?
|
|
1099
|
-
|
|
1169
|
+
raise Appwrite::Exception.new('Missing required parameter: "name"')
|
|
1100
1170
|
end
|
|
1101
1171
|
|
|
1102
1172
|
api_params = {
|
|
1103
1173
|
name: name,
|
|
1104
1174
|
}
|
|
1105
|
-
|
|
1175
|
+
|
|
1106
1176
|
api_headers = {
|
|
1107
1177
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1108
1178
|
"content-type": 'application/json',
|
|
@@ -1116,7 +1186,6 @@ module Appwrite
|
|
|
1116
1186
|
params: api_params,
|
|
1117
1187
|
response_type: Models::User
|
|
1118
1188
|
)
|
|
1119
|
-
|
|
1120
1189
|
end
|
|
1121
1190
|
|
|
1122
1191
|
# Update the user password by its unique ID.
|
|
@@ -1125,22 +1194,25 @@ module Appwrite
|
|
|
1125
1194
|
# @param [String] password New user password. Must be at least 8 chars.
|
|
1126
1195
|
#
|
|
1127
1196
|
# @return [User]
|
|
1128
|
-
def update_password(
|
|
1197
|
+
def update_password(
|
|
1198
|
+
user_id:,
|
|
1199
|
+
password:
|
|
1200
|
+
)
|
|
1129
1201
|
api_path = '/users/{userId}/password'
|
|
1130
1202
|
.gsub('{userId}', user_id)
|
|
1131
1203
|
|
|
1132
1204
|
if user_id.nil?
|
|
1133
|
-
|
|
1205
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1134
1206
|
end
|
|
1135
1207
|
|
|
1136
1208
|
if password.nil?
|
|
1137
|
-
|
|
1209
|
+
raise Appwrite::Exception.new('Missing required parameter: "password"')
|
|
1138
1210
|
end
|
|
1139
1211
|
|
|
1140
1212
|
api_params = {
|
|
1141
1213
|
password: password,
|
|
1142
1214
|
}
|
|
1143
|
-
|
|
1215
|
+
|
|
1144
1216
|
api_headers = {
|
|
1145
1217
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1146
1218
|
"content-type": 'application/json',
|
|
@@ -1154,7 +1226,6 @@ module Appwrite
|
|
|
1154
1226
|
params: api_params,
|
|
1155
1227
|
response_type: Models::User
|
|
1156
1228
|
)
|
|
1157
|
-
|
|
1158
1229
|
end
|
|
1159
1230
|
|
|
1160
1231
|
# Update the user phone by its unique ID.
|
|
@@ -1163,22 +1234,25 @@ module Appwrite
|
|
|
1163
1234
|
# @param [String] number User phone number.
|
|
1164
1235
|
#
|
|
1165
1236
|
# @return [User]
|
|
1166
|
-
def update_phone(
|
|
1237
|
+
def update_phone(
|
|
1238
|
+
user_id:,
|
|
1239
|
+
number:
|
|
1240
|
+
)
|
|
1167
1241
|
api_path = '/users/{userId}/phone'
|
|
1168
1242
|
.gsub('{userId}', user_id)
|
|
1169
1243
|
|
|
1170
1244
|
if user_id.nil?
|
|
1171
|
-
|
|
1245
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1172
1246
|
end
|
|
1173
1247
|
|
|
1174
1248
|
if number.nil?
|
|
1175
|
-
|
|
1249
|
+
raise Appwrite::Exception.new('Missing required parameter: "number"')
|
|
1176
1250
|
end
|
|
1177
1251
|
|
|
1178
1252
|
api_params = {
|
|
1179
1253
|
number: number,
|
|
1180
1254
|
}
|
|
1181
|
-
|
|
1255
|
+
|
|
1182
1256
|
api_headers = {
|
|
1183
1257
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1184
1258
|
"content-type": 'application/json',
|
|
@@ -1192,7 +1266,6 @@ module Appwrite
|
|
|
1192
1266
|
params: api_params,
|
|
1193
1267
|
response_type: Models::User
|
|
1194
1268
|
)
|
|
1195
|
-
|
|
1196
1269
|
end
|
|
1197
1270
|
|
|
1198
1271
|
# Get the user preferences by its unique ID.
|
|
@@ -1200,17 +1273,18 @@ module Appwrite
|
|
|
1200
1273
|
# @param [String] user_id User ID.
|
|
1201
1274
|
#
|
|
1202
1275
|
# @return [Preferences]
|
|
1203
|
-
def get_prefs(
|
|
1276
|
+
def get_prefs(
|
|
1277
|
+
user_id:
|
|
1278
|
+
)
|
|
1204
1279
|
api_path = '/users/{userId}/prefs'
|
|
1205
1280
|
.gsub('{userId}', user_id)
|
|
1206
1281
|
|
|
1207
1282
|
if user_id.nil?
|
|
1208
|
-
|
|
1283
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1209
1284
|
end
|
|
1210
1285
|
|
|
1211
|
-
api_params = {
|
|
1212
|
-
|
|
1213
|
-
|
|
1286
|
+
api_params = {}
|
|
1287
|
+
|
|
1214
1288
|
api_headers = {
|
|
1215
1289
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1216
1290
|
"accept": 'application/json',
|
|
@@ -1223,7 +1297,6 @@ module Appwrite
|
|
|
1223
1297
|
params: api_params,
|
|
1224
1298
|
response_type: Models::Preferences
|
|
1225
1299
|
)
|
|
1226
|
-
|
|
1227
1300
|
end
|
|
1228
1301
|
|
|
1229
1302
|
# Update the user preferences by its unique ID. The object you pass is stored
|
|
@@ -1234,22 +1307,25 @@ module Appwrite
|
|
|
1234
1307
|
# @param [Hash] prefs Prefs key-value JSON object.
|
|
1235
1308
|
#
|
|
1236
1309
|
# @return [Preferences]
|
|
1237
|
-
def update_prefs(
|
|
1310
|
+
def update_prefs(
|
|
1311
|
+
user_id:,
|
|
1312
|
+
prefs:
|
|
1313
|
+
)
|
|
1238
1314
|
api_path = '/users/{userId}/prefs'
|
|
1239
1315
|
.gsub('{userId}', user_id)
|
|
1240
1316
|
|
|
1241
1317
|
if user_id.nil?
|
|
1242
|
-
|
|
1318
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1243
1319
|
end
|
|
1244
1320
|
|
|
1245
1321
|
if prefs.nil?
|
|
1246
|
-
|
|
1322
|
+
raise Appwrite::Exception.new('Missing required parameter: "prefs"')
|
|
1247
1323
|
end
|
|
1248
1324
|
|
|
1249
1325
|
api_params = {
|
|
1250
1326
|
prefs: prefs,
|
|
1251
1327
|
}
|
|
1252
|
-
|
|
1328
|
+
|
|
1253
1329
|
api_headers = {
|
|
1254
1330
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1255
1331
|
"content-type": 'application/json',
|
|
@@ -1263,7 +1339,6 @@ module Appwrite
|
|
|
1263
1339
|
params: api_params,
|
|
1264
1340
|
response_type: Models::Preferences
|
|
1265
1341
|
)
|
|
1266
|
-
|
|
1267
1342
|
end
|
|
1268
1343
|
|
|
1269
1344
|
# Get the user sessions list by its unique ID.
|
|
@@ -1272,18 +1347,21 @@ module Appwrite
|
|
|
1272
1347
|
# @param [] total When set to false, the total count returned will be 0 and will not be calculated.
|
|
1273
1348
|
#
|
|
1274
1349
|
# @return [SessionList]
|
|
1275
|
-
def list_sessions(
|
|
1350
|
+
def list_sessions(
|
|
1351
|
+
user_id:,
|
|
1352
|
+
total: nil
|
|
1353
|
+
)
|
|
1276
1354
|
api_path = '/users/{userId}/sessions'
|
|
1277
1355
|
.gsub('{userId}', user_id)
|
|
1278
1356
|
|
|
1279
1357
|
if user_id.nil?
|
|
1280
|
-
|
|
1358
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1281
1359
|
end
|
|
1282
1360
|
|
|
1283
1361
|
api_params = {
|
|
1284
1362
|
total: total,
|
|
1285
1363
|
}
|
|
1286
|
-
|
|
1364
|
+
|
|
1287
1365
|
api_headers = {
|
|
1288
1366
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1289
1367
|
"accept": 'application/json',
|
|
@@ -1296,30 +1374,30 @@ module Appwrite
|
|
|
1296
1374
|
params: api_params,
|
|
1297
1375
|
response_type: Models::SessionList
|
|
1298
1376
|
)
|
|
1299
|
-
|
|
1300
1377
|
end
|
|
1301
1378
|
|
|
1302
1379
|
# Creates a session for a user. Returns an immediately usable session object.
|
|
1303
|
-
#
|
|
1380
|
+
#
|
|
1304
1381
|
# If you want to generate a token for a custom authentication flow, use the
|
|
1305
1382
|
# [POST
|
|
1306
1383
|
# /users/{userId}/tokens](https://appwrite.io/docs/server/users#createToken)
|
|
1307
1384
|
# endpoint.
|
|
1308
1385
|
#
|
|
1309
|
-
# @param [String] user_id User 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
|
|
1386
|
+
# @param [String] user_id User 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.
|
|
1310
1387
|
#
|
|
1311
1388
|
# @return [Session]
|
|
1312
|
-
def create_session(
|
|
1389
|
+
def create_session(
|
|
1390
|
+
user_id:
|
|
1391
|
+
)
|
|
1313
1392
|
api_path = '/users/{userId}/sessions'
|
|
1314
1393
|
.gsub('{userId}', user_id)
|
|
1315
1394
|
|
|
1316
1395
|
if user_id.nil?
|
|
1317
|
-
|
|
1396
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1318
1397
|
end
|
|
1319
1398
|
|
|
1320
|
-
api_params = {
|
|
1321
|
-
|
|
1322
|
-
|
|
1399
|
+
api_params = {}
|
|
1400
|
+
|
|
1323
1401
|
api_headers = {
|
|
1324
1402
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1325
1403
|
"content-type": 'application/json',
|
|
@@ -1333,25 +1411,25 @@ module Appwrite
|
|
|
1333
1411
|
params: api_params,
|
|
1334
1412
|
response_type: Models::Session
|
|
1335
1413
|
)
|
|
1336
|
-
|
|
1337
1414
|
end
|
|
1338
1415
|
|
|
1339
|
-
# Delete all user
|
|
1416
|
+
# Delete all user's sessions by using the user's unique ID.
|
|
1340
1417
|
#
|
|
1341
1418
|
# @param [String] user_id User ID.
|
|
1342
1419
|
#
|
|
1343
1420
|
# @return []
|
|
1344
|
-
def delete_sessions(
|
|
1421
|
+
def delete_sessions(
|
|
1422
|
+
user_id:
|
|
1423
|
+
)
|
|
1345
1424
|
api_path = '/users/{userId}/sessions'
|
|
1346
1425
|
.gsub('{userId}', user_id)
|
|
1347
1426
|
|
|
1348
1427
|
if user_id.nil?
|
|
1349
|
-
|
|
1428
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1350
1429
|
end
|
|
1351
1430
|
|
|
1352
|
-
api_params = {
|
|
1353
|
-
|
|
1354
|
-
|
|
1431
|
+
api_params = {}
|
|
1432
|
+
|
|
1355
1433
|
api_headers = {
|
|
1356
1434
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1357
1435
|
"content-type": 'application/json',
|
|
@@ -1363,7 +1441,6 @@ module Appwrite
|
|
|
1363
1441
|
headers: api_headers,
|
|
1364
1442
|
params: api_params,
|
|
1365
1443
|
)
|
|
1366
|
-
|
|
1367
1444
|
end
|
|
1368
1445
|
|
|
1369
1446
|
# Delete a user sessions by its unique ID.
|
|
@@ -1372,22 +1449,24 @@ module Appwrite
|
|
|
1372
1449
|
# @param [String] session_id Session ID.
|
|
1373
1450
|
#
|
|
1374
1451
|
# @return []
|
|
1375
|
-
def delete_session(
|
|
1452
|
+
def delete_session(
|
|
1453
|
+
user_id:,
|
|
1454
|
+
session_id:
|
|
1455
|
+
)
|
|
1376
1456
|
api_path = '/users/{userId}/sessions/{sessionId}'
|
|
1377
1457
|
.gsub('{userId}', user_id)
|
|
1378
1458
|
.gsub('{sessionId}', session_id)
|
|
1379
1459
|
|
|
1380
1460
|
if user_id.nil?
|
|
1381
|
-
|
|
1461
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1382
1462
|
end
|
|
1383
1463
|
|
|
1384
1464
|
if session_id.nil?
|
|
1385
|
-
|
|
1465
|
+
raise Appwrite::Exception.new('Missing required parameter: "sessionId"')
|
|
1386
1466
|
end
|
|
1387
1467
|
|
|
1388
|
-
api_params = {
|
|
1389
|
-
|
|
1390
|
-
|
|
1468
|
+
api_params = {}
|
|
1469
|
+
|
|
1391
1470
|
api_headers = {
|
|
1392
1471
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1393
1472
|
"content-type": 'application/json',
|
|
@@ -1399,32 +1478,34 @@ module Appwrite
|
|
|
1399
1478
|
headers: api_headers,
|
|
1400
1479
|
params: api_params,
|
|
1401
1480
|
)
|
|
1402
|
-
|
|
1403
1481
|
end
|
|
1404
1482
|
|
|
1405
1483
|
# Update the user status by its unique ID. Use this endpoint as an
|
|
1406
|
-
# alternative to deleting a user if you want to keep user
|
|
1484
|
+
# alternative to deleting a user if you want to keep user's ID reserved.
|
|
1407
1485
|
#
|
|
1408
1486
|
# @param [String] user_id User ID.
|
|
1409
1487
|
# @param [] status User Status. To activate the user pass `true` and to block the user pass `false`.
|
|
1410
1488
|
#
|
|
1411
1489
|
# @return [User]
|
|
1412
|
-
def update_status(
|
|
1490
|
+
def update_status(
|
|
1491
|
+
user_id:,
|
|
1492
|
+
status:
|
|
1493
|
+
)
|
|
1413
1494
|
api_path = '/users/{userId}/status'
|
|
1414
1495
|
.gsub('{userId}', user_id)
|
|
1415
1496
|
|
|
1416
1497
|
if user_id.nil?
|
|
1417
|
-
|
|
1498
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1418
1499
|
end
|
|
1419
1500
|
|
|
1420
1501
|
if status.nil?
|
|
1421
|
-
|
|
1502
|
+
raise Appwrite::Exception.new('Missing required parameter: "status"')
|
|
1422
1503
|
end
|
|
1423
1504
|
|
|
1424
1505
|
api_params = {
|
|
1425
1506
|
status: status,
|
|
1426
1507
|
}
|
|
1427
|
-
|
|
1508
|
+
|
|
1428
1509
|
api_headers = {
|
|
1429
1510
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1430
1511
|
"content-type": 'application/json',
|
|
@@ -1438,7 +1519,6 @@ module Appwrite
|
|
|
1438
1519
|
params: api_params,
|
|
1439
1520
|
response_type: Models::User
|
|
1440
1521
|
)
|
|
1441
|
-
|
|
1442
1522
|
end
|
|
1443
1523
|
|
|
1444
1524
|
# List the messaging targets that are associated with a user.
|
|
@@ -1448,19 +1528,23 @@ module Appwrite
|
|
|
1448
1528
|
# @param [] total When set to false, the total count returned will be 0 and will not be calculated.
|
|
1449
1529
|
#
|
|
1450
1530
|
# @return [TargetList]
|
|
1451
|
-
def list_targets(
|
|
1531
|
+
def list_targets(
|
|
1532
|
+
user_id:,
|
|
1533
|
+
queries: nil,
|
|
1534
|
+
total: nil
|
|
1535
|
+
)
|
|
1452
1536
|
api_path = '/users/{userId}/targets'
|
|
1453
1537
|
.gsub('{userId}', user_id)
|
|
1454
1538
|
|
|
1455
1539
|
if user_id.nil?
|
|
1456
|
-
|
|
1540
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1457
1541
|
end
|
|
1458
1542
|
|
|
1459
1543
|
api_params = {
|
|
1460
1544
|
queries: queries,
|
|
1461
1545
|
total: total,
|
|
1462
1546
|
}
|
|
1463
|
-
|
|
1547
|
+
|
|
1464
1548
|
api_headers = {
|
|
1465
1549
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1466
1550
|
"accept": 'application/json',
|
|
@@ -1473,37 +1557,43 @@ module Appwrite
|
|
|
1473
1557
|
params: api_params,
|
|
1474
1558
|
response_type: Models::TargetList
|
|
1475
1559
|
)
|
|
1476
|
-
|
|
1477
1560
|
end
|
|
1478
1561
|
|
|
1479
1562
|
# Create a messaging target.
|
|
1480
1563
|
#
|
|
1481
1564
|
# @param [String] user_id User ID.
|
|
1482
|
-
# @param [String] target_id Target 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
|
|
1565
|
+
# @param [String] target_id Target 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.
|
|
1483
1566
|
# @param [MessagingProviderType] provider_type The target provider type. Can be one of the following: `email`, `sms` or `push`.
|
|
1484
1567
|
# @param [String] identifier The target identifier (token, email, phone etc.)
|
|
1485
1568
|
# @param [String] provider_id Provider ID. Message will be sent to this target from the specified provider ID. If no provider ID is set the first setup provider will be used.
|
|
1486
1569
|
# @param [String] name Target name. Max length: 128 chars. For example: My Awesome App Galaxy S23.
|
|
1487
1570
|
#
|
|
1488
1571
|
# @return [Target]
|
|
1489
|
-
def create_target(
|
|
1572
|
+
def create_target(
|
|
1573
|
+
user_id:,
|
|
1574
|
+
target_id:,
|
|
1575
|
+
provider_type:,
|
|
1576
|
+
identifier:,
|
|
1577
|
+
provider_id: nil,
|
|
1578
|
+
name: nil
|
|
1579
|
+
)
|
|
1490
1580
|
api_path = '/users/{userId}/targets'
|
|
1491
1581
|
.gsub('{userId}', user_id)
|
|
1492
1582
|
|
|
1493
1583
|
if user_id.nil?
|
|
1494
|
-
|
|
1584
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1495
1585
|
end
|
|
1496
1586
|
|
|
1497
1587
|
if target_id.nil?
|
|
1498
|
-
|
|
1588
|
+
raise Appwrite::Exception.new('Missing required parameter: "targetId"')
|
|
1499
1589
|
end
|
|
1500
1590
|
|
|
1501
1591
|
if provider_type.nil?
|
|
1502
|
-
|
|
1592
|
+
raise Appwrite::Exception.new('Missing required parameter: "providerType"')
|
|
1503
1593
|
end
|
|
1504
1594
|
|
|
1505
1595
|
if identifier.nil?
|
|
1506
|
-
|
|
1596
|
+
raise Appwrite::Exception.new('Missing required parameter: "identifier"')
|
|
1507
1597
|
end
|
|
1508
1598
|
|
|
1509
1599
|
api_params = {
|
|
@@ -1513,7 +1603,7 @@ module Appwrite
|
|
|
1513
1603
|
providerId: provider_id,
|
|
1514
1604
|
name: name,
|
|
1515
1605
|
}
|
|
1516
|
-
|
|
1606
|
+
|
|
1517
1607
|
api_headers = {
|
|
1518
1608
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1519
1609
|
"content-type": 'application/json',
|
|
@@ -1527,31 +1617,32 @@ module Appwrite
|
|
|
1527
1617
|
params: api_params,
|
|
1528
1618
|
response_type: Models::Target
|
|
1529
1619
|
)
|
|
1530
|
-
|
|
1531
1620
|
end
|
|
1532
1621
|
|
|
1533
|
-
# Get a user
|
|
1622
|
+
# Get a user's push notification target by ID.
|
|
1534
1623
|
#
|
|
1535
1624
|
# @param [String] user_id User ID.
|
|
1536
1625
|
# @param [String] target_id Target ID.
|
|
1537
1626
|
#
|
|
1538
1627
|
# @return [Target]
|
|
1539
|
-
def get_target(
|
|
1628
|
+
def get_target(
|
|
1629
|
+
user_id:,
|
|
1630
|
+
target_id:
|
|
1631
|
+
)
|
|
1540
1632
|
api_path = '/users/{userId}/targets/{targetId}'
|
|
1541
1633
|
.gsub('{userId}', user_id)
|
|
1542
1634
|
.gsub('{targetId}', target_id)
|
|
1543
1635
|
|
|
1544
1636
|
if user_id.nil?
|
|
1545
|
-
|
|
1637
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1546
1638
|
end
|
|
1547
1639
|
|
|
1548
1640
|
if target_id.nil?
|
|
1549
|
-
|
|
1641
|
+
raise Appwrite::Exception.new('Missing required parameter: "targetId"')
|
|
1550
1642
|
end
|
|
1551
1643
|
|
|
1552
|
-
api_params = {
|
|
1553
|
-
|
|
1554
|
-
|
|
1644
|
+
api_params = {}
|
|
1645
|
+
|
|
1555
1646
|
api_headers = {
|
|
1556
1647
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1557
1648
|
"accept": 'application/json',
|
|
@@ -1564,7 +1655,6 @@ module Appwrite
|
|
|
1564
1655
|
params: api_params,
|
|
1565
1656
|
response_type: Models::Target
|
|
1566
1657
|
)
|
|
1567
|
-
|
|
1568
1658
|
end
|
|
1569
1659
|
|
|
1570
1660
|
# Update a messaging target.
|
|
@@ -1576,17 +1666,23 @@ module Appwrite
|
|
|
1576
1666
|
# @param [String] name Target name. Max length: 128 chars. For example: My Awesome App Galaxy S23.
|
|
1577
1667
|
#
|
|
1578
1668
|
# @return [Target]
|
|
1579
|
-
def update_target(
|
|
1669
|
+
def update_target(
|
|
1670
|
+
user_id:,
|
|
1671
|
+
target_id:,
|
|
1672
|
+
identifier: nil,
|
|
1673
|
+
provider_id: nil,
|
|
1674
|
+
name: nil
|
|
1675
|
+
)
|
|
1580
1676
|
api_path = '/users/{userId}/targets/{targetId}'
|
|
1581
1677
|
.gsub('{userId}', user_id)
|
|
1582
1678
|
.gsub('{targetId}', target_id)
|
|
1583
1679
|
|
|
1584
1680
|
if user_id.nil?
|
|
1585
|
-
|
|
1681
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1586
1682
|
end
|
|
1587
1683
|
|
|
1588
1684
|
if target_id.nil?
|
|
1589
|
-
|
|
1685
|
+
raise Appwrite::Exception.new('Missing required parameter: "targetId"')
|
|
1590
1686
|
end
|
|
1591
1687
|
|
|
1592
1688
|
api_params = {
|
|
@@ -1594,7 +1690,7 @@ module Appwrite
|
|
|
1594
1690
|
providerId: provider_id,
|
|
1595
1691
|
name: name,
|
|
1596
1692
|
}
|
|
1597
|
-
|
|
1693
|
+
|
|
1598
1694
|
api_headers = {
|
|
1599
1695
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1600
1696
|
"content-type": 'application/json',
|
|
@@ -1608,7 +1704,6 @@ module Appwrite
|
|
|
1608
1704
|
params: api_params,
|
|
1609
1705
|
response_type: Models::Target
|
|
1610
1706
|
)
|
|
1611
|
-
|
|
1612
1707
|
end
|
|
1613
1708
|
|
|
1614
1709
|
# Delete a messaging target.
|
|
@@ -1617,22 +1712,24 @@ module Appwrite
|
|
|
1617
1712
|
# @param [String] target_id Target ID.
|
|
1618
1713
|
#
|
|
1619
1714
|
# @return []
|
|
1620
|
-
def delete_target(
|
|
1715
|
+
def delete_target(
|
|
1716
|
+
user_id:,
|
|
1717
|
+
target_id:
|
|
1718
|
+
)
|
|
1621
1719
|
api_path = '/users/{userId}/targets/{targetId}'
|
|
1622
1720
|
.gsub('{userId}', user_id)
|
|
1623
1721
|
.gsub('{targetId}', target_id)
|
|
1624
1722
|
|
|
1625
1723
|
if user_id.nil?
|
|
1626
|
-
|
|
1724
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1627
1725
|
end
|
|
1628
1726
|
|
|
1629
1727
|
if target_id.nil?
|
|
1630
|
-
|
|
1728
|
+
raise Appwrite::Exception.new('Missing required parameter: "targetId"')
|
|
1631
1729
|
end
|
|
1632
1730
|
|
|
1633
|
-
api_params = {
|
|
1634
|
-
|
|
1635
|
-
|
|
1731
|
+
api_params = {}
|
|
1732
|
+
|
|
1636
1733
|
api_headers = {
|
|
1637
1734
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1638
1735
|
"content-type": 'application/json',
|
|
@@ -1644,33 +1741,36 @@ module Appwrite
|
|
|
1644
1741
|
headers: api_headers,
|
|
1645
1742
|
params: api_params,
|
|
1646
1743
|
)
|
|
1647
|
-
|
|
1648
1744
|
end
|
|
1649
1745
|
|
|
1650
1746
|
# Returns a token with a secret key for creating a session. Use the user ID
|
|
1651
1747
|
# and secret and submit a request to the [PUT
|
|
1652
1748
|
# /account/sessions/token](https://appwrite.io/docs/references/cloud/client-web/account#createSession)
|
|
1653
1749
|
# endpoint to complete the login process.
|
|
1654
|
-
#
|
|
1750
|
+
#
|
|
1655
1751
|
#
|
|
1656
1752
|
# @param [String] user_id User ID.
|
|
1657
1753
|
# @param [Integer] length Token length in characters. The default length is 6 characters
|
|
1658
1754
|
# @param [Integer] expire Token expiration period in seconds. The default expiration is 15 minutes.
|
|
1659
1755
|
#
|
|
1660
1756
|
# @return [Token]
|
|
1661
|
-
def create_token(
|
|
1757
|
+
def create_token(
|
|
1758
|
+
user_id:,
|
|
1759
|
+
length: nil,
|
|
1760
|
+
expire: nil
|
|
1761
|
+
)
|
|
1662
1762
|
api_path = '/users/{userId}/tokens'
|
|
1663
1763
|
.gsub('{userId}', user_id)
|
|
1664
1764
|
|
|
1665
1765
|
if user_id.nil?
|
|
1666
|
-
|
|
1766
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1667
1767
|
end
|
|
1668
1768
|
|
|
1669
1769
|
api_params = {
|
|
1670
1770
|
length: length,
|
|
1671
1771
|
expire: expire,
|
|
1672
1772
|
}
|
|
1673
|
-
|
|
1773
|
+
|
|
1674
1774
|
api_headers = {
|
|
1675
1775
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1676
1776
|
"content-type": 'application/json',
|
|
@@ -1684,7 +1784,6 @@ module Appwrite
|
|
|
1684
1784
|
params: api_params,
|
|
1685
1785
|
response_type: Models::Token
|
|
1686
1786
|
)
|
|
1687
|
-
|
|
1688
1787
|
end
|
|
1689
1788
|
|
|
1690
1789
|
# Update the user email verification status by its unique ID.
|
|
@@ -1693,22 +1792,25 @@ module Appwrite
|
|
|
1693
1792
|
# @param [] email_verification User email verification status.
|
|
1694
1793
|
#
|
|
1695
1794
|
# @return [User]
|
|
1696
|
-
def update_email_verification(
|
|
1795
|
+
def update_email_verification(
|
|
1796
|
+
user_id:,
|
|
1797
|
+
email_verification:
|
|
1798
|
+
)
|
|
1697
1799
|
api_path = '/users/{userId}/verification'
|
|
1698
1800
|
.gsub('{userId}', user_id)
|
|
1699
1801
|
|
|
1700
1802
|
if user_id.nil?
|
|
1701
|
-
|
|
1803
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1702
1804
|
end
|
|
1703
1805
|
|
|
1704
1806
|
if email_verification.nil?
|
|
1705
|
-
|
|
1807
|
+
raise Appwrite::Exception.new('Missing required parameter: "emailVerification"')
|
|
1706
1808
|
end
|
|
1707
1809
|
|
|
1708
1810
|
api_params = {
|
|
1709
1811
|
emailVerification: email_verification,
|
|
1710
1812
|
}
|
|
1711
|
-
|
|
1813
|
+
|
|
1712
1814
|
api_headers = {
|
|
1713
1815
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1714
1816
|
"content-type": 'application/json',
|
|
@@ -1722,7 +1824,6 @@ module Appwrite
|
|
|
1722
1824
|
params: api_params,
|
|
1723
1825
|
response_type: Models::User
|
|
1724
1826
|
)
|
|
1725
|
-
|
|
1726
1827
|
end
|
|
1727
1828
|
|
|
1728
1829
|
# Update the user phone verification status by its unique ID.
|
|
@@ -1731,22 +1832,25 @@ module Appwrite
|
|
|
1731
1832
|
# @param [] phone_verification User phone verification status.
|
|
1732
1833
|
#
|
|
1733
1834
|
# @return [User]
|
|
1734
|
-
def update_phone_verification(
|
|
1835
|
+
def update_phone_verification(
|
|
1836
|
+
user_id:,
|
|
1837
|
+
phone_verification:
|
|
1838
|
+
)
|
|
1735
1839
|
api_path = '/users/{userId}/verification/phone'
|
|
1736
1840
|
.gsub('{userId}', user_id)
|
|
1737
1841
|
|
|
1738
1842
|
if user_id.nil?
|
|
1739
|
-
|
|
1843
|
+
raise Appwrite::Exception.new('Missing required parameter: "userId"')
|
|
1740
1844
|
end
|
|
1741
1845
|
|
|
1742
1846
|
if phone_verification.nil?
|
|
1743
|
-
|
|
1847
|
+
raise Appwrite::Exception.new('Missing required parameter: "phoneVerification"')
|
|
1744
1848
|
end
|
|
1745
1849
|
|
|
1746
1850
|
api_params = {
|
|
1747
1851
|
phoneVerification: phone_verification,
|
|
1748
1852
|
}
|
|
1749
|
-
|
|
1853
|
+
|
|
1750
1854
|
api_headers = {
|
|
1751
1855
|
"X-Appwrite-Project": @client.get_config('project'),
|
|
1752
1856
|
"content-type": 'application/json',
|
|
@@ -1760,8 +1864,6 @@ module Appwrite
|
|
|
1760
1864
|
params: api_params,
|
|
1761
1865
|
response_type: Models::User
|
|
1762
1866
|
)
|
|
1763
|
-
|
|
1764
1867
|
end
|
|
1765
|
-
|
|
1766
|
-
end
|
|
1868
|
+
end
|
|
1767
1869
|
end
|