appwrite 20.0.0__tar.gz → 21.0.0__tar.gz
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.
- {appwrite-20.0.0 → appwrite-21.0.0}/PKG-INFO +2 -2
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/client.py +20 -6
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/project_key_scopes.py +3 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/project_policy_id.py +2 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/project_service_id.py +1 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/__init__.py +34 -8
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/activity_event.py +0 -36
- appwrite-21.0.0/appwrite/models/app.py +82 -0
- appwrite-21.0.0/appwrite/models/app_secret.py +39 -0
- appwrite-21.0.0/appwrite/models/app_secret_list.py +19 -0
- appwrite-21.0.0/appwrite/models/app_secret_plaintext.py +39 -0
- appwrite-21.0.0/appwrite/models/apps_list.py +19 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/backup_policy.py +3 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/membership.py +3 -0
- appwrite-21.0.0/appwrite/models/oauth2_approve.py +15 -0
- appwrite-21.0.0/appwrite/models/oauth2_authorize.py +18 -0
- appwrite-21.0.0/appwrite/models/oauth2_device_authorization.py +30 -0
- appwrite-21.0.0/appwrite/models/oauth2_grant.py +45 -0
- appwrite-21.0.0/appwrite/models/oauth2_reject.py +15 -0
- appwrite-21.0.0/appwrite/models/oauth2_token.py +33 -0
- appwrite-21.0.0/appwrite/models/policy_deny_corporate_email.py +18 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/policy_list.py +4 -2
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/policy_membership_privacy.py +3 -0
- appwrite-21.0.0/appwrite/models/policy_password_strength.py +30 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/project.py +49 -7
- appwrite-21.0.0/appwrite/models/usage_data_point.py +60 -0
- appwrite-21.0.0/appwrite/models/usage_event_list.py +19 -0
- appwrite-21.0.0/appwrite/models/usage_gauge_list.py +19 -0
- appwrite-21.0.0/appwrite/models/usage_metric.py +19 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/user.py +15 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/account.py +88 -1
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/activities.py +5 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/advisor.py +10 -0
- appwrite-21.0.0/appwrite/services/apps.py +666 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/avatars.py +17 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/backups.py +25 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/databases.py +195 -14
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/functions.py +49 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/graphql.py +5 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/health.py +78 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/locale.py +17 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/messaging.py +263 -0
- appwrite-21.0.0/appwrite/services/oauth2.py +453 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/organization.py +18 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/presences.py +10 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/project.py +442 -46
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/proxy.py +16 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/sites.py +48 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/storage.py +25 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/tables_db.py +159 -15
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/teams.py +25 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/tokens.py +10 -0
- appwrite-21.0.0/appwrite/services/usage.py +202 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/users.py +81 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/webhooks.py +12 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite.egg-info/PKG-INFO +2 -2
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite.egg-info/SOURCES.txt +17 -2
- {appwrite-20.0.0 → appwrite-21.0.0}/pyproject.toml +1 -1
- {appwrite-20.0.0 → appwrite-21.0.0}/setup.py +2 -2
- appwrite-20.0.0/appwrite/models/usage_event.py +0 -42
- appwrite-20.0.0/appwrite/models/usage_event_list.py +0 -19
- appwrite-20.0.0/appwrite/models/usage_gauge.py +0 -27
- appwrite-20.0.0/appwrite/models/usage_gauge_list.py +0 -19
- appwrite-20.0.0/appwrite/services/usage.py +0 -91
- {appwrite-20.0.0 → appwrite-21.0.0}/LICENSE +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/README.md +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/__init__.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/encoders/__init__.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/encoders/value_class_encoder.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/__init__.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/adapter.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/attribute_status.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/authentication_factor.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/authenticator_type.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/backup_services.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/browser.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/browser_permission.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/browser_theme.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/build_runtime.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/column_status.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/compression.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/credit_card.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/database_type.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/databases_index_type.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/deployment_download_type.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/deployment_status.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/execution_method.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/execution_status.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/execution_trigger.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/flag.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/framework.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/health_antivirus_status.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/health_check_status.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/health_queue_name.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/image_format.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/image_gravity.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/index_status.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/message_priority.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/message_status.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/messaging_provider_type.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/o_auth2_google_prompt.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/o_auth_provider.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/order_by.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/organization_key_scopes.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/password_hash.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/platform_type.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/project_auth_method_id.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/project_email_template_id.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/project_email_template_locale.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/project_o_auth2_google_prompt.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/project_o_auth_provider_id.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/project_protocol_id.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/project_smtp_secure.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/proxy_resource_type.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/proxy_rule_deployment_resource_type.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/proxy_rule_status.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/region.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/relation_mutate.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/relationship_type.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/runtime.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/smtp_encryption.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/status_code.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/tables_db_index_type.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/template_reference_type.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/timezone.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/enums/vcs_reference_type.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/exception.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/id.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/input_file.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/activity_event_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/algo_argon2.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/algo_bcrypt.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/algo_md5.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/algo_phpass.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/algo_scrypt.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/algo_scrypt_modified.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/algo_sha.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_bigint.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_boolean.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_datetime.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_email.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_enum.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_float.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_integer.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_ip.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_line.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_longtext.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_mediumtext.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_point.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_polygon.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_relationship.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_string.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_text.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_url.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/attribute_varchar.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/backup_archive.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/backup_archive_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/backup_policy_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/backup_restoration.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/backup_restoration_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/base_model.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/billing_limits.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/block.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/bucket.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/bucket_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/collection.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/collection_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_bigint.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_boolean.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_datetime.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_email.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_enum.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_float.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_index.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_index_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_integer.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_ip.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_line.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_longtext.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_mediumtext.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_point.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_polygon.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_relationship.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_string.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_text.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_url.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/column_varchar.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/continent.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/continent_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/country.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/country_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/currency.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/currency_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/database.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/database_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/deployment.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/deployment_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/dev_key.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/document.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/document_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/email_template.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/email_template_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/ephemeral_key.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/execution.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/execution_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/file.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/file_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/framework.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/framework_adapter.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/framework_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/function.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/function_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/headers.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/health_antivirus.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/health_certificate.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/health_queue.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/health_status.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/health_status_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/health_time.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/identity.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/identity_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/index.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/index_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/insight.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/insight_cta.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/insight_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/jwt.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/key.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/key_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/language.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/language_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/locale.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/locale_code.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/locale_code_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/log.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/log_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/membership_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/message.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/message_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/mfa_challenge.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/mfa_factors.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/mfa_recovery_codes.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/mfa_type.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/mock_number.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/mock_number_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_amazon.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_apple.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_auth0.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_authentik.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_autodesk.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_bitbucket.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_bitly.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_box.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_dailymotion.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_discord.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_disqus.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_dropbox.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_etsy.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_facebook.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_figma.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_fusion_auth.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_github.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_gitlab.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_google.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_keycloak.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_kick.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_linkedin.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_microsoft.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_notion.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_oidc.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_okta.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_paypal.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_podio.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_provider_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_salesforce.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_slack.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_spotify.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_stripe.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_tradeshift.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_twitch.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_word_press.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_x.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_yahoo.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_yandex.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_zoho.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/o_auth2_zoom.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/phone.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/phone_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/platform_android.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/platform_apple.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/platform_linux.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/platform_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/platform_web.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/platform_windows.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/policy_deny_aliased_email.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/policy_deny_disposable_email.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/policy_deny_free_email.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/policy_password_dictionary.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/policy_password_history.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/policy_password_personal_data.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/policy_session_alert.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/policy_session_duration.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/policy_session_invalidation.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/policy_session_limit.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/policy_user_limit.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/preferences.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/presence.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/presence_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/project_auth_method.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/project_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/project_protocol.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/project_service.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/provider.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/provider_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/proxy_rule.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/proxy_rule_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/report.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/report_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/resource_token.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/resource_token_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/row.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/row_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/runtime.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/runtime_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/session.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/session_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/site.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/site_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/specification.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/specification_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/subscriber.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/subscriber_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/table.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/table_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/target.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/target_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/team.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/team_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/token.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/topic.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/topic_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/transaction.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/transaction_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/user_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/variable.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/variable_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/webhook.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/models/webhook_list.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/operator.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/permission.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/query.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/role.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/service.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/services/__init__.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/utils/__init__.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite/utils/deprecated.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite.egg-info/dependency_links.txt +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite.egg-info/requires.txt +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/appwrite.egg-info/top_level.txt +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/setup.cfg +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/test/test_id.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/test/test_operator.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/test/test_permission.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/test/test_query.py +0 -0
- {appwrite-20.0.0 → appwrite-21.0.0}/test/test_role.py +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: appwrite
|
|
3
|
-
Version:
|
|
3
|
+
Version: 21.0.0
|
|
4
4
|
Summary: Appwrite is an open-source self-hosted backend server that abstracts and simplifies complex and repetitive development tasks behind a very simple REST API
|
|
5
5
|
Home-page: https://appwrite.io/support
|
|
6
|
-
Download-URL: https://github.com/appwrite/sdk-for-python/archive/
|
|
6
|
+
Download-URL: https://github.com/appwrite/sdk-for-python/archive/21.0.0.tar.gz
|
|
7
7
|
Author: Appwrite Team
|
|
8
8
|
Author-email: Appwrite Team <team@appwrite.io>
|
|
9
9
|
Maintainer: Appwrite Team
|
|
@@ -17,13 +17,14 @@ class Client:
|
|
|
17
17
|
self._endpoint = 'https://cloud.appwrite.io/v1'
|
|
18
18
|
self._global_headers = {
|
|
19
19
|
'content-type': '',
|
|
20
|
-
'user-agent' : f'AppwritePythonSDK/
|
|
20
|
+
'user-agent' : f'AppwritePythonSDK/21.0.0 ({platform.uname().system}; {platform.uname().version}; {platform.uname().machine})',
|
|
21
21
|
'x-sdk-name': 'Python',
|
|
22
22
|
'x-sdk-platform': 'server',
|
|
23
23
|
'x-sdk-language': 'python',
|
|
24
|
-
'x-sdk-version': '
|
|
24
|
+
'x-sdk-version': '21.0.0',
|
|
25
25
|
'X-Appwrite-Response-Format' : '1.9.5',
|
|
26
26
|
}
|
|
27
|
+
self._config = {}
|
|
27
28
|
|
|
28
29
|
def set_self_signed(self, status=True):
|
|
29
30
|
self._self_signed = status
|
|
@@ -43,68 +44,81 @@ class Client:
|
|
|
43
44
|
def get_headers(self):
|
|
44
45
|
return dict(self._global_headers)
|
|
45
46
|
|
|
47
|
+
def get_config(self, key):
|
|
48
|
+
return self._config.get(key, '')
|
|
49
|
+
|
|
46
50
|
def set_project(self, value):
|
|
47
51
|
"""Your project ID"""
|
|
48
52
|
|
|
49
|
-
self.
|
|
53
|
+
self._config['project'] = value
|
|
50
54
|
return self
|
|
51
55
|
|
|
52
56
|
def set_key(self, value):
|
|
53
57
|
"""Your secret API key"""
|
|
54
58
|
|
|
55
59
|
self._global_headers['x-appwrite-key'] = value
|
|
60
|
+
self._config['key'] = value
|
|
56
61
|
return self
|
|
57
62
|
|
|
58
63
|
def set_jwt(self, value):
|
|
59
64
|
"""Your secret JSON Web Token"""
|
|
60
65
|
|
|
61
66
|
self._global_headers['x-appwrite-jwt'] = value
|
|
67
|
+
self._config['jwt'] = value
|
|
62
68
|
return self
|
|
63
69
|
|
|
64
70
|
def set_locale(self, value):
|
|
65
71
|
self._global_headers['x-appwrite-locale'] = value
|
|
72
|
+
self._config['locale'] = value
|
|
66
73
|
return self
|
|
67
74
|
|
|
68
75
|
def set_session(self, value):
|
|
69
76
|
"""The user session to authenticate with"""
|
|
70
77
|
|
|
71
78
|
self._global_headers['x-appwrite-session'] = value
|
|
79
|
+
self._config['session'] = value
|
|
72
80
|
return self
|
|
73
81
|
|
|
74
82
|
def set_forwarded_user_agent(self, value):
|
|
75
83
|
"""The user agent string of the client that made the request"""
|
|
76
84
|
|
|
77
85
|
self._global_headers['x-forwarded-user-agent'] = value
|
|
86
|
+
self._config['forwardeduseragent'] = value
|
|
78
87
|
return self
|
|
79
88
|
|
|
80
89
|
def set_dev_key(self, value):
|
|
81
90
|
"""Your secret dev API key"""
|
|
82
91
|
|
|
83
92
|
self._global_headers['x-appwrite-dev-key'] = value
|
|
93
|
+
self._config['devkey'] = value
|
|
84
94
|
return self
|
|
85
95
|
|
|
86
96
|
def set_cookie(self, value):
|
|
87
97
|
"""The user cookie to authenticate with. Used by SDKs that forward an incoming Cookie header in server-side runtimes."""
|
|
88
98
|
|
|
89
99
|
self._global_headers['cookie'] = value
|
|
100
|
+
self._config['cookie'] = value
|
|
90
101
|
return self
|
|
91
102
|
|
|
92
103
|
def set_impersonate_user_id(self, value):
|
|
93
|
-
"""Impersonate a user by ID
|
|
104
|
+
"""Impersonate a user by ID"""
|
|
94
105
|
|
|
95
106
|
self._global_headers['x-appwrite-impersonate-user-id'] = value
|
|
107
|
+
self._config['impersonateuserid'] = value
|
|
96
108
|
return self
|
|
97
109
|
|
|
98
110
|
def set_impersonate_user_email(self, value):
|
|
99
|
-
"""Impersonate a user by email
|
|
111
|
+
"""Impersonate a user by email"""
|
|
100
112
|
|
|
101
113
|
self._global_headers['x-appwrite-impersonate-user-email'] = value
|
|
114
|
+
self._config['impersonateuseremail'] = value
|
|
102
115
|
return self
|
|
103
116
|
|
|
104
117
|
def set_impersonate_user_phone(self, value):
|
|
105
|
-
"""Impersonate a user by phone
|
|
118
|
+
"""Impersonate a user by phone"""
|
|
106
119
|
|
|
107
120
|
self._global_headers['x-appwrite-impersonate-user-phone'] = value
|
|
121
|
+
self._config['impersonateuserphone'] = value
|
|
108
122
|
return self
|
|
109
123
|
|
|
110
124
|
def call(self, method, path='', headers=None, params=None, response_type='json'):
|
|
@@ -91,7 +91,10 @@ class ProjectKeyScopes(Enum):
|
|
|
91
91
|
ARCHIVES_WRITE = "archives.write"
|
|
92
92
|
RESTORATIONS_READ = "restorations.read"
|
|
93
93
|
RESTORATIONS_WRITE = "restorations.write"
|
|
94
|
+
DEDICATEDDATABASES_EXECUTE = "dedicatedDatabases.execute"
|
|
94
95
|
DOMAINS_READ = "domains.read"
|
|
95
96
|
DOMAINS_WRITE = "domains.write"
|
|
96
97
|
EVENTS_READ = "events.read"
|
|
98
|
+
APPS_READ = "apps.read"
|
|
99
|
+
APPS_WRITE = "apps.write"
|
|
97
100
|
USAGE_READ = "usage.read"
|
|
@@ -3,6 +3,7 @@ from enum import Enum
|
|
|
3
3
|
class ProjectPolicyId(Enum):
|
|
4
4
|
PASSWORD_DICTIONARY = "password-dictionary"
|
|
5
5
|
PASSWORD_HISTORY = "password-history"
|
|
6
|
+
PASSWORD_STRENGTH = "password-strength"
|
|
6
7
|
PASSWORD_PERSONAL_DATA = "password-personal-data"
|
|
7
8
|
SESSION_ALERT = "session-alert"
|
|
8
9
|
SESSION_DURATION = "session-duration"
|
|
@@ -13,3 +14,4 @@ class ProjectPolicyId(Enum):
|
|
|
13
14
|
DENY_ALIASED_EMAIL = "deny-aliased-email"
|
|
14
15
|
DENY_DISPOSABLE_EMAIL = "deny-disposable-email"
|
|
15
16
|
DENY_FREE_EMAIL = "deny-free-email"
|
|
17
|
+
DENY_CORPORATE_EMAIL = "deny-corporate-email"
|
|
@@ -172,6 +172,7 @@ from .o_auth2_microsoft import OAuth2Microsoft
|
|
|
172
172
|
from .o_auth2_provider_list import OAuth2ProviderList
|
|
173
173
|
from .policy_password_dictionary import PolicyPasswordDictionary
|
|
174
174
|
from .policy_password_history import PolicyPasswordHistory
|
|
175
|
+
from .policy_password_strength import PolicyPasswordStrength
|
|
175
176
|
from .policy_password_personal_data import PolicyPasswordPersonalData
|
|
176
177
|
from .policy_session_alert import PolicySessionAlert
|
|
177
178
|
from .policy_session_duration import PolicySessionDuration
|
|
@@ -221,15 +222,27 @@ from .backup_policy import BackupPolicy
|
|
|
221
222
|
from .policy_deny_aliased_email import PolicyDenyAliasedEmail
|
|
222
223
|
from .policy_deny_disposable_email import PolicyDenyDisposableEmail
|
|
223
224
|
from .policy_deny_free_email import PolicyDenyFreeEmail
|
|
225
|
+
from .policy_deny_corporate_email import PolicyDenyCorporateEmail
|
|
224
226
|
from .backup_restoration import BackupRestoration
|
|
225
|
-
from .
|
|
226
|
-
from .
|
|
227
|
+
from .usage_data_point import UsageDataPoint
|
|
228
|
+
from .usage_event_list import UsageEventList
|
|
229
|
+
from .usage_gauge_list import UsageGaugeList
|
|
230
|
+
from .usage_metric import UsageMetric
|
|
231
|
+
from .app import App
|
|
232
|
+
from .app_secret import AppSecret
|
|
233
|
+
from .app_secret_plaintext import AppSecretPlaintext
|
|
234
|
+
from .oauth2_authorize import Oauth2Authorize
|
|
235
|
+
from .oauth2_approve import Oauth2Approve
|
|
236
|
+
from .oauth2_reject import Oauth2Reject
|
|
237
|
+
from .oauth2_grant import Oauth2Grant
|
|
238
|
+
from .oauth2_device_authorization import Oauth2DeviceAuthorization
|
|
239
|
+
from .oauth2_token import Oauth2Token
|
|
227
240
|
from .activity_event_list import ActivityEventList
|
|
228
241
|
from .backup_archive_list import BackupArchiveList
|
|
229
242
|
from .backup_policy_list import BackupPolicyList
|
|
230
243
|
from .backup_restoration_list import BackupRestorationList
|
|
231
|
-
from .
|
|
232
|
-
from .
|
|
244
|
+
from .apps_list import AppsList
|
|
245
|
+
from .app_secret_list import AppSecretList
|
|
233
246
|
|
|
234
247
|
__all__ = [
|
|
235
248
|
'AppwriteModel',
|
|
@@ -406,6 +419,7 @@ __all__ = [
|
|
|
406
419
|
'OAuth2ProviderList',
|
|
407
420
|
'PolicyPasswordDictionary',
|
|
408
421
|
'PolicyPasswordHistory',
|
|
422
|
+
'PolicyPasswordStrength',
|
|
409
423
|
'PolicyPasswordPersonalData',
|
|
410
424
|
'PolicySessionAlert',
|
|
411
425
|
'PolicySessionDuration',
|
|
@@ -455,13 +469,25 @@ __all__ = [
|
|
|
455
469
|
'PolicyDenyAliasedEmail',
|
|
456
470
|
'PolicyDenyDisposableEmail',
|
|
457
471
|
'PolicyDenyFreeEmail',
|
|
472
|
+
'PolicyDenyCorporateEmail',
|
|
458
473
|
'BackupRestoration',
|
|
459
|
-
'
|
|
460
|
-
'
|
|
474
|
+
'UsageDataPoint',
|
|
475
|
+
'UsageEventList',
|
|
476
|
+
'UsageGaugeList',
|
|
477
|
+
'UsageMetric',
|
|
478
|
+
'App',
|
|
479
|
+
'AppSecret',
|
|
480
|
+
'AppSecretPlaintext',
|
|
481
|
+
'Oauth2Authorize',
|
|
482
|
+
'Oauth2Approve',
|
|
483
|
+
'Oauth2Reject',
|
|
484
|
+
'Oauth2Grant',
|
|
485
|
+
'Oauth2DeviceAuthorization',
|
|
486
|
+
'Oauth2Token',
|
|
461
487
|
'ActivityEventList',
|
|
462
488
|
'BackupArchiveList',
|
|
463
489
|
'BackupPolicyList',
|
|
464
490
|
'BackupRestorationList',
|
|
465
|
-
'
|
|
466
|
-
'
|
|
491
|
+
'AppsList',
|
|
492
|
+
'AppSecretList',
|
|
467
493
|
]
|
|
@@ -45,30 +45,6 @@ class ActivityEvent(AppwriteModel):
|
|
|
45
45
|
Team ID.
|
|
46
46
|
hostname : str
|
|
47
47
|
Hostname.
|
|
48
|
-
oscode : str
|
|
49
|
-
Operating system code name. View list of [available options](https://github.com/appwrite/appwrite/blob/master/docs/lists/os.json).
|
|
50
|
-
osname : str
|
|
51
|
-
Operating system name.
|
|
52
|
-
osversion : str
|
|
53
|
-
Operating system version.
|
|
54
|
-
clienttype : str
|
|
55
|
-
Client type.
|
|
56
|
-
clientcode : str
|
|
57
|
-
Client code name. View list of [available options](https://github.com/appwrite/appwrite/blob/master/docs/lists/clients.json).
|
|
58
|
-
clientname : str
|
|
59
|
-
Client name.
|
|
60
|
-
clientversion : str
|
|
61
|
-
Client version.
|
|
62
|
-
clientengine : str
|
|
63
|
-
Client engine name.
|
|
64
|
-
clientengineversion : str
|
|
65
|
-
Client engine name.
|
|
66
|
-
devicename : str
|
|
67
|
-
Device name.
|
|
68
|
-
devicebrand : str
|
|
69
|
-
Device brand name.
|
|
70
|
-
devicemodel : str
|
|
71
|
-
Device model name.
|
|
72
48
|
countrycode : str
|
|
73
49
|
Country two-character ISO 3166-1 alpha code.
|
|
74
50
|
countryname : str
|
|
@@ -92,17 +68,5 @@ class ActivityEvent(AppwriteModel):
|
|
|
92
68
|
projectid: str = Field(..., alias='projectId')
|
|
93
69
|
teamid: str = Field(..., alias='teamId')
|
|
94
70
|
hostname: str = Field(..., alias='hostname')
|
|
95
|
-
oscode: str = Field(..., alias='osCode')
|
|
96
|
-
osname: str = Field(..., alias='osName')
|
|
97
|
-
osversion: str = Field(..., alias='osVersion')
|
|
98
|
-
clienttype: str = Field(..., alias='clientType')
|
|
99
|
-
clientcode: str = Field(..., alias='clientCode')
|
|
100
|
-
clientname: str = Field(..., alias='clientName')
|
|
101
|
-
clientversion: str = Field(..., alias='clientVersion')
|
|
102
|
-
clientengine: str = Field(..., alias='clientEngine')
|
|
103
|
-
clientengineversion: str = Field(..., alias='clientEngineVersion')
|
|
104
|
-
devicename: str = Field(..., alias='deviceName')
|
|
105
|
-
devicebrand: str = Field(..., alias='deviceBrand')
|
|
106
|
-
devicemodel: str = Field(..., alias='deviceModel')
|
|
107
71
|
countrycode: str = Field(..., alias='countryCode')
|
|
108
72
|
countryname: str = Field(..., alias='countryName')
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Optional, Union, cast
|
|
2
|
+
from pydantic import Field, PrivateAttr
|
|
3
|
+
|
|
4
|
+
from .base_model import AppwriteModel
|
|
5
|
+
from .app_secret import AppSecret
|
|
6
|
+
|
|
7
|
+
class App(AppwriteModel):
|
|
8
|
+
"""
|
|
9
|
+
App
|
|
10
|
+
|
|
11
|
+
Attributes
|
|
12
|
+
----------
|
|
13
|
+
id : str
|
|
14
|
+
App ID.
|
|
15
|
+
createdat : str
|
|
16
|
+
App creation time in ISO 8601 format.
|
|
17
|
+
updatedat : str
|
|
18
|
+
App update date in ISO 8601 format.
|
|
19
|
+
name : str
|
|
20
|
+
Application name.
|
|
21
|
+
description : str
|
|
22
|
+
Application description shown to users during OAuth2 consent.
|
|
23
|
+
clienturi : str
|
|
24
|
+
Application homepage URL shown to users during OAuth2 consent.
|
|
25
|
+
logouri : str
|
|
26
|
+
Application logo URL shown to users during OAuth2 consent.
|
|
27
|
+
privacypolicyurl : str
|
|
28
|
+
Application privacy policy URL shown to users during OAuth2 consent.
|
|
29
|
+
termsurl : str
|
|
30
|
+
Application terms of service URL shown to users during OAuth2 consent.
|
|
31
|
+
contacts : List[Any]
|
|
32
|
+
Application support or security contact emails.
|
|
33
|
+
tagline : str
|
|
34
|
+
Application tagline shown to users during OAuth2 consent.
|
|
35
|
+
tags : List[Any]
|
|
36
|
+
Application tags shown to users during OAuth2 consent.
|
|
37
|
+
images : List[Any]
|
|
38
|
+
Application image URLs shown to users during OAuth2 consent.
|
|
39
|
+
supporturl : str
|
|
40
|
+
Application support URL shown to users during OAuth2 consent.
|
|
41
|
+
datadeletionurl : str
|
|
42
|
+
Application data deletion URL shown to users during OAuth2 consent.
|
|
43
|
+
redirecturis : List[Any]
|
|
44
|
+
List of authorized redirect URIs. These URIs can be used to redirect users after they authenticate.
|
|
45
|
+
postlogoutredirecturis : List[Any]
|
|
46
|
+
List of authorized post-logout redirect URIs for OpenID Connect RP-Initiated Logout. The logout endpoint only redirects users to URIs in this list after ending their session.
|
|
47
|
+
enabled : bool
|
|
48
|
+
Whether the app is enabled or not.
|
|
49
|
+
type : str
|
|
50
|
+
OAuth2 client type. `public` for SPAs, mobile, and native apps that cannot keep a client secret (PKCE required); `confidential` for server-side clients that authenticate with a client secret.
|
|
51
|
+
deviceflow : bool
|
|
52
|
+
Whether this client may use the OAuth2 Device Authorization Grant (RFC 8628).
|
|
53
|
+
teamid : str
|
|
54
|
+
ID of team that owns the application, if owned by team. Otherwise, user ID will be used.
|
|
55
|
+
userid : str
|
|
56
|
+
ID of user who owns the application, if owned by user. Otherwise, team ID will be used.
|
|
57
|
+
secrets : List[AppSecret]
|
|
58
|
+
List of application secrets.
|
|
59
|
+
"""
|
|
60
|
+
id: str = Field(..., alias='$id')
|
|
61
|
+
createdat: str = Field(..., alias='$createdAt')
|
|
62
|
+
updatedat: str = Field(..., alias='$updatedAt')
|
|
63
|
+
name: str = Field(..., alias='name')
|
|
64
|
+
description: str = Field(..., alias='description')
|
|
65
|
+
clienturi: str = Field(..., alias='clientUri')
|
|
66
|
+
logouri: str = Field(..., alias='logoUri')
|
|
67
|
+
privacypolicyurl: str = Field(..., alias='privacyPolicyUrl')
|
|
68
|
+
termsurl: str = Field(..., alias='termsUrl')
|
|
69
|
+
contacts: List[Any] = Field(..., alias='contacts')
|
|
70
|
+
tagline: str = Field(..., alias='tagline')
|
|
71
|
+
tags: List[Any] = Field(..., alias='tags')
|
|
72
|
+
images: List[Any] = Field(..., alias='images')
|
|
73
|
+
supporturl: str = Field(..., alias='supportUrl')
|
|
74
|
+
datadeletionurl: str = Field(..., alias='dataDeletionUrl')
|
|
75
|
+
redirecturis: List[Any] = Field(..., alias='redirectUris')
|
|
76
|
+
postlogoutredirecturis: List[Any] = Field(..., alias='postLogoutRedirectUris')
|
|
77
|
+
enabled: bool = Field(..., alias='enabled')
|
|
78
|
+
type: str = Field(..., alias='type')
|
|
79
|
+
deviceflow: bool = Field(..., alias='deviceFlow')
|
|
80
|
+
teamid: str = Field(..., alias='teamId')
|
|
81
|
+
userid: str = Field(..., alias='userId')
|
|
82
|
+
secrets: List[AppSecret] = Field(..., alias='secrets')
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Optional, Union, cast
|
|
2
|
+
from pydantic import Field, PrivateAttr
|
|
3
|
+
|
|
4
|
+
from .base_model import AppwriteModel
|
|
5
|
+
|
|
6
|
+
class AppSecret(AppwriteModel):
|
|
7
|
+
"""
|
|
8
|
+
AppSecret
|
|
9
|
+
|
|
10
|
+
Attributes
|
|
11
|
+
----------
|
|
12
|
+
id : str
|
|
13
|
+
Secret ID.
|
|
14
|
+
createdat : str
|
|
15
|
+
Secret creation time in ISO 8601 format.
|
|
16
|
+
updatedat : str
|
|
17
|
+
Secret update time in ISO 8601 format.
|
|
18
|
+
appid : str
|
|
19
|
+
Application ID this secret belongs to.
|
|
20
|
+
secret : str
|
|
21
|
+
Hashed application client secret.
|
|
22
|
+
hint : str
|
|
23
|
+
Last few characters of the client secret, used to help identify it.
|
|
24
|
+
createdbyid : str
|
|
25
|
+
ID of the user who created the secret.
|
|
26
|
+
createdbyname : str
|
|
27
|
+
Name of the user who created the secret.
|
|
28
|
+
lastaccessedat : Optional[str]
|
|
29
|
+
Time the secret was last used for authentication in ISO 8601 format. Null if never used.
|
|
30
|
+
"""
|
|
31
|
+
id: str = Field(..., alias='$id')
|
|
32
|
+
createdat: str = Field(..., alias='$createdAt')
|
|
33
|
+
updatedat: str = Field(..., alias='$updatedAt')
|
|
34
|
+
appid: str = Field(..., alias='appId')
|
|
35
|
+
secret: str = Field(..., alias='secret')
|
|
36
|
+
hint: str = Field(..., alias='hint')
|
|
37
|
+
createdbyid: str = Field(..., alias='createdById')
|
|
38
|
+
createdbyname: str = Field(..., alias='createdByName')
|
|
39
|
+
lastaccessedat: Optional[str] = Field(default=None, alias='lastAccessedAt')
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Optional, Union, cast
|
|
2
|
+
from pydantic import Field, PrivateAttr
|
|
3
|
+
|
|
4
|
+
from .base_model import AppwriteModel
|
|
5
|
+
from .app_secret import AppSecret
|
|
6
|
+
|
|
7
|
+
class AppSecretList(AppwriteModel):
|
|
8
|
+
"""
|
|
9
|
+
App secrets list
|
|
10
|
+
|
|
11
|
+
Attributes
|
|
12
|
+
----------
|
|
13
|
+
total : float
|
|
14
|
+
Total number of secrets that matched your query.
|
|
15
|
+
secrets : List[AppSecret]
|
|
16
|
+
List of secrets.
|
|
17
|
+
"""
|
|
18
|
+
total: float = Field(..., alias='total')
|
|
19
|
+
secrets: List[AppSecret] = Field(..., alias='secrets')
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Optional, Union, cast
|
|
2
|
+
from pydantic import Field, PrivateAttr
|
|
3
|
+
|
|
4
|
+
from .base_model import AppwriteModel
|
|
5
|
+
|
|
6
|
+
class AppSecretPlaintext(AppwriteModel):
|
|
7
|
+
"""
|
|
8
|
+
AppSecretPlaintext
|
|
9
|
+
|
|
10
|
+
Attributes
|
|
11
|
+
----------
|
|
12
|
+
id : str
|
|
13
|
+
Secret ID.
|
|
14
|
+
createdat : str
|
|
15
|
+
Secret creation time in ISO 8601 format.
|
|
16
|
+
updatedat : str
|
|
17
|
+
Secret update time in ISO 8601 format.
|
|
18
|
+
appid : str
|
|
19
|
+
Application ID this secret belongs to.
|
|
20
|
+
secret : str
|
|
21
|
+
Application client secret. Returned in full only when the secret is created; subsequent reads return a masked value.
|
|
22
|
+
hint : str
|
|
23
|
+
Last few characters of the client secret, used to help identify it.
|
|
24
|
+
createdbyid : str
|
|
25
|
+
ID of the user who created the secret.
|
|
26
|
+
createdbyname : str
|
|
27
|
+
Name of the user who created the secret.
|
|
28
|
+
lastaccessedat : Optional[str]
|
|
29
|
+
Time the secret was last used for authentication in ISO 8601 format. Null if never used.
|
|
30
|
+
"""
|
|
31
|
+
id: str = Field(..., alias='$id')
|
|
32
|
+
createdat: str = Field(..., alias='$createdAt')
|
|
33
|
+
updatedat: str = Field(..., alias='$updatedAt')
|
|
34
|
+
appid: str = Field(..., alias='appId')
|
|
35
|
+
secret: str = Field(..., alias='secret')
|
|
36
|
+
hint: str = Field(..., alias='hint')
|
|
37
|
+
createdbyid: str = Field(..., alias='createdById')
|
|
38
|
+
createdbyname: str = Field(..., alias='createdByName')
|
|
39
|
+
lastaccessedat: Optional[str] = Field(default=None, alias='lastAccessedAt')
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Optional, Union, cast
|
|
2
|
+
from pydantic import Field, PrivateAttr
|
|
3
|
+
|
|
4
|
+
from .base_model import AppwriteModel
|
|
5
|
+
from .app import App
|
|
6
|
+
|
|
7
|
+
class AppsList(AppwriteModel):
|
|
8
|
+
"""
|
|
9
|
+
Apps list
|
|
10
|
+
|
|
11
|
+
Attributes
|
|
12
|
+
----------
|
|
13
|
+
total : float
|
|
14
|
+
Total number of apps that matched your query.
|
|
15
|
+
apps : List[App]
|
|
16
|
+
List of apps.
|
|
17
|
+
"""
|
|
18
|
+
total: float = Field(..., alias='total')
|
|
19
|
+
apps: List[App] = Field(..., alias='apps')
|
|
@@ -29,6 +29,8 @@ class BackupPolicy(AppwriteModel):
|
|
|
29
29
|
How many days to keep the backup before it will be automatically deleted.
|
|
30
30
|
schedule : str
|
|
31
31
|
Policy backup schedule in CRON format.
|
|
32
|
+
type : str
|
|
33
|
+
Backup type. Possible values: full (complete database snapshot), incremental (changes since last backup).
|
|
32
34
|
enabled : bool
|
|
33
35
|
Is this policy enabled.
|
|
34
36
|
"""
|
|
@@ -42,4 +44,5 @@ class BackupPolicy(AppwriteModel):
|
|
|
42
44
|
resourcetype: Optional[str] = Field(default=None, alias='resourceType')
|
|
43
45
|
retention: float = Field(..., alias='retention')
|
|
44
46
|
schedule: str = Field(..., alias='schedule')
|
|
47
|
+
type: str = Field(..., alias='type')
|
|
45
48
|
enabled: bool = Field(..., alias='enabled')
|
|
@@ -35,6 +35,8 @@ class Membership(AppwriteModel):
|
|
|
35
35
|
User confirmation status, true if the user has joined the team or false otherwise.
|
|
36
36
|
mfa : bool
|
|
37
37
|
Multi factor authentication status, true if the user has MFA enabled or false otherwise. Hide this attribute by toggling membership privacy in the Console.
|
|
38
|
+
useraccessedat : str
|
|
39
|
+
Most recent access date in ISO 8601 format. Show this attribute by toggling membership privacy in the Console.
|
|
38
40
|
roles : List[Any]
|
|
39
41
|
User list of roles
|
|
40
42
|
"""
|
|
@@ -51,4 +53,5 @@ class Membership(AppwriteModel):
|
|
|
51
53
|
joined: str = Field(..., alias='joined')
|
|
52
54
|
confirm: bool = Field(..., alias='confirm')
|
|
53
55
|
mfa: bool = Field(..., alias='mfa')
|
|
56
|
+
useraccessedat: str = Field(..., alias='userAccessedAt')
|
|
54
57
|
roles: List[Any] = Field(..., alias='roles')
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Optional, Union, cast
|
|
2
|
+
from pydantic import Field, PrivateAttr
|
|
3
|
+
|
|
4
|
+
from .base_model import AppwriteModel
|
|
5
|
+
|
|
6
|
+
class Oauth2Approve(AppwriteModel):
|
|
7
|
+
"""
|
|
8
|
+
OAuth2 Approve
|
|
9
|
+
|
|
10
|
+
Attributes
|
|
11
|
+
----------
|
|
12
|
+
redirecturl : str
|
|
13
|
+
URL the end user should be redirected to after the grant is approved, carrying the authorization `code` and/or `id_token` along with the original `state`.
|
|
14
|
+
"""
|
|
15
|
+
redirecturl: str = Field(..., alias='redirectUrl')
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Optional, Union, cast
|
|
2
|
+
from pydantic import Field, PrivateAttr
|
|
3
|
+
|
|
4
|
+
from .base_model import AppwriteModel
|
|
5
|
+
|
|
6
|
+
class Oauth2Authorize(AppwriteModel):
|
|
7
|
+
"""
|
|
8
|
+
OAuth2 Authorize
|
|
9
|
+
|
|
10
|
+
Attributes
|
|
11
|
+
----------
|
|
12
|
+
grantid : str
|
|
13
|
+
OAuth2 grant ID. Set when the user must give explicit consent; pass it to the approve or reject endpoint. Empty when a redirect URL is returned instead.
|
|
14
|
+
redirecturl : str
|
|
15
|
+
URL the end user should be redirected to when the flow can complete without consent. Empty when consent is still required.
|
|
16
|
+
"""
|
|
17
|
+
grantid: str = Field(..., alias='grantId')
|
|
18
|
+
redirecturl: str = Field(..., alias='redirectUrl')
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Optional, Union, cast
|
|
2
|
+
from pydantic import Field, PrivateAttr
|
|
3
|
+
|
|
4
|
+
from .base_model import AppwriteModel
|
|
5
|
+
|
|
6
|
+
class Oauth2DeviceAuthorization(AppwriteModel):
|
|
7
|
+
"""
|
|
8
|
+
OAuth2 Device Authorization
|
|
9
|
+
|
|
10
|
+
Attributes
|
|
11
|
+
----------
|
|
12
|
+
device_code : str
|
|
13
|
+
Device verification code used by the client to poll the token endpoint.
|
|
14
|
+
user_code : str
|
|
15
|
+
Short code the end user enters on the verification page.
|
|
16
|
+
verification_uri : str
|
|
17
|
+
URL where the end user enters the user code.
|
|
18
|
+
verification_uri_complete : str
|
|
19
|
+
Verification URL with the user code prefilled as a query parameter.
|
|
20
|
+
expires_in : float
|
|
21
|
+
Lifetime of the device code and user code in seconds.
|
|
22
|
+
interval : float
|
|
23
|
+
Minimum polling interval for the token endpoint in seconds.
|
|
24
|
+
"""
|
|
25
|
+
device_code: str = Field(..., alias='device_code')
|
|
26
|
+
user_code: str = Field(..., alias='user_code')
|
|
27
|
+
verification_uri: str = Field(..., alias='verification_uri')
|
|
28
|
+
verification_uri_complete: str = Field(..., alias='verification_uri_complete')
|
|
29
|
+
expires_in: float = Field(..., alias='expires_in')
|
|
30
|
+
interval: float = Field(..., alias='interval')
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Optional, Union, cast
|
|
2
|
+
from pydantic import Field, PrivateAttr
|
|
3
|
+
|
|
4
|
+
from .base_model import AppwriteModel
|
|
5
|
+
|
|
6
|
+
class Oauth2Grant(AppwriteModel):
|
|
7
|
+
"""
|
|
8
|
+
OAuth2 Grant
|
|
9
|
+
|
|
10
|
+
Attributes
|
|
11
|
+
----------
|
|
12
|
+
id : str
|
|
13
|
+
Grant ID.
|
|
14
|
+
createdat : str
|
|
15
|
+
Grant creation time in ISO 8601 format.
|
|
16
|
+
updatedat : str
|
|
17
|
+
Grant update date in ISO 8601 format.
|
|
18
|
+
userid : str
|
|
19
|
+
ID of the user the grant belongs to.
|
|
20
|
+
appid : str
|
|
21
|
+
ID of the OAuth2 client (app) the grant was requested for.
|
|
22
|
+
scopes : List[Any]
|
|
23
|
+
Requested OAuth2 scopes the user is being asked to consent to.
|
|
24
|
+
authorizationdetails : str
|
|
25
|
+
Requested authorization_details the user is being asked to consent to, as a JSON string. Each entry has a `type` plus project-defined fields.
|
|
26
|
+
prompt : str
|
|
27
|
+
OIDC prompt directive the consent screen should honor. Space-separated list of: login, consent, select_account.
|
|
28
|
+
redirecturi : str
|
|
29
|
+
Redirect URI the user will be sent to after the flow completes.
|
|
30
|
+
authtime : float
|
|
31
|
+
Unix timestamp of when the user last authenticated.
|
|
32
|
+
expire : str
|
|
33
|
+
Grant expiration time in ISO 8601 format.
|
|
34
|
+
"""
|
|
35
|
+
id: str = Field(..., alias='$id')
|
|
36
|
+
createdat: str = Field(..., alias='$createdAt')
|
|
37
|
+
updatedat: str = Field(..., alias='$updatedAt')
|
|
38
|
+
userid: str = Field(..., alias='userId')
|
|
39
|
+
appid: str = Field(..., alias='appId')
|
|
40
|
+
scopes: List[Any] = Field(..., alias='scopes')
|
|
41
|
+
authorizationdetails: str = Field(..., alias='authorizationDetails')
|
|
42
|
+
prompt: str = Field(..., alias='prompt')
|
|
43
|
+
redirecturi: str = Field(..., alias='redirectUri')
|
|
44
|
+
authtime: float = Field(..., alias='authTime')
|
|
45
|
+
expire: str = Field(..., alias='expire')
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Optional, Union, cast
|
|
2
|
+
from pydantic import Field, PrivateAttr
|
|
3
|
+
|
|
4
|
+
from .base_model import AppwriteModel
|
|
5
|
+
|
|
6
|
+
class Oauth2Reject(AppwriteModel):
|
|
7
|
+
"""
|
|
8
|
+
OAuth2 Reject
|
|
9
|
+
|
|
10
|
+
Attributes
|
|
11
|
+
----------
|
|
12
|
+
redirecturl : str
|
|
13
|
+
URL the end user should be redirected to after the grant is rejected, carrying an `access_denied` error.
|
|
14
|
+
"""
|
|
15
|
+
redirecturl: str = Field(..., alias='redirectUrl')
|