=begin #Ory APIs #Documentation for all public and administrative Ory APIs. Administrative APIs can only be accessed with a valid Personal Access Token. Public APIs are mostly used in browsers. The version of the OpenAPI document: v1.1.11 Contact: support@ory.sh Generated by: https://openapi-generator.tech OpenAPI Generator version: 6.0.1 =end require 'date' require 'time' module OryClient class NormalizedProjectRevision # The Project's Revision Creation Date attr_accessor :created_at attr_accessor :hydra_oauth2_allowed_top_level_claims # Automatically grant authorized OAuth2 Scope in OAuth2 Client Credentials Flow. Each OAuth2 Client is allowed to request a predefined OAuth2 Scope (for example `read write`). If this option is enabled, the full scope is automatically granted when performing the OAuth2 Client Credentials flow. If disabled, the OAuth2 Client has to request the scope in the OAuth2 request by providing the `scope` query parameter. Setting this option to true is common if you need compatibility with MITREid. This governs the \"oauth2.client_credentials.default_grant_allowed_scope\" setting. attr_accessor :hydra_oauth2_client_credentials_default_grant_allowed_scope # Set to true if you want to exclude claim `nbf (not before)` part of access token. This governs the \"oauth2.exclude_not_before_claim\" setting. attr_accessor :hydra_oauth2_exclude_not_before_claim # Configures if the issued at (`iat`) claim is required in the JSON Web Token (JWT) Profile for OAuth 2.0 Client Authentication and Authorization Grants (RFC7523). If set to `false`, the `iat` claim is required. Set this value to `true` only after careful consideration. This governs the \"oauth2.grant.jwt.iat_optional\" setting. attr_accessor :hydra_oauth2_grant_jwt_iat_optional # Configures if the JSON Web Token ID (`jti`) claim is required in the JSON Web Token (JWT) Profile for OAuth 2.0 Client Authentication and Authorization Grants (RFC7523). If set to `false`, the `jti` claim is required. Set this value to `true` only after careful consideration. This governs the \"oauth2.grant.jwt.jti_optional\" setting. attr_accessor :hydra_oauth2_grant_jwt_jti_optional # Configures what the maximum age of a JWT assertion used in the JSON Web Token (JWT) Profile for OAuth 2.0 Client Authentication and Authorization Grants (RFC7523) can be. This feature uses the `exp` claim and `iat` claim to calculate assertion age. Assertions exceeding the max age will be denied. Useful as a safety measure and recommended to keep below 720h. This governs the \"oauth2.grant.jwt.max_ttl\" setting. attr_accessor :hydra_oauth2_grant_jwt_max_ttl # Configures whether PKCE should be enforced for all OAuth2 Clients. This governs the \"oauth2.pkce.enforced\" setting. attr_accessor :hydra_oauth2_pkce_enforced # Configures whether PKCE should be enforced for OAuth2 Clients without a client secret (public clients). This governs the \"oauth2.pkce.enforced_for_public_clients\" setting. attr_accessor :hydra_oauth2_pkce_enforced_for_public_clients # Sets the Refresh Token Hook Endpoint. If set this endpoint will be called during the OAuth2 Token Refresh grant update the OAuth2 Access Token claims. This governs the \"oauth2.refresh_token_hook\" setting. attr_accessor :hydra_oauth2_refresh_token_hook attr_accessor :hydra_oidc_dynamic_client_registration_default_scope # Configures OpenID Connect Dynamic Client Registration. This governs the \"oidc.dynamic_client_registration.enabled\" setting. attr_accessor :hydra_oidc_dynamic_client_registration_enabled # Configures OpenID Connect Discovery and overwrites the pairwise algorithm This governs the \"oidc.subject_identifiers.pairwise_salt\" setting. attr_accessor :hydra_oidc_subject_identifiers_pairwise_salt attr_accessor :hydra_oidc_subject_identifiers_supported_types attr_accessor :hydra_secrets_cookie attr_accessor :hydra_secrets_system attr_accessor :hydra_serve_admin_cors_allowed_origins # Configures the Ory Hydra CORS Settings This governs the \"serve.admin.cors.enabled\" setting. attr_accessor :hydra_serve_admin_cors_enabled # Configures the Ory Hydra Cookie Same Site Legacy Workaround This governs the \"serve.cookies.same_site_legacy_workaround\" setting. attr_accessor :hydra_serve_cookies_same_site_legacy_workaround # Configures the Ory Hydra Cookie Same Site Mode This governs the \"serve.cookies.same_site_mode\" setting. attr_accessor :hydra_serve_cookies_same_site_mode attr_accessor :hydra_serve_public_cors_allowed_origins # Configures the Ory Hydra CORS Settings This governs the \"serve.public.cors.enabled\" setting. attr_accessor :hydra_serve_public_cors_enabled # Defines access token type. jwt is a bad idea, see https://www.ory.sh/docs/hydra/advanced#json-web-tokens This governs the \"strategies.access_token\" setting. opaque Oauth2AccessTokenStrategyOpaque jwt Oauth2AccessTokenStrategyJwt attr_accessor :hydra_strategies_access_token # Defines how scopes are matched. For more details have a look at https://github.com/ory/fosite#scopes This governs the \"strategies.scope\" setting. exact Oauth2ScopeStrategyExact wildcard Oauth2ScopeStrategyWildcard attr_accessor :hydra_strategies_scope # This governs the \"ttl.access_token\" setting. attr_accessor :hydra_ttl_access_token # Configures how long refresh tokens are valid. Set to -1 for refresh tokens to never expire. This is not recommended! This governs the \"ttl.auth_code\" setting. attr_accessor :hydra_ttl_auth_code # This governs the \"ttl.id_token\" setting. attr_accessor :hydra_ttl_id_token # Configures how long a user login and consent flow may take. This governs the \"ttl.login_consent_request\" setting. attr_accessor :hydra_ttl_login_consent_request # Configures how long refresh tokens are valid. Set to -1 for refresh tokens to never expire. This is not recommended! This governs the \"ttl.refresh_token\" setting. attr_accessor :hydra_ttl_refresh_token # Sets the OAuth2 Consent Endpoint URL of the OAuth2 User Login & Consent flow. Defaults to the Ory Account Experience if left empty. This governs the \"urls.consent\" setting. attr_accessor :hydra_urls_consent # Sets the OAuth2 Error URL of the OAuth2 User Login & Consent flow. Defaults to the Ory Account Experience if left empty. This governs the \"urls.error\" setting. attr_accessor :hydra_urls_error # Sets the OAuth2 Login Endpoint URL of the OAuth2 User Login & Consent flow. Defaults to the Ory Account Experience if left empty. This governs the \"urls.login\" setting. attr_accessor :hydra_urls_login # Sets the logout endpoint. Defaults to the Ory Account Experience if left empty. This governs the \"urls.logout\" setting. attr_accessor :hydra_urls_logout # When an OAuth2-related user agent requests to log out, they will be redirected to this url afterwards per default. Defaults to the Ory Account Experience in development and your application in production mode when a custom domain is connected. This governs the \"urls.post_logout_redirect\" setting. attr_accessor :hydra_urls_post_logout_redirect # This value will be used as the issuer in access and ID tokens. It must be specified and using HTTPS protocol, unless the development mode is enabled. On the Ory Network it will be very rare that you want to modify this value. If left empty, it will default to the correct value for the Ory Network. This governs the \"urls.self.issuer\" setting. attr_accessor :hydra_urls_self_issuer attr_accessor :hydra_webfinger_jwks_broadcast_keys # Configures OpenID Connect Discovery and overwrites the OAuth2 Authorization URL. This governs the \"webfinger.oidc.discovery.auth_url\" setting. attr_accessor :hydra_webfinger_oidc_discovery_auth_url # Configures OpenID Connect Discovery and overwrites the OpenID Connect Dynamic Client Registration Endpoint. This governs the \"webfinger.oidc.discovery.client_registration_url\" setting. attr_accessor :hydra_webfinger_oidc_discovery_client_registration_url # Configures OpenID Connect Discovery and overwrites the JWKS URL. This governs the \"webfinger.oidc.discovery.jwks_url\" setting. attr_accessor :hydra_webfinger_oidc_discovery_jwks_url attr_accessor :hydra_webfinger_oidc_discovery_supported_claims attr_accessor :hydra_webfinger_oidc_discovery_supported_scope # Configures OpenID Connect Discovery and overwrites the OAuth2 Token URL. This governs the \"webfinger.oidc.discovery.token_url\" setting. attr_accessor :hydra_webfinger_oidc_discovery_token_url # Configures OpenID Connect Discovery and overwrites userinfo endpoint to be advertised at the OpenID Connect Discovery endpoint /.well-known/openid-configuration. Defaults to Ory Hydra's userinfo endpoint at /userinfo. Set this value if you want to handle this endpoint yourself. This governs the \"webfinger.oidc.discovery.userinfo_url\" setting. attr_accessor :hydra_webfinger_oidc_discovery_userinfo_url # The revision ID. attr_accessor :id # The Revisions' Keto Namespace Configuration The string is a URL pointing to an OPL file with the configuration. attr_accessor :keto_namespace_configuration attr_accessor :keto_namespaces attr_accessor :keto_read_max_depth # Configures the Ory Kratos Cookie SameSite Attribute This governs the \"cookies.same_site\" setting. attr_accessor :kratos_cookies_same_site # Configures the Ory Kratos SMTP Connection URI This governs the \"courier.smtp.connection_uri\" setting. attr_accessor :kratos_courier_smtp_connection_uri # Configures the Ory Kratos SMTP From Address This governs the \"courier.smtp.from_address\" setting. attr_accessor :kratos_courier_smtp_from_address # Configures the Ory Kratos SMTP From Name This governs the \"courier.smtp.from_name\" setting. attr_accessor :kratos_courier_smtp_from_name # NullJSONRawMessage represents a json.RawMessage that works well with JSON, SQL, and Swagger and is NULLable- attr_accessor :kratos_courier_smtp_headers # Configures the Ory Kratos Invalid Recovery via Code Email Body HTML Template This governs the \"courier.smtp.templates.recovery_code.invalid.email.body.html\" setting. attr_accessor :kratos_courier_templates_recovery_code_invalid_email_body_html # Configures the Ory Kratos Invalid Recovery via Code Email Body Plaintext Template This governs the \"courier.smtp.templates.recovery_code.invalid.email.body.plaintext\" setting. attr_accessor :kratos_courier_templates_recovery_code_invalid_email_body_plaintext # Configures the Ory Kratos Invalid Recovery via Code Email Subject Template This governs the \"courier.smtp.templates.recovery_code.invalid.email.body.html\" setting. attr_accessor :kratos_courier_templates_recovery_code_invalid_email_subject # Configures the Ory Kratos Valid Recovery via Code Email Body HTML Template This governs the \"courier.smtp.templates.recovery_code.valid.email.body.html\" setting. attr_accessor :kratos_courier_templates_recovery_code_valid_email_body_html # Configures the Ory Kratos Valid Recovery via Code Email Body Plaintext Template This governs the \"courier.smtp.templates.recovery_code.valid.email.body.plaintext\" setting. attr_accessor :kratos_courier_templates_recovery_code_valid_email_body_plaintext # Configures the Ory Kratos Valid Recovery via Code Email Subject Template This governs the \"courier.smtp.templates.recovery_code.valid.email.subject\" setting. attr_accessor :kratos_courier_templates_recovery_code_valid_email_subject # Configures the Ory Kratos Invalid Recovery Email Body HTML Template This governs the \"courier.smtp.templates.recovery.invalid.email.body.html\" setting. attr_accessor :kratos_courier_templates_recovery_invalid_email_body_html # Configures the Ory Kratos Invalid Recovery Email Body Plaintext Template This governs the \"courier.smtp.templates.recovery.invalid.email.body.plaintext\" setting. attr_accessor :kratos_courier_templates_recovery_invalid_email_body_plaintext # Configures the Ory Kratos Invalid Recovery Email Subject Template This governs the \"courier.smtp.templates.recovery.invalid.email.body.html\" setting. attr_accessor :kratos_courier_templates_recovery_invalid_email_subject # Configures the Ory Kratos Valid Recovery Email Body HTML Template This governs the \"courier.smtp.templates.recovery.valid.email.body.html\" setting. attr_accessor :kratos_courier_templates_recovery_valid_email_body_html # Configures the Ory Kratos Valid Recovery Email Body Plaintext Template This governs the \"courier.smtp.templates.recovery.valid.email.body.plaintext\" setting. attr_accessor :kratos_courier_templates_recovery_valid_email_body_plaintext # Configures the Ory Kratos Valid Recovery Email Subject Template This governs the \"courier.smtp.templates.recovery.valid.email.subject\" setting. attr_accessor :kratos_courier_templates_recovery_valid_email_subject # Configures the Ory Kratos Invalid Verification via Code Email Body HTML Template This governs the \"courier.smtp.templates.verification_code.invalid.email.body.html\" setting. attr_accessor :kratos_courier_templates_verification_code_invalid_email_body_html # Configures the Ory Kratos Invalid Verification via Code Email Body Plaintext Template This governs the \"courier.smtp.templates.verification_code.invalid.email.body.plaintext\" setting. attr_accessor :kratos_courier_templates_verification_code_invalid_email_body_plaintext # Configures the Ory Kratos Invalid Verification via Code Email Subject Template This governs the \"courier.smtp.templates.verification_code.invalid.email.subject\" setting. attr_accessor :kratos_courier_templates_verification_code_invalid_email_subject # Configures the Ory Kratos Valid Verification via Code Email Body HTML Template This governs the \"courier.smtp.templates.verification_code.valid.email.body.html\" setting. attr_accessor :kratos_courier_templates_verification_code_valid_email_body_html # Configures the Ory Kratos Valid Verification via Code Email Body Plaintext Template This governs the \"courier.smtp.templates.verification_code.valid.email.body.plaintext\" setting. attr_accessor :kratos_courier_templates_verification_code_valid_email_body_plaintext # Configures the Ory Kratos Valid Verification via Code Email Subject Template This governs the \"courier.smtp.templates.verification_code.valid.email.subject\" setting. attr_accessor :kratos_courier_templates_verification_code_valid_email_subject # Configures the Ory Kratos Invalid Verification Email Body HTML Template This governs the \"courier.smtp.templates.verification.invalid.email.body.html\" setting. attr_accessor :kratos_courier_templates_verification_invalid_email_body_html # Configures the Ory Kratos Invalid Verification Email Body Plaintext Template This governs the \"courier.smtp.templates.verification.invalid.email.body.plaintext\" setting. attr_accessor :kratos_courier_templates_verification_invalid_email_body_plaintext # Configures the Ory Kratos Invalid Verification Email Subject Template This governs the \"courier.smtp.templates.verification.invalid.email.subject\" setting. attr_accessor :kratos_courier_templates_verification_invalid_email_subject # Configures the Ory Kratos Valid Verification Email Body HTML Template This governs the \"courier.smtp.templates.verification.valid.email.body.html\" setting. attr_accessor :kratos_courier_templates_verification_valid_email_body_html # Configures the Ory Kratos Valid Verification Email Body Plaintext Template This governs the \"courier.smtp.templates.verification.valid.email.body.plaintext\" setting. attr_accessor :kratos_courier_templates_verification_valid_email_body_plaintext # Configures the Ory Kratos Valid Verification Email Subject Template This governs the \"courier.smtp.templates.verification.valid.email.subject\" setting. attr_accessor :kratos_courier_templates_verification_valid_email_subject # Configures the Ory Kratos Session caching feature flag This governs the \"feature_flags.cacheable_sessions\" setting. attr_accessor :kratos_feature_flags_cacheable_sessions attr_accessor :kratos_identity_schemas # NullJSONRawMessage represents a json.RawMessage that works well with JSON, SQL, and Swagger and is NULLable- attr_accessor :kratos_oauth2_provider_headers # The Revisions' OAuth2 Provider Integration URL This governs the \"oauth2_provider.url\" setting. attr_accessor :kratos_oauth2_provider_url attr_accessor :kratos_secrets_cipher attr_accessor :kratos_secrets_cookie attr_accessor :kratos_secrets_default attr_accessor :kratos_selfservice_allowed_return_urls # Configures the Ory Kratos Default Return URL This governs the \"selfservice.allowed_return_urls\" setting. attr_accessor :kratos_selfservice_default_browser_return_url # Configures the Ory Kratos Error UI URL This governs the \"selfservice.flows.error.ui_url\" setting. attr_accessor :kratos_selfservice_flows_error_ui_url attr_accessor :kratos_selfservice_flows_hooks # Configures the Ory Kratos Login Default Return URL This governs the \"selfservice.flows.login.after.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_login_after_default_browser_return_url # Configures the Ory Kratos Login After OIDC Default Return URL This governs the \"selfservice.flows.login.after.oidc.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_login_after_oidc_default_browser_return_url # Configures the Ory Kratos Login After Password Default Return URL This governs the \"selfservice.flows.login.after.password.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_login_after_password_default_browser_return_url # Configures the Ory Kratos Login After WebAuthn Default Return URL This governs the \"selfservice.flows.login.after.webauthn.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_login_after_webauthn_default_browser_return_url # Configures the Ory Kratos Login Lifespan This governs the \"selfservice.flows.login.lifespan\" setting. attr_accessor :kratos_selfservice_flows_login_lifespan # Configures the Ory Kratos Login UI URL This governs the \"selfservice.flows.login.ui_url\" setting. attr_accessor :kratos_selfservice_flows_login_ui_url # Configures the Ory Kratos Logout Default Return URL This governs the \"selfservice.flows.logout.after.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_logout_after_default_browser_return_url # Configures the Ory Kratos Recovery Default Return URL This governs the \"selfservice.flows.recovery.after.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_recovery_after_default_browser_return_url # Configures the Ory Kratos Recovery Enabled Setting This governs the \"selfservice.flows.recovery.enabled\" setting. attr_accessor :kratos_selfservice_flows_recovery_enabled # Configures the Ory Kratos Recovery Lifespan This governs the \"selfservice.flows.recovery.lifespan\" setting. attr_accessor :kratos_selfservice_flows_recovery_lifespan # Configures the Ory Kratos Recovery UI URL This governs the \"selfservice.flows.recovery.ui_url\" setting. attr_accessor :kratos_selfservice_flows_recovery_ui_url # Configures the Ory Kratos Recovery strategy to use (\"link\" or \"code\") This governs the \"selfservice.flows.recovery.use\" setting. link SelfServiceMessageVerificationStrategyLink code SelfServiceMessageVerificationStrategyCode attr_accessor :kratos_selfservice_flows_recovery_use # Configures the Ory Kratos Registration Default Return URL This governs the \"selfservice.flows.registration.after.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_registration_after_default_browser_return_url # Configures the Ory Kratos Registration After OIDC Default Return URL This governs the \"selfservice.flows.registration.after.oidc.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_registration_after_oidc_default_browser_return_url # Configures the Ory Kratos Registration After Password Default Return URL This governs the \"selfservice.flows.registration.after.password.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_registration_after_password_default_browser_return_url # Configures the Ory Kratos Registration After Password Default Return URL This governs the \"selfservice.flows.registration.after.password.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_registration_after_webauthn_default_browser_return_url # Configures the Whether Ory Kratos Registration is Enabled This governs the \"selfservice.flows.registration.enabled\" setting.0 attr_accessor :kratos_selfservice_flows_registration_enabled # Configures the Ory Kratos Registration Lifespan This governs the \"selfservice.flows.registration.lifespan\" setting. attr_accessor :kratos_selfservice_flows_registration_lifespan # Configures the Ory Kratos Registration UI URL This governs the \"selfservice.flows.registration.ui_url\" setting. attr_accessor :kratos_selfservice_flows_registration_ui_url # Configures the Ory Kratos Settings Default Return URL This governs the \"selfservice.flows.settings.after.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_settings_after_default_browser_return_url # Configures the Ory Kratos Settings Default Return URL After Updating Passwords This governs the \"selfservice.flows.settings.after.password.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_settings_after_password_default_browser_return_url # Configures the Ory Kratos Settings Default Return URL After Updating Profiles This governs the \"selfservice.flows.settings.after.profile.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_settings_after_profile_default_browser_return_url # Configures the Ory Kratos Settings Lifespan This governs the \"selfservice.flows.settings.lifespan\" setting. attr_accessor :kratos_selfservice_flows_settings_lifespan # Configures the Ory Kratos Settings Privileged Session Max Age This governs the \"selfservice.flows.settings.privileged_session_max_age\" setting. attr_accessor :kratos_selfservice_flows_settings_privileged_session_max_age # Configures the Ory Kratos Settings Required AAL This governs the \"selfservice.flows.settings.required_aal\" setting. attr_accessor :kratos_selfservice_flows_settings_required_aal # Configures the Ory Kratos Settings UI URL This governs the \"selfservice.flows.settings.ui_url\" setting. attr_accessor :kratos_selfservice_flows_settings_ui_url # Configures the Ory Kratos Verification Default Return URL This governs the \"selfservice.flows.verification.after.default_browser_return_url\" setting. attr_accessor :kratos_selfservice_flows_verification_after_default_browser_return_url # Configures the Ory Kratos Verification Enabled Setting This governs the \"selfservice.flows.verification.enabled\" setting. attr_accessor :kratos_selfservice_flows_verification_enabled # Configures the Ory Kratos Verification Lifespan This governs the \"selfservice.flows.verification.lifespan\" setting. attr_accessor :kratos_selfservice_flows_verification_lifespan # Configures the Ory Kratos Verification UI URL This governs the \"selfservice.flows.verification.ui_url\" setting. attr_accessor :kratos_selfservice_flows_verification_ui_url # Configures the Ory Kratos Strategy to use for Verification This governs the \"selfservice.flows.verification.use\" setting. link SelfServiceMessageVerificationStrategyLink code SelfServiceMessageVerificationStrategyCode attr_accessor :kratos_selfservice_flows_verification_use # Configures the Ory Kratos Code Method's lifespan This governs the \"selfservice.methods.code.config.lifespan\" setting. attr_accessor :kratos_selfservice_methods_code_config_lifespan # Configures whether Ory Kratos Code Method is enabled This governs the \"selfservice.methods.code.enabled\" setting. attr_accessor :kratos_selfservice_methods_code_enabled # Configures the Base URL which Recovery, Verification, and Login Links Point to It is recommended to leave this value empty. It will be appropriately configured to the best matching domain (e.g. when using custom domains) automatically. This governs the \"selfservice.methods.link.config.base_url\" setting. attr_accessor :kratos_selfservice_methods_link_config_base_url # Configures the Ory Kratos Link Method's lifespan This governs the \"selfservice.methods.link.config.lifespan\" setting. attr_accessor :kratos_selfservice_methods_link_config_lifespan # Configures whether Ory Kratos Link Method is enabled This governs the \"selfservice.methods.link.enabled\" setting. attr_accessor :kratos_selfservice_methods_link_enabled # Configures whether Ory Kratos TOTP Lookup Secret is enabled This governs the \"selfservice.methods.lookup_secret.enabled\" setting. attr_accessor :kratos_selfservice_methods_lookup_secret_enabled # Configures the Ory Kratos Third Party / OpenID Connect base redirect URI This governs the \"selfservice.methods.oidc.config.base_redirect_uri\" setting. attr_accessor :kratos_selfservice_methods_oidc_config_base_redirect_uri attr_accessor :kratos_selfservice_methods_oidc_config_providers # Configures whether Ory Kratos Third Party / OpenID Connect Login is enabled This governs the \"selfservice.methods.oidc.enabled\" setting. attr_accessor :kratos_selfservice_methods_oidc_enabled # Configures whether Ory Kratos Password HIBP Checks is enabled This governs the \"selfservice.methods.password.config.haveibeenpwned_enabled\" setting. attr_accessor :kratos_selfservice_methods_password_config_haveibeenpwned_enabled # Configures whether Ory Kratos Password should disable the similarity policy. This governs the \"selfservice.methods.password.config.identifier_similarity_check_enabled\" setting. attr_accessor :kratos_selfservice_methods_password_config_identifier_similarity_check_enabled # Configures whether Ory Kratos Password Should ignore HIBPWND Network Errors This governs the \"selfservice.methods.password.config.ignore_network_errors\" setting. attr_accessor :kratos_selfservice_methods_password_config_ignore_network_errors # Configures Ory Kratos Password Max Breaches Detection This governs the \"selfservice.methods.password.config.max_breaches\" setting. attr_accessor :kratos_selfservice_methods_password_config_max_breaches # Configures the minimum length of passwords. This governs the \"selfservice.methods.password.config.min_password_length\" setting. attr_accessor :kratos_selfservice_methods_password_config_min_password_length # Configures whether Ory Kratos Password Method is enabled This governs the \"selfservice.methods.password.enabled\" setting. attr_accessor :kratos_selfservice_methods_password_enabled # Configures whether Ory Kratos Profile Method is enabled This governs the \"selfservice.methods.profile.enabled\" setting. attr_accessor :kratos_selfservice_methods_profile_enabled # Configures Ory Kratos TOTP Issuer This governs the \"selfservice.methods.totp.config.issuer\" setting. attr_accessor :kratos_selfservice_methods_totp_config_issuer # Configures whether Ory Kratos TOTP Method is enabled This governs the \"selfservice.methods.totp.enabled\" setting. attr_accessor :kratos_selfservice_methods_totp_enabled # Configures whether Ory Kratos Webauthn is used for passwordless flows This governs the \"selfservice.methods.webauthn.config.passwordless\" setting. attr_accessor :kratos_selfservice_methods_webauthn_config_passwordless # Configures the Ory Kratos Webauthn RP Display Name This governs the \"selfservice.methods.webauthn.config.rp.display_name\" setting. attr_accessor :kratos_selfservice_methods_webauthn_config_rp_display_name # Configures the Ory Kratos Webauthn RP Icon This governs the \"selfservice.methods.webauthn.config.rp.icon\" setting. attr_accessor :kratos_selfservice_methods_webauthn_config_rp_icon # Configures the Ory Kratos Webauthn RP ID This governs the \"selfservice.methods.webauthn.config.rp.id\" setting. attr_accessor :kratos_selfservice_methods_webauthn_config_rp_id # Configures the Ory Kratos Webauthn RP Origin This governs the \"selfservice.methods.webauthn.config.rp.origin\" setting. attr_accessor :kratos_selfservice_methods_webauthn_config_rp_origin # Configures whether Ory Kratos Webauthn is enabled This governs the \"selfservice.methods.webauthn.enabled\" setting. attr_accessor :kratos_selfservice_methods_webauthn_enabled # Configures the Ory Kratos Session Cookie Persistent Attribute This governs the \"session.cookie.persistent\" setting. attr_accessor :kratos_session_cookie_persistent # Configures the Ory Kratos Session Cookie SameSite Attribute This governs the \"session.cookie.same_site\" setting. attr_accessor :kratos_session_cookie_same_site # Configures the Ory Kratos Session Lifespan This governs the \"session.lifespan\" setting. attr_accessor :kratos_session_lifespan # Configures the Ory Kratos Session Whoami AAL requirement This governs the \"session.whoami.required_aal\" setting. attr_accessor :kratos_session_whoami_required_aal # The project's name. attr_accessor :name # Whether this project is in production mode or not. In development mode, a low-security profile is used making it easier to develop against your, for example, local environment. attr_accessor :production # The Revision's Project ID attr_accessor :project_id # Last Time Project's Revision was Updated attr_accessor :updated_at class EnumAttributeValidator attr_reader :datatype attr_reader :allowable_values def initialize(datatype, allowable_values) @allowable_values = allowable_values.map do |value| case datatype.to_s when /Integer/i value.to_i when /Float/i value.to_f else value end end end def valid?(value) !value || allowable_values.include?(value) end end # Attribute mapping from ruby-style variable name to JSON key. def self.attribute_map { :'created_at' => :'created_at', :'hydra_oauth2_allowed_top_level_claims' => :'hydra_oauth2_allowed_top_level_claims', :'hydra_oauth2_client_credentials_default_grant_allowed_scope' => :'hydra_oauth2_client_credentials_default_grant_allowed_scope', :'hydra_oauth2_exclude_not_before_claim' => :'hydra_oauth2_exclude_not_before_claim', :'hydra_oauth2_grant_jwt_iat_optional' => :'hydra_oauth2_grant_jwt_iat_optional', :'hydra_oauth2_grant_jwt_jti_optional' => :'hydra_oauth2_grant_jwt_jti_optional', :'hydra_oauth2_grant_jwt_max_ttl' => :'hydra_oauth2_grant_jwt_max_ttl', :'hydra_oauth2_pkce_enforced' => :'hydra_oauth2_pkce_enforced', :'hydra_oauth2_pkce_enforced_for_public_clients' => :'hydra_oauth2_pkce_enforced_for_public_clients', :'hydra_oauth2_refresh_token_hook' => :'hydra_oauth2_refresh_token_hook', :'hydra_oidc_dynamic_client_registration_default_scope' => :'hydra_oidc_dynamic_client_registration_default_scope', :'hydra_oidc_dynamic_client_registration_enabled' => :'hydra_oidc_dynamic_client_registration_enabled', :'hydra_oidc_subject_identifiers_pairwise_salt' => :'hydra_oidc_subject_identifiers_pairwise_salt', :'hydra_oidc_subject_identifiers_supported_types' => :'hydra_oidc_subject_identifiers_supported_types', :'hydra_secrets_cookie' => :'hydra_secrets_cookie', :'hydra_secrets_system' => :'hydra_secrets_system', :'hydra_serve_admin_cors_allowed_origins' => :'hydra_serve_admin_cors_allowed_origins', :'hydra_serve_admin_cors_enabled' => :'hydra_serve_admin_cors_enabled', :'hydra_serve_cookies_same_site_legacy_workaround' => :'hydra_serve_cookies_same_site_legacy_workaround', :'hydra_serve_cookies_same_site_mode' => :'hydra_serve_cookies_same_site_mode', :'hydra_serve_public_cors_allowed_origins' => :'hydra_serve_public_cors_allowed_origins', :'hydra_serve_public_cors_enabled' => :'hydra_serve_public_cors_enabled', :'hydra_strategies_access_token' => :'hydra_strategies_access_token', :'hydra_strategies_scope' => :'hydra_strategies_scope', :'hydra_ttl_access_token' => :'hydra_ttl_access_token', :'hydra_ttl_auth_code' => :'hydra_ttl_auth_code', :'hydra_ttl_id_token' => :'hydra_ttl_id_token', :'hydra_ttl_login_consent_request' => :'hydra_ttl_login_consent_request', :'hydra_ttl_refresh_token' => :'hydra_ttl_refresh_token', :'hydra_urls_consent' => :'hydra_urls_consent', :'hydra_urls_error' => :'hydra_urls_error', :'hydra_urls_login' => :'hydra_urls_login', :'hydra_urls_logout' => :'hydra_urls_logout', :'hydra_urls_post_logout_redirect' => :'hydra_urls_post_logout_redirect', :'hydra_urls_self_issuer' => :'hydra_urls_self_issuer', :'hydra_webfinger_jwks_broadcast_keys' => :'hydra_webfinger_jwks_broadcast_keys', :'hydra_webfinger_oidc_discovery_auth_url' => :'hydra_webfinger_oidc_discovery_auth_url', :'hydra_webfinger_oidc_discovery_client_registration_url' => :'hydra_webfinger_oidc_discovery_client_registration_url', :'hydra_webfinger_oidc_discovery_jwks_url' => :'hydra_webfinger_oidc_discovery_jwks_url', :'hydra_webfinger_oidc_discovery_supported_claims' => :'hydra_webfinger_oidc_discovery_supported_claims', :'hydra_webfinger_oidc_discovery_supported_scope' => :'hydra_webfinger_oidc_discovery_supported_scope', :'hydra_webfinger_oidc_discovery_token_url' => :'hydra_webfinger_oidc_discovery_token_url', :'hydra_webfinger_oidc_discovery_userinfo_url' => :'hydra_webfinger_oidc_discovery_userinfo_url', :'id' => :'id', :'keto_namespace_configuration' => :'keto_namespace_configuration', :'keto_namespaces' => :'keto_namespaces', :'keto_read_max_depth' => :'keto_read_max_depth', :'kratos_cookies_same_site' => :'kratos_cookies_same_site', :'kratos_courier_smtp_connection_uri' => :'kratos_courier_smtp_connection_uri', :'kratos_courier_smtp_from_address' => :'kratos_courier_smtp_from_address', :'kratos_courier_smtp_from_name' => :'kratos_courier_smtp_from_name', :'kratos_courier_smtp_headers' => :'kratos_courier_smtp_headers', :'kratos_courier_templates_recovery_code_invalid_email_body_html' => :'kratos_courier_templates_recovery_code_invalid_email_body_html', :'kratos_courier_templates_recovery_code_invalid_email_body_plaintext' => :'kratos_courier_templates_recovery_code_invalid_email_body_plaintext', :'kratos_courier_templates_recovery_code_invalid_email_subject' => :'kratos_courier_templates_recovery_code_invalid_email_subject', :'kratos_courier_templates_recovery_code_valid_email_body_html' => :'kratos_courier_templates_recovery_code_valid_email_body_html', :'kratos_courier_templates_recovery_code_valid_email_body_plaintext' => :'kratos_courier_templates_recovery_code_valid_email_body_plaintext', :'kratos_courier_templates_recovery_code_valid_email_subject' => :'kratos_courier_templates_recovery_code_valid_email_subject', :'kratos_courier_templates_recovery_invalid_email_body_html' => :'kratos_courier_templates_recovery_invalid_email_body_html', :'kratos_courier_templates_recovery_invalid_email_body_plaintext' => :'kratos_courier_templates_recovery_invalid_email_body_plaintext', :'kratos_courier_templates_recovery_invalid_email_subject' => :'kratos_courier_templates_recovery_invalid_email_subject', :'kratos_courier_templates_recovery_valid_email_body_html' => :'kratos_courier_templates_recovery_valid_email_body_html', :'kratos_courier_templates_recovery_valid_email_body_plaintext' => :'kratos_courier_templates_recovery_valid_email_body_plaintext', :'kratos_courier_templates_recovery_valid_email_subject' => :'kratos_courier_templates_recovery_valid_email_subject', :'kratos_courier_templates_verification_code_invalid_email_body_html' => :'kratos_courier_templates_verification_code_invalid_email_body_html', :'kratos_courier_templates_verification_code_invalid_email_body_plaintext' => :'kratos_courier_templates_verification_code_invalid_email_body_plaintext', :'kratos_courier_templates_verification_code_invalid_email_subject' => :'kratos_courier_templates_verification_code_invalid_email_subject', :'kratos_courier_templates_verification_code_valid_email_body_html' => :'kratos_courier_templates_verification_code_valid_email_body_html', :'kratos_courier_templates_verification_code_valid_email_body_plaintext' => :'kratos_courier_templates_verification_code_valid_email_body_plaintext', :'kratos_courier_templates_verification_code_valid_email_subject' => :'kratos_courier_templates_verification_code_valid_email_subject', :'kratos_courier_templates_verification_invalid_email_body_html' => :'kratos_courier_templates_verification_invalid_email_body_html', :'kratos_courier_templates_verification_invalid_email_body_plaintext' => :'kratos_courier_templates_verification_invalid_email_body_plaintext', :'kratos_courier_templates_verification_invalid_email_subject' => :'kratos_courier_templates_verification_invalid_email_subject', :'kratos_courier_templates_verification_valid_email_body_html' => :'kratos_courier_templates_verification_valid_email_body_html', :'kratos_courier_templates_verification_valid_email_body_plaintext' => :'kratos_courier_templates_verification_valid_email_body_plaintext', :'kratos_courier_templates_verification_valid_email_subject' => :'kratos_courier_templates_verification_valid_email_subject', :'kratos_feature_flags_cacheable_sessions' => :'kratos_feature_flags_cacheable_sessions', :'kratos_identity_schemas' => :'kratos_identity_schemas', :'kratos_oauth2_provider_headers' => :'kratos_oauth2_provider_headers', :'kratos_oauth2_provider_url' => :'kratos_oauth2_provider_url', :'kratos_secrets_cipher' => :'kratos_secrets_cipher', :'kratos_secrets_cookie' => :'kratos_secrets_cookie', :'kratos_secrets_default' => :'kratos_secrets_default', :'kratos_selfservice_allowed_return_urls' => :'kratos_selfservice_allowed_return_urls', :'kratos_selfservice_default_browser_return_url' => :'kratos_selfservice_default_browser_return_url', :'kratos_selfservice_flows_error_ui_url' => :'kratos_selfservice_flows_error_ui_url', :'kratos_selfservice_flows_hooks' => :'kratos_selfservice_flows_hooks', :'kratos_selfservice_flows_login_after_default_browser_return_url' => :'kratos_selfservice_flows_login_after_default_browser_return_url', :'kratos_selfservice_flows_login_after_oidc_default_browser_return_url' => :'kratos_selfservice_flows_login_after_oidc_default_browser_return_url', :'kratos_selfservice_flows_login_after_password_default_browser_return_url' => :'kratos_selfservice_flows_login_after_password_default_browser_return_url', :'kratos_selfservice_flows_login_after_webauthn_default_browser_return_url' => :'kratos_selfservice_flows_login_after_webauthn_default_browser_return_url', :'kratos_selfservice_flows_login_lifespan' => :'kratos_selfservice_flows_login_lifespan', :'kratos_selfservice_flows_login_ui_url' => :'kratos_selfservice_flows_login_ui_url', :'kratos_selfservice_flows_logout_after_default_browser_return_url' => :'kratos_selfservice_flows_logout_after_default_browser_return_url', :'kratos_selfservice_flows_recovery_after_default_browser_return_url' => :'kratos_selfservice_flows_recovery_after_default_browser_return_url', :'kratos_selfservice_flows_recovery_enabled' => :'kratos_selfservice_flows_recovery_enabled', :'kratos_selfservice_flows_recovery_lifespan' => :'kratos_selfservice_flows_recovery_lifespan', :'kratos_selfservice_flows_recovery_ui_url' => :'kratos_selfservice_flows_recovery_ui_url', :'kratos_selfservice_flows_recovery_use' => :'kratos_selfservice_flows_recovery_use', :'kratos_selfservice_flows_registration_after_default_browser_return_url' => :'kratos_selfservice_flows_registration_after_default_browser_return_url', :'kratos_selfservice_flows_registration_after_oidc_default_browser_return_url' => :'kratos_selfservice_flows_registration_after_oidc_default_browser_return_url', :'kratos_selfservice_flows_registration_after_password_default_browser_return_url' => :'kratos_selfservice_flows_registration_after_password_default_browser_return_url', :'kratos_selfservice_flows_registration_after_webauthn_default_browser_return_url' => :'kratos_selfservice_flows_registration_after_webauthn_default_browser_return_url', :'kratos_selfservice_flows_registration_enabled' => :'kratos_selfservice_flows_registration_enabled', :'kratos_selfservice_flows_registration_lifespan' => :'kratos_selfservice_flows_registration_lifespan', :'kratos_selfservice_flows_registration_ui_url' => :'kratos_selfservice_flows_registration_ui_url', :'kratos_selfservice_flows_settings_after_default_browser_return_url' => :'kratos_selfservice_flows_settings_after_default_browser_return_url', :'kratos_selfservice_flows_settings_after_password_default_browser_return_url' => :'kratos_selfservice_flows_settings_after_password_default_browser_return_url', :'kratos_selfservice_flows_settings_after_profile_default_browser_return_url' => :'kratos_selfservice_flows_settings_after_profile_default_browser_return_url', :'kratos_selfservice_flows_settings_lifespan' => :'kratos_selfservice_flows_settings_lifespan', :'kratos_selfservice_flows_settings_privileged_session_max_age' => :'kratos_selfservice_flows_settings_privileged_session_max_age', :'kratos_selfservice_flows_settings_required_aal' => :'kratos_selfservice_flows_settings_required_aal', :'kratos_selfservice_flows_settings_ui_url' => :'kratos_selfservice_flows_settings_ui_url', :'kratos_selfservice_flows_verification_after_default_browser_return_url' => :'kratos_selfservice_flows_verification_after_default_browser_return_url', :'kratos_selfservice_flows_verification_enabled' => :'kratos_selfservice_flows_verification_enabled', :'kratos_selfservice_flows_verification_lifespan' => :'kratos_selfservice_flows_verification_lifespan', :'kratos_selfservice_flows_verification_ui_url' => :'kratos_selfservice_flows_verification_ui_url', :'kratos_selfservice_flows_verification_use' => :'kratos_selfservice_flows_verification_use', :'kratos_selfservice_methods_code_config_lifespan' => :'kratos_selfservice_methods_code_config_lifespan', :'kratos_selfservice_methods_code_enabled' => :'kratos_selfservice_methods_code_enabled', :'kratos_selfservice_methods_link_config_base_url' => :'kratos_selfservice_methods_link_config_base_url', :'kratos_selfservice_methods_link_config_lifespan' => :'kratos_selfservice_methods_link_config_lifespan', :'kratos_selfservice_methods_link_enabled' => :'kratos_selfservice_methods_link_enabled', :'kratos_selfservice_methods_lookup_secret_enabled' => :'kratos_selfservice_methods_lookup_secret_enabled', :'kratos_selfservice_methods_oidc_config_base_redirect_uri' => :'kratos_selfservice_methods_oidc_config_base_redirect_uri', :'kratos_selfservice_methods_oidc_config_providers' => :'kratos_selfservice_methods_oidc_config_providers', :'kratos_selfservice_methods_oidc_enabled' => :'kratos_selfservice_methods_oidc_enabled', :'kratos_selfservice_methods_password_config_haveibeenpwned_enabled' => :'kratos_selfservice_methods_password_config_haveibeenpwned_enabled', :'kratos_selfservice_methods_password_config_identifier_similarity_check_enabled' => :'kratos_selfservice_methods_password_config_identifier_similarity_check_enabled', :'kratos_selfservice_methods_password_config_ignore_network_errors' => :'kratos_selfservice_methods_password_config_ignore_network_errors', :'kratos_selfservice_methods_password_config_max_breaches' => :'kratos_selfservice_methods_password_config_max_breaches', :'kratos_selfservice_methods_password_config_min_password_length' => :'kratos_selfservice_methods_password_config_min_password_length', :'kratos_selfservice_methods_password_enabled' => :'kratos_selfservice_methods_password_enabled', :'kratos_selfservice_methods_profile_enabled' => :'kratos_selfservice_methods_profile_enabled', :'kratos_selfservice_methods_totp_config_issuer' => :'kratos_selfservice_methods_totp_config_issuer', :'kratos_selfservice_methods_totp_enabled' => :'kratos_selfservice_methods_totp_enabled', :'kratos_selfservice_methods_webauthn_config_passwordless' => :'kratos_selfservice_methods_webauthn_config_passwordless', :'kratos_selfservice_methods_webauthn_config_rp_display_name' => :'kratos_selfservice_methods_webauthn_config_rp_display_name', :'kratos_selfservice_methods_webauthn_config_rp_icon' => :'kratos_selfservice_methods_webauthn_config_rp_icon', :'kratos_selfservice_methods_webauthn_config_rp_id' => :'kratos_selfservice_methods_webauthn_config_rp_id', :'kratos_selfservice_methods_webauthn_config_rp_origin' => :'kratos_selfservice_methods_webauthn_config_rp_origin', :'kratos_selfservice_methods_webauthn_enabled' => :'kratos_selfservice_methods_webauthn_enabled', :'kratos_session_cookie_persistent' => :'kratos_session_cookie_persistent', :'kratos_session_cookie_same_site' => :'kratos_session_cookie_same_site', :'kratos_session_lifespan' => :'kratos_session_lifespan', :'kratos_session_whoami_required_aal' => :'kratos_session_whoami_required_aal', :'name' => :'name', :'production' => :'production', :'project_id' => :'project_id', :'updated_at' => :'updated_at' } end # Returns all the JSON keys this model knows about def self.acceptable_attributes attribute_map.values end # Attribute type mapping. def self.openapi_types { :'created_at' => :'Time', :'hydra_oauth2_allowed_top_level_claims' => :'Array', :'hydra_oauth2_client_credentials_default_grant_allowed_scope' => :'Boolean', :'hydra_oauth2_exclude_not_before_claim' => :'Boolean', :'hydra_oauth2_grant_jwt_iat_optional' => :'Boolean', :'hydra_oauth2_grant_jwt_jti_optional' => :'Boolean', :'hydra_oauth2_grant_jwt_max_ttl' => :'String', :'hydra_oauth2_pkce_enforced' => :'Boolean', :'hydra_oauth2_pkce_enforced_for_public_clients' => :'Boolean', :'hydra_oauth2_refresh_token_hook' => :'String', :'hydra_oidc_dynamic_client_registration_default_scope' => :'Array', :'hydra_oidc_dynamic_client_registration_enabled' => :'Boolean', :'hydra_oidc_subject_identifiers_pairwise_salt' => :'String', :'hydra_oidc_subject_identifiers_supported_types' => :'Array', :'hydra_secrets_cookie' => :'Array', :'hydra_secrets_system' => :'Array', :'hydra_serve_admin_cors_allowed_origins' => :'Array', :'hydra_serve_admin_cors_enabled' => :'Boolean', :'hydra_serve_cookies_same_site_legacy_workaround' => :'Boolean', :'hydra_serve_cookies_same_site_mode' => :'String', :'hydra_serve_public_cors_allowed_origins' => :'Array', :'hydra_serve_public_cors_enabled' => :'Boolean', :'hydra_strategies_access_token' => :'String', :'hydra_strategies_scope' => :'String', :'hydra_ttl_access_token' => :'String', :'hydra_ttl_auth_code' => :'String', :'hydra_ttl_id_token' => :'String', :'hydra_ttl_login_consent_request' => :'String', :'hydra_ttl_refresh_token' => :'String', :'hydra_urls_consent' => :'String', :'hydra_urls_error' => :'String', :'hydra_urls_login' => :'String', :'hydra_urls_logout' => :'String', :'hydra_urls_post_logout_redirect' => :'String', :'hydra_urls_self_issuer' => :'String', :'hydra_webfinger_jwks_broadcast_keys' => :'Array', :'hydra_webfinger_oidc_discovery_auth_url' => :'String', :'hydra_webfinger_oidc_discovery_client_registration_url' => :'String', :'hydra_webfinger_oidc_discovery_jwks_url' => :'String', :'hydra_webfinger_oidc_discovery_supported_claims' => :'Array', :'hydra_webfinger_oidc_discovery_supported_scope' => :'Array', :'hydra_webfinger_oidc_discovery_token_url' => :'String', :'hydra_webfinger_oidc_discovery_userinfo_url' => :'String', :'id' => :'String', :'keto_namespace_configuration' => :'String', :'keto_namespaces' => :'Array', :'keto_read_max_depth' => :'Integer', :'kratos_cookies_same_site' => :'String', :'kratos_courier_smtp_connection_uri' => :'String', :'kratos_courier_smtp_from_address' => :'String', :'kratos_courier_smtp_from_name' => :'String', :'kratos_courier_smtp_headers' => :'Object', :'kratos_courier_templates_recovery_code_invalid_email_body_html' => :'String', :'kratos_courier_templates_recovery_code_invalid_email_body_plaintext' => :'String', :'kratos_courier_templates_recovery_code_invalid_email_subject' => :'String', :'kratos_courier_templates_recovery_code_valid_email_body_html' => :'String', :'kratos_courier_templates_recovery_code_valid_email_body_plaintext' => :'String', :'kratos_courier_templates_recovery_code_valid_email_subject' => :'String', :'kratos_courier_templates_recovery_invalid_email_body_html' => :'String', :'kratos_courier_templates_recovery_invalid_email_body_plaintext' => :'String', :'kratos_courier_templates_recovery_invalid_email_subject' => :'String', :'kratos_courier_templates_recovery_valid_email_body_html' => :'String', :'kratos_courier_templates_recovery_valid_email_body_plaintext' => :'String', :'kratos_courier_templates_recovery_valid_email_subject' => :'String', :'kratos_courier_templates_verification_code_invalid_email_body_html' => :'String', :'kratos_courier_templates_verification_code_invalid_email_body_plaintext' => :'String', :'kratos_courier_templates_verification_code_invalid_email_subject' => :'String', :'kratos_courier_templates_verification_code_valid_email_body_html' => :'String', :'kratos_courier_templates_verification_code_valid_email_body_plaintext' => :'String', :'kratos_courier_templates_verification_code_valid_email_subject' => :'String', :'kratos_courier_templates_verification_invalid_email_body_html' => :'String', :'kratos_courier_templates_verification_invalid_email_body_plaintext' => :'String', :'kratos_courier_templates_verification_invalid_email_subject' => :'String', :'kratos_courier_templates_verification_valid_email_body_html' => :'String', :'kratos_courier_templates_verification_valid_email_body_plaintext' => :'String', :'kratos_courier_templates_verification_valid_email_subject' => :'String', :'kratos_feature_flags_cacheable_sessions' => :'Boolean', :'kratos_identity_schemas' => :'Array', :'kratos_oauth2_provider_headers' => :'Object', :'kratos_oauth2_provider_url' => :'String', :'kratos_secrets_cipher' => :'Array', :'kratos_secrets_cookie' => :'Array', :'kratos_secrets_default' => :'Array', :'kratos_selfservice_allowed_return_urls' => :'Array', :'kratos_selfservice_default_browser_return_url' => :'String', :'kratos_selfservice_flows_error_ui_url' => :'String', :'kratos_selfservice_flows_hooks' => :'Array', :'kratos_selfservice_flows_login_after_default_browser_return_url' => :'String', :'kratos_selfservice_flows_login_after_oidc_default_browser_return_url' => :'String', :'kratos_selfservice_flows_login_after_password_default_browser_return_url' => :'String', :'kratos_selfservice_flows_login_after_webauthn_default_browser_return_url' => :'String', :'kratos_selfservice_flows_login_lifespan' => :'String', :'kratos_selfservice_flows_login_ui_url' => :'String', :'kratos_selfservice_flows_logout_after_default_browser_return_url' => :'String', :'kratos_selfservice_flows_recovery_after_default_browser_return_url' => :'String', :'kratos_selfservice_flows_recovery_enabled' => :'Boolean', :'kratos_selfservice_flows_recovery_lifespan' => :'String', :'kratos_selfservice_flows_recovery_ui_url' => :'String', :'kratos_selfservice_flows_recovery_use' => :'String', :'kratos_selfservice_flows_registration_after_default_browser_return_url' => :'String', :'kratos_selfservice_flows_registration_after_oidc_default_browser_return_url' => :'String', :'kratos_selfservice_flows_registration_after_password_default_browser_return_url' => :'String', :'kratos_selfservice_flows_registration_after_webauthn_default_browser_return_url' => :'String', :'kratos_selfservice_flows_registration_enabled' => :'Boolean', :'kratos_selfservice_flows_registration_lifespan' => :'String', :'kratos_selfservice_flows_registration_ui_url' => :'String', :'kratos_selfservice_flows_settings_after_default_browser_return_url' => :'String', :'kratos_selfservice_flows_settings_after_password_default_browser_return_url' => :'String', :'kratos_selfservice_flows_settings_after_profile_default_browser_return_url' => :'String', :'kratos_selfservice_flows_settings_lifespan' => :'String', :'kratos_selfservice_flows_settings_privileged_session_max_age' => :'String', :'kratos_selfservice_flows_settings_required_aal' => :'String', :'kratos_selfservice_flows_settings_ui_url' => :'String', :'kratos_selfservice_flows_verification_after_default_browser_return_url' => :'String', :'kratos_selfservice_flows_verification_enabled' => :'Boolean', :'kratos_selfservice_flows_verification_lifespan' => :'String', :'kratos_selfservice_flows_verification_ui_url' => :'String', :'kratos_selfservice_flows_verification_use' => :'String', :'kratos_selfservice_methods_code_config_lifespan' => :'String', :'kratos_selfservice_methods_code_enabled' => :'Boolean', :'kratos_selfservice_methods_link_config_base_url' => :'String', :'kratos_selfservice_methods_link_config_lifespan' => :'String', :'kratos_selfservice_methods_link_enabled' => :'Boolean', :'kratos_selfservice_methods_lookup_secret_enabled' => :'Boolean', :'kratos_selfservice_methods_oidc_config_base_redirect_uri' => :'String', :'kratos_selfservice_methods_oidc_config_providers' => :'Array', :'kratos_selfservice_methods_oidc_enabled' => :'Boolean', :'kratos_selfservice_methods_password_config_haveibeenpwned_enabled' => :'Boolean', :'kratos_selfservice_methods_password_config_identifier_similarity_check_enabled' => :'Boolean', :'kratos_selfservice_methods_password_config_ignore_network_errors' => :'Boolean', :'kratos_selfservice_methods_password_config_max_breaches' => :'Integer', :'kratos_selfservice_methods_password_config_min_password_length' => :'Integer', :'kratos_selfservice_methods_password_enabled' => :'Boolean', :'kratos_selfservice_methods_profile_enabled' => :'Boolean', :'kratos_selfservice_methods_totp_config_issuer' => :'String', :'kratos_selfservice_methods_totp_enabled' => :'Boolean', :'kratos_selfservice_methods_webauthn_config_passwordless' => :'Boolean', :'kratos_selfservice_methods_webauthn_config_rp_display_name' => :'String', :'kratos_selfservice_methods_webauthn_config_rp_icon' => :'String', :'kratos_selfservice_methods_webauthn_config_rp_id' => :'String', :'kratos_selfservice_methods_webauthn_config_rp_origin' => :'String', :'kratos_selfservice_methods_webauthn_enabled' => :'Boolean', :'kratos_session_cookie_persistent' => :'Boolean', :'kratos_session_cookie_same_site' => :'String', :'kratos_session_lifespan' => :'String', :'kratos_session_whoami_required_aal' => :'String', :'name' => :'String', :'production' => :'Boolean', :'project_id' => :'String', :'updated_at' => :'Time' } end # List of attributes with nullable: true def self.openapi_nullable Set.new([ :'keto_read_max_depth', :'kratos_courier_smtp_headers', :'kratos_oauth2_provider_headers', ]) end # Initializes the object # @param [Hash] attributes Model attributes in the form of hash def initialize(attributes = {}) if (!attributes.is_a?(Hash)) fail ArgumentError, "The input argument (attributes) must be a hash in `OryClient::NormalizedProjectRevision` initialize method" end # check to see if the attribute exists and convert string to symbol for hash key attributes = attributes.each_with_object({}) { |(k, v), h| if (!self.class.attribute_map.key?(k.to_sym)) fail ArgumentError, "`#{k}` is not a valid attribute in `OryClient::NormalizedProjectRevision`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect end h[k.to_sym] = v } if attributes.key?(:'created_at') self.created_at = attributes[:'created_at'] end if attributes.key?(:'hydra_oauth2_allowed_top_level_claims') if (value = attributes[:'hydra_oauth2_allowed_top_level_claims']).is_a?(Array) self.hydra_oauth2_allowed_top_level_claims = value end end if attributes.key?(:'hydra_oauth2_client_credentials_default_grant_allowed_scope') self.hydra_oauth2_client_credentials_default_grant_allowed_scope = attributes[:'hydra_oauth2_client_credentials_default_grant_allowed_scope'] end if attributes.key?(:'hydra_oauth2_exclude_not_before_claim') self.hydra_oauth2_exclude_not_before_claim = attributes[:'hydra_oauth2_exclude_not_before_claim'] end if attributes.key?(:'hydra_oauth2_grant_jwt_iat_optional') self.hydra_oauth2_grant_jwt_iat_optional = attributes[:'hydra_oauth2_grant_jwt_iat_optional'] end if attributes.key?(:'hydra_oauth2_grant_jwt_jti_optional') self.hydra_oauth2_grant_jwt_jti_optional = attributes[:'hydra_oauth2_grant_jwt_jti_optional'] end if attributes.key?(:'hydra_oauth2_grant_jwt_max_ttl') self.hydra_oauth2_grant_jwt_max_ttl = attributes[:'hydra_oauth2_grant_jwt_max_ttl'] else self.hydra_oauth2_grant_jwt_max_ttl = '720h' end if attributes.key?(:'hydra_oauth2_pkce_enforced') self.hydra_oauth2_pkce_enforced = attributes[:'hydra_oauth2_pkce_enforced'] end if attributes.key?(:'hydra_oauth2_pkce_enforced_for_public_clients') self.hydra_oauth2_pkce_enforced_for_public_clients = attributes[:'hydra_oauth2_pkce_enforced_for_public_clients'] end if attributes.key?(:'hydra_oauth2_refresh_token_hook') self.hydra_oauth2_refresh_token_hook = attributes[:'hydra_oauth2_refresh_token_hook'] end if attributes.key?(:'hydra_oidc_dynamic_client_registration_default_scope') if (value = attributes[:'hydra_oidc_dynamic_client_registration_default_scope']).is_a?(Array) self.hydra_oidc_dynamic_client_registration_default_scope = value end end if attributes.key?(:'hydra_oidc_dynamic_client_registration_enabled') self.hydra_oidc_dynamic_client_registration_enabled = attributes[:'hydra_oidc_dynamic_client_registration_enabled'] end if attributes.key?(:'hydra_oidc_subject_identifiers_pairwise_salt') self.hydra_oidc_subject_identifiers_pairwise_salt = attributes[:'hydra_oidc_subject_identifiers_pairwise_salt'] end if attributes.key?(:'hydra_oidc_subject_identifiers_supported_types') if (value = attributes[:'hydra_oidc_subject_identifiers_supported_types']).is_a?(Array) self.hydra_oidc_subject_identifiers_supported_types = value end end if attributes.key?(:'hydra_secrets_cookie') if (value = attributes[:'hydra_secrets_cookie']).is_a?(Array) self.hydra_secrets_cookie = value end end if attributes.key?(:'hydra_secrets_system') if (value = attributes[:'hydra_secrets_system']).is_a?(Array) self.hydra_secrets_system = value end end if attributes.key?(:'hydra_serve_admin_cors_allowed_origins') if (value = attributes[:'hydra_serve_admin_cors_allowed_origins']).is_a?(Array) self.hydra_serve_admin_cors_allowed_origins = value end end if attributes.key?(:'hydra_serve_admin_cors_enabled') self.hydra_serve_admin_cors_enabled = attributes[:'hydra_serve_admin_cors_enabled'] end if attributes.key?(:'hydra_serve_cookies_same_site_legacy_workaround') self.hydra_serve_cookies_same_site_legacy_workaround = attributes[:'hydra_serve_cookies_same_site_legacy_workaround'] end if attributes.key?(:'hydra_serve_cookies_same_site_mode') self.hydra_serve_cookies_same_site_mode = attributes[:'hydra_serve_cookies_same_site_mode'] end if attributes.key?(:'hydra_serve_public_cors_allowed_origins') if (value = attributes[:'hydra_serve_public_cors_allowed_origins']).is_a?(Array) self.hydra_serve_public_cors_allowed_origins = value end end if attributes.key?(:'hydra_serve_public_cors_enabled') self.hydra_serve_public_cors_enabled = attributes[:'hydra_serve_public_cors_enabled'] end if attributes.key?(:'hydra_strategies_access_token') self.hydra_strategies_access_token = attributes[:'hydra_strategies_access_token'] else self.hydra_strategies_access_token = 'opaque' end if attributes.key?(:'hydra_strategies_scope') self.hydra_strategies_scope = attributes[:'hydra_strategies_scope'] else self.hydra_strategies_scope = 'wildcard' end if attributes.key?(:'hydra_ttl_access_token') self.hydra_ttl_access_token = attributes[:'hydra_ttl_access_token'] else self.hydra_ttl_access_token = '30m' end if attributes.key?(:'hydra_ttl_auth_code') self.hydra_ttl_auth_code = attributes[:'hydra_ttl_auth_code'] else self.hydra_ttl_auth_code = '720h' end if attributes.key?(:'hydra_ttl_id_token') self.hydra_ttl_id_token = attributes[:'hydra_ttl_id_token'] else self.hydra_ttl_id_token = '30m' end if attributes.key?(:'hydra_ttl_login_consent_request') self.hydra_ttl_login_consent_request = attributes[:'hydra_ttl_login_consent_request'] else self.hydra_ttl_login_consent_request = '30m' end if attributes.key?(:'hydra_ttl_refresh_token') self.hydra_ttl_refresh_token = attributes[:'hydra_ttl_refresh_token'] else self.hydra_ttl_refresh_token = '720h' end if attributes.key?(:'hydra_urls_consent') self.hydra_urls_consent = attributes[:'hydra_urls_consent'] end if attributes.key?(:'hydra_urls_error') self.hydra_urls_error = attributes[:'hydra_urls_error'] end if attributes.key?(:'hydra_urls_login') self.hydra_urls_login = attributes[:'hydra_urls_login'] end if attributes.key?(:'hydra_urls_logout') self.hydra_urls_logout = attributes[:'hydra_urls_logout'] end if attributes.key?(:'hydra_urls_post_logout_redirect') self.hydra_urls_post_logout_redirect = attributes[:'hydra_urls_post_logout_redirect'] end if attributes.key?(:'hydra_urls_self_issuer') self.hydra_urls_self_issuer = attributes[:'hydra_urls_self_issuer'] end if attributes.key?(:'hydra_webfinger_jwks_broadcast_keys') if (value = attributes[:'hydra_webfinger_jwks_broadcast_keys']).is_a?(Array) self.hydra_webfinger_jwks_broadcast_keys = value end end if attributes.key?(:'hydra_webfinger_oidc_discovery_auth_url') self.hydra_webfinger_oidc_discovery_auth_url = attributes[:'hydra_webfinger_oidc_discovery_auth_url'] end if attributes.key?(:'hydra_webfinger_oidc_discovery_client_registration_url') self.hydra_webfinger_oidc_discovery_client_registration_url = attributes[:'hydra_webfinger_oidc_discovery_client_registration_url'] end if attributes.key?(:'hydra_webfinger_oidc_discovery_jwks_url') self.hydra_webfinger_oidc_discovery_jwks_url = attributes[:'hydra_webfinger_oidc_discovery_jwks_url'] end if attributes.key?(:'hydra_webfinger_oidc_discovery_supported_claims') if (value = attributes[:'hydra_webfinger_oidc_discovery_supported_claims']).is_a?(Array) self.hydra_webfinger_oidc_discovery_supported_claims = value end end if attributes.key?(:'hydra_webfinger_oidc_discovery_supported_scope') if (value = attributes[:'hydra_webfinger_oidc_discovery_supported_scope']).is_a?(Array) self.hydra_webfinger_oidc_discovery_supported_scope = value end end if attributes.key?(:'hydra_webfinger_oidc_discovery_token_url') self.hydra_webfinger_oidc_discovery_token_url = attributes[:'hydra_webfinger_oidc_discovery_token_url'] end if attributes.key?(:'hydra_webfinger_oidc_discovery_userinfo_url') self.hydra_webfinger_oidc_discovery_userinfo_url = attributes[:'hydra_webfinger_oidc_discovery_userinfo_url'] end if attributes.key?(:'id') self.id = attributes[:'id'] end if attributes.key?(:'keto_namespace_configuration') self.keto_namespace_configuration = attributes[:'keto_namespace_configuration'] end if attributes.key?(:'keto_namespaces') if (value = attributes[:'keto_namespaces']).is_a?(Array) self.keto_namespaces = value end end if attributes.key?(:'keto_read_max_depth') self.keto_read_max_depth = attributes[:'keto_read_max_depth'] end if attributes.key?(:'kratos_cookies_same_site') self.kratos_cookies_same_site = attributes[:'kratos_cookies_same_site'] end if attributes.key?(:'kratos_courier_smtp_connection_uri') self.kratos_courier_smtp_connection_uri = attributes[:'kratos_courier_smtp_connection_uri'] end if attributes.key?(:'kratos_courier_smtp_from_address') self.kratos_courier_smtp_from_address = attributes[:'kratos_courier_smtp_from_address'] end if attributes.key?(:'kratos_courier_smtp_from_name') self.kratos_courier_smtp_from_name = attributes[:'kratos_courier_smtp_from_name'] end if attributes.key?(:'kratos_courier_smtp_headers') self.kratos_courier_smtp_headers = attributes[:'kratos_courier_smtp_headers'] end if attributes.key?(:'kratos_courier_templates_recovery_code_invalid_email_body_html') self.kratos_courier_templates_recovery_code_invalid_email_body_html = attributes[:'kratos_courier_templates_recovery_code_invalid_email_body_html'] end if attributes.key?(:'kratos_courier_templates_recovery_code_invalid_email_body_plaintext') self.kratos_courier_templates_recovery_code_invalid_email_body_plaintext = attributes[:'kratos_courier_templates_recovery_code_invalid_email_body_plaintext'] end if attributes.key?(:'kratos_courier_templates_recovery_code_invalid_email_subject') self.kratos_courier_templates_recovery_code_invalid_email_subject = attributes[:'kratos_courier_templates_recovery_code_invalid_email_subject'] end if attributes.key?(:'kratos_courier_templates_recovery_code_valid_email_body_html') self.kratos_courier_templates_recovery_code_valid_email_body_html = attributes[:'kratos_courier_templates_recovery_code_valid_email_body_html'] end if attributes.key?(:'kratos_courier_templates_recovery_code_valid_email_body_plaintext') self.kratos_courier_templates_recovery_code_valid_email_body_plaintext = attributes[:'kratos_courier_templates_recovery_code_valid_email_body_plaintext'] end if attributes.key?(:'kratos_courier_templates_recovery_code_valid_email_subject') self.kratos_courier_templates_recovery_code_valid_email_subject = attributes[:'kratos_courier_templates_recovery_code_valid_email_subject'] end if attributes.key?(:'kratos_courier_templates_recovery_invalid_email_body_html') self.kratos_courier_templates_recovery_invalid_email_body_html = attributes[:'kratos_courier_templates_recovery_invalid_email_body_html'] end if attributes.key?(:'kratos_courier_templates_recovery_invalid_email_body_plaintext') self.kratos_courier_templates_recovery_invalid_email_body_plaintext = attributes[:'kratos_courier_templates_recovery_invalid_email_body_plaintext'] end if attributes.key?(:'kratos_courier_templates_recovery_invalid_email_subject') self.kratos_courier_templates_recovery_invalid_email_subject = attributes[:'kratos_courier_templates_recovery_invalid_email_subject'] end if attributes.key?(:'kratos_courier_templates_recovery_valid_email_body_html') self.kratos_courier_templates_recovery_valid_email_body_html = attributes[:'kratos_courier_templates_recovery_valid_email_body_html'] end if attributes.key?(:'kratos_courier_templates_recovery_valid_email_body_plaintext') self.kratos_courier_templates_recovery_valid_email_body_plaintext = attributes[:'kratos_courier_templates_recovery_valid_email_body_plaintext'] end if attributes.key?(:'kratos_courier_templates_recovery_valid_email_subject') self.kratos_courier_templates_recovery_valid_email_subject = attributes[:'kratos_courier_templates_recovery_valid_email_subject'] end if attributes.key?(:'kratos_courier_templates_verification_code_invalid_email_body_html') self.kratos_courier_templates_verification_code_invalid_email_body_html = attributes[:'kratos_courier_templates_verification_code_invalid_email_body_html'] end if attributes.key?(:'kratos_courier_templates_verification_code_invalid_email_body_plaintext') self.kratos_courier_templates_verification_code_invalid_email_body_plaintext = attributes[:'kratos_courier_templates_verification_code_invalid_email_body_plaintext'] end if attributes.key?(:'kratos_courier_templates_verification_code_invalid_email_subject') self.kratos_courier_templates_verification_code_invalid_email_subject = attributes[:'kratos_courier_templates_verification_code_invalid_email_subject'] end if attributes.key?(:'kratos_courier_templates_verification_code_valid_email_body_html') self.kratos_courier_templates_verification_code_valid_email_body_html = attributes[:'kratos_courier_templates_verification_code_valid_email_body_html'] end if attributes.key?(:'kratos_courier_templates_verification_code_valid_email_body_plaintext') self.kratos_courier_templates_verification_code_valid_email_body_plaintext = attributes[:'kratos_courier_templates_verification_code_valid_email_body_plaintext'] end if attributes.key?(:'kratos_courier_templates_verification_code_valid_email_subject') self.kratos_courier_templates_verification_code_valid_email_subject = attributes[:'kratos_courier_templates_verification_code_valid_email_subject'] end if attributes.key?(:'kratos_courier_templates_verification_invalid_email_body_html') self.kratos_courier_templates_verification_invalid_email_body_html = attributes[:'kratos_courier_templates_verification_invalid_email_body_html'] end if attributes.key?(:'kratos_courier_templates_verification_invalid_email_body_plaintext') self.kratos_courier_templates_verification_invalid_email_body_plaintext = attributes[:'kratos_courier_templates_verification_invalid_email_body_plaintext'] end if attributes.key?(:'kratos_courier_templates_verification_invalid_email_subject') self.kratos_courier_templates_verification_invalid_email_subject = attributes[:'kratos_courier_templates_verification_invalid_email_subject'] end if attributes.key?(:'kratos_courier_templates_verification_valid_email_body_html') self.kratos_courier_templates_verification_valid_email_body_html = attributes[:'kratos_courier_templates_verification_valid_email_body_html'] end if attributes.key?(:'kratos_courier_templates_verification_valid_email_body_plaintext') self.kratos_courier_templates_verification_valid_email_body_plaintext = attributes[:'kratos_courier_templates_verification_valid_email_body_plaintext'] end if attributes.key?(:'kratos_courier_templates_verification_valid_email_subject') self.kratos_courier_templates_verification_valid_email_subject = attributes[:'kratos_courier_templates_verification_valid_email_subject'] end if attributes.key?(:'kratos_feature_flags_cacheable_sessions') self.kratos_feature_flags_cacheable_sessions = attributes[:'kratos_feature_flags_cacheable_sessions'] end if attributes.key?(:'kratos_identity_schemas') if (value = attributes[:'kratos_identity_schemas']).is_a?(Array) self.kratos_identity_schemas = value end end if attributes.key?(:'kratos_oauth2_provider_headers') self.kratos_oauth2_provider_headers = attributes[:'kratos_oauth2_provider_headers'] end if attributes.key?(:'kratos_oauth2_provider_url') self.kratos_oauth2_provider_url = attributes[:'kratos_oauth2_provider_url'] end if attributes.key?(:'kratos_secrets_cipher') if (value = attributes[:'kratos_secrets_cipher']).is_a?(Array) self.kratos_secrets_cipher = value end end if attributes.key?(:'kratos_secrets_cookie') if (value = attributes[:'kratos_secrets_cookie']).is_a?(Array) self.kratos_secrets_cookie = value end end if attributes.key?(:'kratos_secrets_default') if (value = attributes[:'kratos_secrets_default']).is_a?(Array) self.kratos_secrets_default = value end end if attributes.key?(:'kratos_selfservice_allowed_return_urls') if (value = attributes[:'kratos_selfservice_allowed_return_urls']).is_a?(Array) self.kratos_selfservice_allowed_return_urls = value end end if attributes.key?(:'kratos_selfservice_default_browser_return_url') self.kratos_selfservice_default_browser_return_url = attributes[:'kratos_selfservice_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_error_ui_url') self.kratos_selfservice_flows_error_ui_url = attributes[:'kratos_selfservice_flows_error_ui_url'] end if attributes.key?(:'kratos_selfservice_flows_hooks') if (value = attributes[:'kratos_selfservice_flows_hooks']).is_a?(Array) self.kratos_selfservice_flows_hooks = value end end if attributes.key?(:'kratos_selfservice_flows_login_after_default_browser_return_url') self.kratos_selfservice_flows_login_after_default_browser_return_url = attributes[:'kratos_selfservice_flows_login_after_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_login_after_oidc_default_browser_return_url') self.kratos_selfservice_flows_login_after_oidc_default_browser_return_url = attributes[:'kratos_selfservice_flows_login_after_oidc_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_login_after_password_default_browser_return_url') self.kratos_selfservice_flows_login_after_password_default_browser_return_url = attributes[:'kratos_selfservice_flows_login_after_password_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_login_after_webauthn_default_browser_return_url') self.kratos_selfservice_flows_login_after_webauthn_default_browser_return_url = attributes[:'kratos_selfservice_flows_login_after_webauthn_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_login_lifespan') self.kratos_selfservice_flows_login_lifespan = attributes[:'kratos_selfservice_flows_login_lifespan'] end if attributes.key?(:'kratos_selfservice_flows_login_ui_url') self.kratos_selfservice_flows_login_ui_url = attributes[:'kratos_selfservice_flows_login_ui_url'] end if attributes.key?(:'kratos_selfservice_flows_logout_after_default_browser_return_url') self.kratos_selfservice_flows_logout_after_default_browser_return_url = attributes[:'kratos_selfservice_flows_logout_after_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_recovery_after_default_browser_return_url') self.kratos_selfservice_flows_recovery_after_default_browser_return_url = attributes[:'kratos_selfservice_flows_recovery_after_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_recovery_enabled') self.kratos_selfservice_flows_recovery_enabled = attributes[:'kratos_selfservice_flows_recovery_enabled'] end if attributes.key?(:'kratos_selfservice_flows_recovery_lifespan') self.kratos_selfservice_flows_recovery_lifespan = attributes[:'kratos_selfservice_flows_recovery_lifespan'] end if attributes.key?(:'kratos_selfservice_flows_recovery_ui_url') self.kratos_selfservice_flows_recovery_ui_url = attributes[:'kratos_selfservice_flows_recovery_ui_url'] end if attributes.key?(:'kratos_selfservice_flows_recovery_use') self.kratos_selfservice_flows_recovery_use = attributes[:'kratos_selfservice_flows_recovery_use'] end if attributes.key?(:'kratos_selfservice_flows_registration_after_default_browser_return_url') self.kratos_selfservice_flows_registration_after_default_browser_return_url = attributes[:'kratos_selfservice_flows_registration_after_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_registration_after_oidc_default_browser_return_url') self.kratos_selfservice_flows_registration_after_oidc_default_browser_return_url = attributes[:'kratos_selfservice_flows_registration_after_oidc_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_registration_after_password_default_browser_return_url') self.kratos_selfservice_flows_registration_after_password_default_browser_return_url = attributes[:'kratos_selfservice_flows_registration_after_password_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_registration_after_webauthn_default_browser_return_url') self.kratos_selfservice_flows_registration_after_webauthn_default_browser_return_url = attributes[:'kratos_selfservice_flows_registration_after_webauthn_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_registration_enabled') self.kratos_selfservice_flows_registration_enabled = attributes[:'kratos_selfservice_flows_registration_enabled'] end if attributes.key?(:'kratos_selfservice_flows_registration_lifespan') self.kratos_selfservice_flows_registration_lifespan = attributes[:'kratos_selfservice_flows_registration_lifespan'] end if attributes.key?(:'kratos_selfservice_flows_registration_ui_url') self.kratos_selfservice_flows_registration_ui_url = attributes[:'kratos_selfservice_flows_registration_ui_url'] end if attributes.key?(:'kratos_selfservice_flows_settings_after_default_browser_return_url') self.kratos_selfservice_flows_settings_after_default_browser_return_url = attributes[:'kratos_selfservice_flows_settings_after_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_settings_after_password_default_browser_return_url') self.kratos_selfservice_flows_settings_after_password_default_browser_return_url = attributes[:'kratos_selfservice_flows_settings_after_password_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_settings_after_profile_default_browser_return_url') self.kratos_selfservice_flows_settings_after_profile_default_browser_return_url = attributes[:'kratos_selfservice_flows_settings_after_profile_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_settings_lifespan') self.kratos_selfservice_flows_settings_lifespan = attributes[:'kratos_selfservice_flows_settings_lifespan'] end if attributes.key?(:'kratos_selfservice_flows_settings_privileged_session_max_age') self.kratos_selfservice_flows_settings_privileged_session_max_age = attributes[:'kratos_selfservice_flows_settings_privileged_session_max_age'] end if attributes.key?(:'kratos_selfservice_flows_settings_required_aal') self.kratos_selfservice_flows_settings_required_aal = attributes[:'kratos_selfservice_flows_settings_required_aal'] end if attributes.key?(:'kratos_selfservice_flows_settings_ui_url') self.kratos_selfservice_flows_settings_ui_url = attributes[:'kratos_selfservice_flows_settings_ui_url'] end if attributes.key?(:'kratos_selfservice_flows_verification_after_default_browser_return_url') self.kratos_selfservice_flows_verification_after_default_browser_return_url = attributes[:'kratos_selfservice_flows_verification_after_default_browser_return_url'] end if attributes.key?(:'kratos_selfservice_flows_verification_enabled') self.kratos_selfservice_flows_verification_enabled = attributes[:'kratos_selfservice_flows_verification_enabled'] end if attributes.key?(:'kratos_selfservice_flows_verification_lifespan') self.kratos_selfservice_flows_verification_lifespan = attributes[:'kratos_selfservice_flows_verification_lifespan'] end if attributes.key?(:'kratos_selfservice_flows_verification_ui_url') self.kratos_selfservice_flows_verification_ui_url = attributes[:'kratos_selfservice_flows_verification_ui_url'] end if attributes.key?(:'kratos_selfservice_flows_verification_use') self.kratos_selfservice_flows_verification_use = attributes[:'kratos_selfservice_flows_verification_use'] end if attributes.key?(:'kratos_selfservice_methods_code_config_lifespan') self.kratos_selfservice_methods_code_config_lifespan = attributes[:'kratos_selfservice_methods_code_config_lifespan'] end if attributes.key?(:'kratos_selfservice_methods_code_enabled') self.kratos_selfservice_methods_code_enabled = attributes[:'kratos_selfservice_methods_code_enabled'] end if attributes.key?(:'kratos_selfservice_methods_link_config_base_url') self.kratos_selfservice_methods_link_config_base_url = attributes[:'kratos_selfservice_methods_link_config_base_url'] end if attributes.key?(:'kratos_selfservice_methods_link_config_lifespan') self.kratos_selfservice_methods_link_config_lifespan = attributes[:'kratos_selfservice_methods_link_config_lifespan'] end if attributes.key?(:'kratos_selfservice_methods_link_enabled') self.kratos_selfservice_methods_link_enabled = attributes[:'kratos_selfservice_methods_link_enabled'] end if attributes.key?(:'kratos_selfservice_methods_lookup_secret_enabled') self.kratos_selfservice_methods_lookup_secret_enabled = attributes[:'kratos_selfservice_methods_lookup_secret_enabled'] end if attributes.key?(:'kratos_selfservice_methods_oidc_config_base_redirect_uri') self.kratos_selfservice_methods_oidc_config_base_redirect_uri = attributes[:'kratos_selfservice_methods_oidc_config_base_redirect_uri'] end if attributes.key?(:'kratos_selfservice_methods_oidc_config_providers') if (value = attributes[:'kratos_selfservice_methods_oidc_config_providers']).is_a?(Array) self.kratos_selfservice_methods_oidc_config_providers = value end end if attributes.key?(:'kratos_selfservice_methods_oidc_enabled') self.kratos_selfservice_methods_oidc_enabled = attributes[:'kratos_selfservice_methods_oidc_enabled'] end if attributes.key?(:'kratos_selfservice_methods_password_config_haveibeenpwned_enabled') self.kratos_selfservice_methods_password_config_haveibeenpwned_enabled = attributes[:'kratos_selfservice_methods_password_config_haveibeenpwned_enabled'] end if attributes.key?(:'kratos_selfservice_methods_password_config_identifier_similarity_check_enabled') self.kratos_selfservice_methods_password_config_identifier_similarity_check_enabled = attributes[:'kratos_selfservice_methods_password_config_identifier_similarity_check_enabled'] end if attributes.key?(:'kratos_selfservice_methods_password_config_ignore_network_errors') self.kratos_selfservice_methods_password_config_ignore_network_errors = attributes[:'kratos_selfservice_methods_password_config_ignore_network_errors'] end if attributes.key?(:'kratos_selfservice_methods_password_config_max_breaches') self.kratos_selfservice_methods_password_config_max_breaches = attributes[:'kratos_selfservice_methods_password_config_max_breaches'] end if attributes.key?(:'kratos_selfservice_methods_password_config_min_password_length') self.kratos_selfservice_methods_password_config_min_password_length = attributes[:'kratos_selfservice_methods_password_config_min_password_length'] end if attributes.key?(:'kratos_selfservice_methods_password_enabled') self.kratos_selfservice_methods_password_enabled = attributes[:'kratos_selfservice_methods_password_enabled'] end if attributes.key?(:'kratos_selfservice_methods_profile_enabled') self.kratos_selfservice_methods_profile_enabled = attributes[:'kratos_selfservice_methods_profile_enabled'] end if attributes.key?(:'kratos_selfservice_methods_totp_config_issuer') self.kratos_selfservice_methods_totp_config_issuer = attributes[:'kratos_selfservice_methods_totp_config_issuer'] end if attributes.key?(:'kratos_selfservice_methods_totp_enabled') self.kratos_selfservice_methods_totp_enabled = attributes[:'kratos_selfservice_methods_totp_enabled'] end if attributes.key?(:'kratos_selfservice_methods_webauthn_config_passwordless') self.kratos_selfservice_methods_webauthn_config_passwordless = attributes[:'kratos_selfservice_methods_webauthn_config_passwordless'] end if attributes.key?(:'kratos_selfservice_methods_webauthn_config_rp_display_name') self.kratos_selfservice_methods_webauthn_config_rp_display_name = attributes[:'kratos_selfservice_methods_webauthn_config_rp_display_name'] end if attributes.key?(:'kratos_selfservice_methods_webauthn_config_rp_icon') self.kratos_selfservice_methods_webauthn_config_rp_icon = attributes[:'kratos_selfservice_methods_webauthn_config_rp_icon'] end if attributes.key?(:'kratos_selfservice_methods_webauthn_config_rp_id') self.kratos_selfservice_methods_webauthn_config_rp_id = attributes[:'kratos_selfservice_methods_webauthn_config_rp_id'] end if attributes.key?(:'kratos_selfservice_methods_webauthn_config_rp_origin') self.kratos_selfservice_methods_webauthn_config_rp_origin = attributes[:'kratos_selfservice_methods_webauthn_config_rp_origin'] end if attributes.key?(:'kratos_selfservice_methods_webauthn_enabled') self.kratos_selfservice_methods_webauthn_enabled = attributes[:'kratos_selfservice_methods_webauthn_enabled'] end if attributes.key?(:'kratos_session_cookie_persistent') self.kratos_session_cookie_persistent = attributes[:'kratos_session_cookie_persistent'] end if attributes.key?(:'kratos_session_cookie_same_site') self.kratos_session_cookie_same_site = attributes[:'kratos_session_cookie_same_site'] end if attributes.key?(:'kratos_session_lifespan') self.kratos_session_lifespan = attributes[:'kratos_session_lifespan'] end if attributes.key?(:'kratos_session_whoami_required_aal') self.kratos_session_whoami_required_aal = attributes[:'kratos_session_whoami_required_aal'] end if attributes.key?(:'name') self.name = attributes[:'name'] end if attributes.key?(:'production') self.production = attributes[:'production'] end if attributes.key?(:'project_id') self.project_id = attributes[:'project_id'] end if attributes.key?(:'updated_at') self.updated_at = attributes[:'updated_at'] end end # Show invalid properties with the reasons. Usually used together with valid? # @return Array for valid properties with the reasons def list_invalid_properties invalid_properties = Array.new pattern = Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) if !@hydra_oauth2_grant_jwt_max_ttl.nil? && @hydra_oauth2_grant_jwt_max_ttl !~ pattern invalid_properties.push("invalid value for \"hydra_oauth2_grant_jwt_max_ttl\", must conform to the pattern #{pattern}.") end pattern = Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) if !@hydra_ttl_access_token.nil? && @hydra_ttl_access_token !~ pattern invalid_properties.push("invalid value for \"hydra_ttl_access_token\", must conform to the pattern #{pattern}.") end pattern = Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) if !@hydra_ttl_auth_code.nil? && @hydra_ttl_auth_code !~ pattern invalid_properties.push("invalid value for \"hydra_ttl_auth_code\", must conform to the pattern #{pattern}.") end pattern = Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) if !@hydra_ttl_id_token.nil? && @hydra_ttl_id_token !~ pattern invalid_properties.push("invalid value for \"hydra_ttl_id_token\", must conform to the pattern #{pattern}.") end pattern = Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) if !@hydra_ttl_login_consent_request.nil? && @hydra_ttl_login_consent_request !~ pattern invalid_properties.push("invalid value for \"hydra_ttl_login_consent_request\", must conform to the pattern #{pattern}.") end pattern = Regexp.new(/^([0-9]+(ns|us|ms|s|m|h)|-1)$/) if !@hydra_ttl_refresh_token.nil? && @hydra_ttl_refresh_token !~ pattern invalid_properties.push("invalid value for \"hydra_ttl_refresh_token\", must conform to the pattern #{pattern}.") end if @name.nil? invalid_properties.push('invalid value for "name", name cannot be nil.') end invalid_properties end # Check to see if the all the properties in the model are valid # @return true if the model is valid def valid? return false if !@hydra_oauth2_grant_jwt_max_ttl.nil? && @hydra_oauth2_grant_jwt_max_ttl !~ Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) hydra_strategies_access_token_validator = EnumAttributeValidator.new('String', ["opaque", "jwt"]) return false unless hydra_strategies_access_token_validator.valid?(@hydra_strategies_access_token) hydra_strategies_scope_validator = EnumAttributeValidator.new('String', ["exact", "wildcard"]) return false unless hydra_strategies_scope_validator.valid?(@hydra_strategies_scope) return false if !@hydra_ttl_access_token.nil? && @hydra_ttl_access_token !~ Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) return false if !@hydra_ttl_auth_code.nil? && @hydra_ttl_auth_code !~ Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) return false if !@hydra_ttl_id_token.nil? && @hydra_ttl_id_token !~ Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) return false if !@hydra_ttl_login_consent_request.nil? && @hydra_ttl_login_consent_request !~ Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) return false if !@hydra_ttl_refresh_token.nil? && @hydra_ttl_refresh_token !~ Regexp.new(/^([0-9]+(ns|us|ms|s|m|h)|-1)$/) kratos_selfservice_flows_recovery_use_validator = EnumAttributeValidator.new('String', ["link", "code"]) return false unless kratos_selfservice_flows_recovery_use_validator.valid?(@kratos_selfservice_flows_recovery_use) kratos_selfservice_flows_verification_use_validator = EnumAttributeValidator.new('String', ["link", "code"]) return false unless kratos_selfservice_flows_verification_use_validator.valid?(@kratos_selfservice_flows_verification_use) return false if @name.nil? true end # Custom attribute writer method with validation # @param [Object] hydra_oauth2_grant_jwt_max_ttl Value to be assigned def hydra_oauth2_grant_jwt_max_ttl=(hydra_oauth2_grant_jwt_max_ttl) pattern = Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) if !hydra_oauth2_grant_jwt_max_ttl.nil? && hydra_oauth2_grant_jwt_max_ttl !~ pattern fail ArgumentError, "invalid value for \"hydra_oauth2_grant_jwt_max_ttl\", must conform to the pattern #{pattern}." end @hydra_oauth2_grant_jwt_max_ttl = hydra_oauth2_grant_jwt_max_ttl end # Custom attribute writer method checking allowed values (enum). # @param [Object] hydra_strategies_access_token Object to be assigned def hydra_strategies_access_token=(hydra_strategies_access_token) validator = EnumAttributeValidator.new('String', ["opaque", "jwt"]) unless validator.valid?(hydra_strategies_access_token) fail ArgumentError, "invalid value for \"hydra_strategies_access_token\", must be one of #{validator.allowable_values}." end @hydra_strategies_access_token = hydra_strategies_access_token end # Custom attribute writer method checking allowed values (enum). # @param [Object] hydra_strategies_scope Object to be assigned def hydra_strategies_scope=(hydra_strategies_scope) validator = EnumAttributeValidator.new('String', ["exact", "wildcard"]) unless validator.valid?(hydra_strategies_scope) fail ArgumentError, "invalid value for \"hydra_strategies_scope\", must be one of #{validator.allowable_values}." end @hydra_strategies_scope = hydra_strategies_scope end # Custom attribute writer method with validation # @param [Object] hydra_ttl_access_token Value to be assigned def hydra_ttl_access_token=(hydra_ttl_access_token) pattern = Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) if !hydra_ttl_access_token.nil? && hydra_ttl_access_token !~ pattern fail ArgumentError, "invalid value for \"hydra_ttl_access_token\", must conform to the pattern #{pattern}." end @hydra_ttl_access_token = hydra_ttl_access_token end # Custom attribute writer method with validation # @param [Object] hydra_ttl_auth_code Value to be assigned def hydra_ttl_auth_code=(hydra_ttl_auth_code) pattern = Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) if !hydra_ttl_auth_code.nil? && hydra_ttl_auth_code !~ pattern fail ArgumentError, "invalid value for \"hydra_ttl_auth_code\", must conform to the pattern #{pattern}." end @hydra_ttl_auth_code = hydra_ttl_auth_code end # Custom attribute writer method with validation # @param [Object] hydra_ttl_id_token Value to be assigned def hydra_ttl_id_token=(hydra_ttl_id_token) pattern = Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) if !hydra_ttl_id_token.nil? && hydra_ttl_id_token !~ pattern fail ArgumentError, "invalid value for \"hydra_ttl_id_token\", must conform to the pattern #{pattern}." end @hydra_ttl_id_token = hydra_ttl_id_token end # Custom attribute writer method with validation # @param [Object] hydra_ttl_login_consent_request Value to be assigned def hydra_ttl_login_consent_request=(hydra_ttl_login_consent_request) pattern = Regexp.new(/^[0-9]+(ns|us|ms|s|m|h)$/) if !hydra_ttl_login_consent_request.nil? && hydra_ttl_login_consent_request !~ pattern fail ArgumentError, "invalid value for \"hydra_ttl_login_consent_request\", must conform to the pattern #{pattern}." end @hydra_ttl_login_consent_request = hydra_ttl_login_consent_request end # Custom attribute writer method with validation # @param [Object] hydra_ttl_refresh_token Value to be assigned def hydra_ttl_refresh_token=(hydra_ttl_refresh_token) pattern = Regexp.new(/^([0-9]+(ns|us|ms|s|m|h)|-1)$/) if !hydra_ttl_refresh_token.nil? && hydra_ttl_refresh_token !~ pattern fail ArgumentError, "invalid value for \"hydra_ttl_refresh_token\", must conform to the pattern #{pattern}." end @hydra_ttl_refresh_token = hydra_ttl_refresh_token end # Custom attribute writer method checking allowed values (enum). # @param [Object] kratos_selfservice_flows_recovery_use Object to be assigned def kratos_selfservice_flows_recovery_use=(kratos_selfservice_flows_recovery_use) validator = EnumAttributeValidator.new('String', ["link", "code"]) unless validator.valid?(kratos_selfservice_flows_recovery_use) fail ArgumentError, "invalid value for \"kratos_selfservice_flows_recovery_use\", must be one of #{validator.allowable_values}." end @kratos_selfservice_flows_recovery_use = kratos_selfservice_flows_recovery_use end # Custom attribute writer method checking allowed values (enum). # @param [Object] kratos_selfservice_flows_verification_use Object to be assigned def kratos_selfservice_flows_verification_use=(kratos_selfservice_flows_verification_use) validator = EnumAttributeValidator.new('String', ["link", "code"]) unless validator.valid?(kratos_selfservice_flows_verification_use) fail ArgumentError, "invalid value for \"kratos_selfservice_flows_verification_use\", must be one of #{validator.allowable_values}." end @kratos_selfservice_flows_verification_use = kratos_selfservice_flows_verification_use end # Checks equality by comparing each attribute. # @param [Object] Object to be compared def ==(o) return true if self.equal?(o) self.class == o.class && created_at == o.created_at && hydra_oauth2_allowed_top_level_claims == o.hydra_oauth2_allowed_top_level_claims && hydra_oauth2_client_credentials_default_grant_allowed_scope == o.hydra_oauth2_client_credentials_default_grant_allowed_scope && hydra_oauth2_exclude_not_before_claim == o.hydra_oauth2_exclude_not_before_claim && hydra_oauth2_grant_jwt_iat_optional == o.hydra_oauth2_grant_jwt_iat_optional && hydra_oauth2_grant_jwt_jti_optional == o.hydra_oauth2_grant_jwt_jti_optional && hydra_oauth2_grant_jwt_max_ttl == o.hydra_oauth2_grant_jwt_max_ttl && hydra_oauth2_pkce_enforced == o.hydra_oauth2_pkce_enforced && hydra_oauth2_pkce_enforced_for_public_clients == o.hydra_oauth2_pkce_enforced_for_public_clients && hydra_oauth2_refresh_token_hook == o.hydra_oauth2_refresh_token_hook && hydra_oidc_dynamic_client_registration_default_scope == o.hydra_oidc_dynamic_client_registration_default_scope && hydra_oidc_dynamic_client_registration_enabled == o.hydra_oidc_dynamic_client_registration_enabled && hydra_oidc_subject_identifiers_pairwise_salt == o.hydra_oidc_subject_identifiers_pairwise_salt && hydra_oidc_subject_identifiers_supported_types == o.hydra_oidc_subject_identifiers_supported_types && hydra_secrets_cookie == o.hydra_secrets_cookie && hydra_secrets_system == o.hydra_secrets_system && hydra_serve_admin_cors_allowed_origins == o.hydra_serve_admin_cors_allowed_origins && hydra_serve_admin_cors_enabled == o.hydra_serve_admin_cors_enabled && hydra_serve_cookies_same_site_legacy_workaround == o.hydra_serve_cookies_same_site_legacy_workaround && hydra_serve_cookies_same_site_mode == o.hydra_serve_cookies_same_site_mode && hydra_serve_public_cors_allowed_origins == o.hydra_serve_public_cors_allowed_origins && hydra_serve_public_cors_enabled == o.hydra_serve_public_cors_enabled && hydra_strategies_access_token == o.hydra_strategies_access_token && hydra_strategies_scope == o.hydra_strategies_scope && hydra_ttl_access_token == o.hydra_ttl_access_token && hydra_ttl_auth_code == o.hydra_ttl_auth_code && hydra_ttl_id_token == o.hydra_ttl_id_token && hydra_ttl_login_consent_request == o.hydra_ttl_login_consent_request && hydra_ttl_refresh_token == o.hydra_ttl_refresh_token && hydra_urls_consent == o.hydra_urls_consent && hydra_urls_error == o.hydra_urls_error && hydra_urls_login == o.hydra_urls_login && hydra_urls_logout == o.hydra_urls_logout && hydra_urls_post_logout_redirect == o.hydra_urls_post_logout_redirect && hydra_urls_self_issuer == o.hydra_urls_self_issuer && hydra_webfinger_jwks_broadcast_keys == o.hydra_webfinger_jwks_broadcast_keys && hydra_webfinger_oidc_discovery_auth_url == o.hydra_webfinger_oidc_discovery_auth_url && hydra_webfinger_oidc_discovery_client_registration_url == o.hydra_webfinger_oidc_discovery_client_registration_url && hydra_webfinger_oidc_discovery_jwks_url == o.hydra_webfinger_oidc_discovery_jwks_url && hydra_webfinger_oidc_discovery_supported_claims == o.hydra_webfinger_oidc_discovery_supported_claims && hydra_webfinger_oidc_discovery_supported_scope == o.hydra_webfinger_oidc_discovery_supported_scope && hydra_webfinger_oidc_discovery_token_url == o.hydra_webfinger_oidc_discovery_token_url && hydra_webfinger_oidc_discovery_userinfo_url == o.hydra_webfinger_oidc_discovery_userinfo_url && id == o.id && keto_namespace_configuration == o.keto_namespace_configuration && keto_namespaces == o.keto_namespaces && keto_read_max_depth == o.keto_read_max_depth && kratos_cookies_same_site == o.kratos_cookies_same_site && kratos_courier_smtp_connection_uri == o.kratos_courier_smtp_connection_uri && kratos_courier_smtp_from_address == o.kratos_courier_smtp_from_address && kratos_courier_smtp_from_name == o.kratos_courier_smtp_from_name && kratos_courier_smtp_headers == o.kratos_courier_smtp_headers && kratos_courier_templates_recovery_code_invalid_email_body_html == o.kratos_courier_templates_recovery_code_invalid_email_body_html && kratos_courier_templates_recovery_code_invalid_email_body_plaintext == o.kratos_courier_templates_recovery_code_invalid_email_body_plaintext && kratos_courier_templates_recovery_code_invalid_email_subject == o.kratos_courier_templates_recovery_code_invalid_email_subject && kratos_courier_templates_recovery_code_valid_email_body_html == o.kratos_courier_templates_recovery_code_valid_email_body_html && kratos_courier_templates_recovery_code_valid_email_body_plaintext == o.kratos_courier_templates_recovery_code_valid_email_body_plaintext && kratos_courier_templates_recovery_code_valid_email_subject == o.kratos_courier_templates_recovery_code_valid_email_subject && kratos_courier_templates_recovery_invalid_email_body_html == o.kratos_courier_templates_recovery_invalid_email_body_html && kratos_courier_templates_recovery_invalid_email_body_plaintext == o.kratos_courier_templates_recovery_invalid_email_body_plaintext && kratos_courier_templates_recovery_invalid_email_subject == o.kratos_courier_templates_recovery_invalid_email_subject && kratos_courier_templates_recovery_valid_email_body_html == o.kratos_courier_templates_recovery_valid_email_body_html && kratos_courier_templates_recovery_valid_email_body_plaintext == o.kratos_courier_templates_recovery_valid_email_body_plaintext && kratos_courier_templates_recovery_valid_email_subject == o.kratos_courier_templates_recovery_valid_email_subject && kratos_courier_templates_verification_code_invalid_email_body_html == o.kratos_courier_templates_verification_code_invalid_email_body_html && kratos_courier_templates_verification_code_invalid_email_body_plaintext == o.kratos_courier_templates_verification_code_invalid_email_body_plaintext && kratos_courier_templates_verification_code_invalid_email_subject == o.kratos_courier_templates_verification_code_invalid_email_subject && kratos_courier_templates_verification_code_valid_email_body_html == o.kratos_courier_templates_verification_code_valid_email_body_html && kratos_courier_templates_verification_code_valid_email_body_plaintext == o.kratos_courier_templates_verification_code_valid_email_body_plaintext && kratos_courier_templates_verification_code_valid_email_subject == o.kratos_courier_templates_verification_code_valid_email_subject && kratos_courier_templates_verification_invalid_email_body_html == o.kratos_courier_templates_verification_invalid_email_body_html && kratos_courier_templates_verification_invalid_email_body_plaintext == o.kratos_courier_templates_verification_invalid_email_body_plaintext && kratos_courier_templates_verification_invalid_email_subject == o.kratos_courier_templates_verification_invalid_email_subject && kratos_courier_templates_verification_valid_email_body_html == o.kratos_courier_templates_verification_valid_email_body_html && kratos_courier_templates_verification_valid_email_body_plaintext == o.kratos_courier_templates_verification_valid_email_body_plaintext && kratos_courier_templates_verification_valid_email_subject == o.kratos_courier_templates_verification_valid_email_subject && kratos_feature_flags_cacheable_sessions == o.kratos_feature_flags_cacheable_sessions && kratos_identity_schemas == o.kratos_identity_schemas && kratos_oauth2_provider_headers == o.kratos_oauth2_provider_headers && kratos_oauth2_provider_url == o.kratos_oauth2_provider_url && kratos_secrets_cipher == o.kratos_secrets_cipher && kratos_secrets_cookie == o.kratos_secrets_cookie && kratos_secrets_default == o.kratos_secrets_default && kratos_selfservice_allowed_return_urls == o.kratos_selfservice_allowed_return_urls && kratos_selfservice_default_browser_return_url == o.kratos_selfservice_default_browser_return_url && kratos_selfservice_flows_error_ui_url == o.kratos_selfservice_flows_error_ui_url && kratos_selfservice_flows_hooks == o.kratos_selfservice_flows_hooks && kratos_selfservice_flows_login_after_default_browser_return_url == o.kratos_selfservice_flows_login_after_default_browser_return_url && kratos_selfservice_flows_login_after_oidc_default_browser_return_url == o.kratos_selfservice_flows_login_after_oidc_default_browser_return_url && kratos_selfservice_flows_login_after_password_default_browser_return_url == o.kratos_selfservice_flows_login_after_password_default_browser_return_url && kratos_selfservice_flows_login_after_webauthn_default_browser_return_url == o.kratos_selfservice_flows_login_after_webauthn_default_browser_return_url && kratos_selfservice_flows_login_lifespan == o.kratos_selfservice_flows_login_lifespan && kratos_selfservice_flows_login_ui_url == o.kratos_selfservice_flows_login_ui_url && kratos_selfservice_flows_logout_after_default_browser_return_url == o.kratos_selfservice_flows_logout_after_default_browser_return_url && kratos_selfservice_flows_recovery_after_default_browser_return_url == o.kratos_selfservice_flows_recovery_after_default_browser_return_url && kratos_selfservice_flows_recovery_enabled == o.kratos_selfservice_flows_recovery_enabled && kratos_selfservice_flows_recovery_lifespan == o.kratos_selfservice_flows_recovery_lifespan && kratos_selfservice_flows_recovery_ui_url == o.kratos_selfservice_flows_recovery_ui_url && kratos_selfservice_flows_recovery_use == o.kratos_selfservice_flows_recovery_use && kratos_selfservice_flows_registration_after_default_browser_return_url == o.kratos_selfservice_flows_registration_after_default_browser_return_url && kratos_selfservice_flows_registration_after_oidc_default_browser_return_url == o.kratos_selfservice_flows_registration_after_oidc_default_browser_return_url && kratos_selfservice_flows_registration_after_password_default_browser_return_url == o.kratos_selfservice_flows_registration_after_password_default_browser_return_url && kratos_selfservice_flows_registration_after_webauthn_default_browser_return_url == o.kratos_selfservice_flows_registration_after_webauthn_default_browser_return_url && kratos_selfservice_flows_registration_enabled == o.kratos_selfservice_flows_registration_enabled && kratos_selfservice_flows_registration_lifespan == o.kratos_selfservice_flows_registration_lifespan && kratos_selfservice_flows_registration_ui_url == o.kratos_selfservice_flows_registration_ui_url && kratos_selfservice_flows_settings_after_default_browser_return_url == o.kratos_selfservice_flows_settings_after_default_browser_return_url && kratos_selfservice_flows_settings_after_password_default_browser_return_url == o.kratos_selfservice_flows_settings_after_password_default_browser_return_url && kratos_selfservice_flows_settings_after_profile_default_browser_return_url == o.kratos_selfservice_flows_settings_after_profile_default_browser_return_url && kratos_selfservice_flows_settings_lifespan == o.kratos_selfservice_flows_settings_lifespan && kratos_selfservice_flows_settings_privileged_session_max_age == o.kratos_selfservice_flows_settings_privileged_session_max_age && kratos_selfservice_flows_settings_required_aal == o.kratos_selfservice_flows_settings_required_aal && kratos_selfservice_flows_settings_ui_url == o.kratos_selfservice_flows_settings_ui_url && kratos_selfservice_flows_verification_after_default_browser_return_url == o.kratos_selfservice_flows_verification_after_default_browser_return_url && kratos_selfservice_flows_verification_enabled == o.kratos_selfservice_flows_verification_enabled && kratos_selfservice_flows_verification_lifespan == o.kratos_selfservice_flows_verification_lifespan && kratos_selfservice_flows_verification_ui_url == o.kratos_selfservice_flows_verification_ui_url && kratos_selfservice_flows_verification_use == o.kratos_selfservice_flows_verification_use && kratos_selfservice_methods_code_config_lifespan == o.kratos_selfservice_methods_code_config_lifespan && kratos_selfservice_methods_code_enabled == o.kratos_selfservice_methods_code_enabled && kratos_selfservice_methods_link_config_base_url == o.kratos_selfservice_methods_link_config_base_url && kratos_selfservice_methods_link_config_lifespan == o.kratos_selfservice_methods_link_config_lifespan && kratos_selfservice_methods_link_enabled == o.kratos_selfservice_methods_link_enabled && kratos_selfservice_methods_lookup_secret_enabled == o.kratos_selfservice_methods_lookup_secret_enabled && kratos_selfservice_methods_oidc_config_base_redirect_uri == o.kratos_selfservice_methods_oidc_config_base_redirect_uri && kratos_selfservice_methods_oidc_config_providers == o.kratos_selfservice_methods_oidc_config_providers && kratos_selfservice_methods_oidc_enabled == o.kratos_selfservice_methods_oidc_enabled && kratos_selfservice_methods_password_config_haveibeenpwned_enabled == o.kratos_selfservice_methods_password_config_haveibeenpwned_enabled && kratos_selfservice_methods_password_config_identifier_similarity_check_enabled == o.kratos_selfservice_methods_password_config_identifier_similarity_check_enabled && kratos_selfservice_methods_password_config_ignore_network_errors == o.kratos_selfservice_methods_password_config_ignore_network_errors && kratos_selfservice_methods_password_config_max_breaches == o.kratos_selfservice_methods_password_config_max_breaches && kratos_selfservice_methods_password_config_min_password_length == o.kratos_selfservice_methods_password_config_min_password_length && kratos_selfservice_methods_password_enabled == o.kratos_selfservice_methods_password_enabled && kratos_selfservice_methods_profile_enabled == o.kratos_selfservice_methods_profile_enabled && kratos_selfservice_methods_totp_config_issuer == o.kratos_selfservice_methods_totp_config_issuer && kratos_selfservice_methods_totp_enabled == o.kratos_selfservice_methods_totp_enabled && kratos_selfservice_methods_webauthn_config_passwordless == o.kratos_selfservice_methods_webauthn_config_passwordless && kratos_selfservice_methods_webauthn_config_rp_display_name == o.kratos_selfservice_methods_webauthn_config_rp_display_name && kratos_selfservice_methods_webauthn_config_rp_icon == o.kratos_selfservice_methods_webauthn_config_rp_icon && kratos_selfservice_methods_webauthn_config_rp_id == o.kratos_selfservice_methods_webauthn_config_rp_id && kratos_selfservice_methods_webauthn_config_rp_origin == o.kratos_selfservice_methods_webauthn_config_rp_origin && kratos_selfservice_methods_webauthn_enabled == o.kratos_selfservice_methods_webauthn_enabled && kratos_session_cookie_persistent == o.kratos_session_cookie_persistent && kratos_session_cookie_same_site == o.kratos_session_cookie_same_site && kratos_session_lifespan == o.kratos_session_lifespan && kratos_session_whoami_required_aal == o.kratos_session_whoami_required_aal && name == o.name && production == o.production && project_id == o.project_id && updated_at == o.updated_at end # @see the `==` method # @param [Object] Object to be compared def eql?(o) self == o end # Calculates hash code according to all attributes. # @return [Integer] Hash code def hash [created_at, hydra_oauth2_allowed_top_level_claims, hydra_oauth2_client_credentials_default_grant_allowed_scope, hydra_oauth2_exclude_not_before_claim, hydra_oauth2_grant_jwt_iat_optional, hydra_oauth2_grant_jwt_jti_optional, hydra_oauth2_grant_jwt_max_ttl, hydra_oauth2_pkce_enforced, hydra_oauth2_pkce_enforced_for_public_clients, hydra_oauth2_refresh_token_hook, hydra_oidc_dynamic_client_registration_default_scope, hydra_oidc_dynamic_client_registration_enabled, hydra_oidc_subject_identifiers_pairwise_salt, hydra_oidc_subject_identifiers_supported_types, hydra_secrets_cookie, hydra_secrets_system, hydra_serve_admin_cors_allowed_origins, hydra_serve_admin_cors_enabled, hydra_serve_cookies_same_site_legacy_workaround, hydra_serve_cookies_same_site_mode, hydra_serve_public_cors_allowed_origins, hydra_serve_public_cors_enabled, hydra_strategies_access_token, hydra_strategies_scope, hydra_ttl_access_token, hydra_ttl_auth_code, hydra_ttl_id_token, hydra_ttl_login_consent_request, hydra_ttl_refresh_token, hydra_urls_consent, hydra_urls_error, hydra_urls_login, hydra_urls_logout, hydra_urls_post_logout_redirect, hydra_urls_self_issuer, hydra_webfinger_jwks_broadcast_keys, hydra_webfinger_oidc_discovery_auth_url, hydra_webfinger_oidc_discovery_client_registration_url, hydra_webfinger_oidc_discovery_jwks_url, hydra_webfinger_oidc_discovery_supported_claims, hydra_webfinger_oidc_discovery_supported_scope, hydra_webfinger_oidc_discovery_token_url, hydra_webfinger_oidc_discovery_userinfo_url, id, keto_namespace_configuration, keto_namespaces, keto_read_max_depth, kratos_cookies_same_site, kratos_courier_smtp_connection_uri, kratos_courier_smtp_from_address, kratos_courier_smtp_from_name, kratos_courier_smtp_headers, kratos_courier_templates_recovery_code_invalid_email_body_html, kratos_courier_templates_recovery_code_invalid_email_body_plaintext, kratos_courier_templates_recovery_code_invalid_email_subject, kratos_courier_templates_recovery_code_valid_email_body_html, kratos_courier_templates_recovery_code_valid_email_body_plaintext, kratos_courier_templates_recovery_code_valid_email_subject, kratos_courier_templates_recovery_invalid_email_body_html, kratos_courier_templates_recovery_invalid_email_body_plaintext, kratos_courier_templates_recovery_invalid_email_subject, kratos_courier_templates_recovery_valid_email_body_html, kratos_courier_templates_recovery_valid_email_body_plaintext, kratos_courier_templates_recovery_valid_email_subject, kratos_courier_templates_verification_code_invalid_email_body_html, kratos_courier_templates_verification_code_invalid_email_body_plaintext, kratos_courier_templates_verification_code_invalid_email_subject, kratos_courier_templates_verification_code_valid_email_body_html, kratos_courier_templates_verification_code_valid_email_body_plaintext, kratos_courier_templates_verification_code_valid_email_subject, kratos_courier_templates_verification_invalid_email_body_html, kratos_courier_templates_verification_invalid_email_body_plaintext, kratos_courier_templates_verification_invalid_email_subject, kratos_courier_templates_verification_valid_email_body_html, kratos_courier_templates_verification_valid_email_body_plaintext, kratos_courier_templates_verification_valid_email_subject, kratos_feature_flags_cacheable_sessions, kratos_identity_schemas, kratos_oauth2_provider_headers, kratos_oauth2_provider_url, kratos_secrets_cipher, kratos_secrets_cookie, kratos_secrets_default, kratos_selfservice_allowed_return_urls, kratos_selfservice_default_browser_return_url, kratos_selfservice_flows_error_ui_url, kratos_selfservice_flows_hooks, kratos_selfservice_flows_login_after_default_browser_return_url, kratos_selfservice_flows_login_after_oidc_default_browser_return_url, kratos_selfservice_flows_login_after_password_default_browser_return_url, kratos_selfservice_flows_login_after_webauthn_default_browser_return_url, kratos_selfservice_flows_login_lifespan, kratos_selfservice_flows_login_ui_url, kratos_selfservice_flows_logout_after_default_browser_return_url, kratos_selfservice_flows_recovery_after_default_browser_return_url, kratos_selfservice_flows_recovery_enabled, kratos_selfservice_flows_recovery_lifespan, kratos_selfservice_flows_recovery_ui_url, kratos_selfservice_flows_recovery_use, kratos_selfservice_flows_registration_after_default_browser_return_url, kratos_selfservice_flows_registration_after_oidc_default_browser_return_url, kratos_selfservice_flows_registration_after_password_default_browser_return_url, kratos_selfservice_flows_registration_after_webauthn_default_browser_return_url, kratos_selfservice_flows_registration_enabled, kratos_selfservice_flows_registration_lifespan, kratos_selfservice_flows_registration_ui_url, kratos_selfservice_flows_settings_after_default_browser_return_url, kratos_selfservice_flows_settings_after_password_default_browser_return_url, kratos_selfservice_flows_settings_after_profile_default_browser_return_url, kratos_selfservice_flows_settings_lifespan, kratos_selfservice_flows_settings_privileged_session_max_age, kratos_selfservice_flows_settings_required_aal, kratos_selfservice_flows_settings_ui_url, kratos_selfservice_flows_verification_after_default_browser_return_url, kratos_selfservice_flows_verification_enabled, kratos_selfservice_flows_verification_lifespan, kratos_selfservice_flows_verification_ui_url, kratos_selfservice_flows_verification_use, kratos_selfservice_methods_code_config_lifespan, kratos_selfservice_methods_code_enabled, kratos_selfservice_methods_link_config_base_url, kratos_selfservice_methods_link_config_lifespan, kratos_selfservice_methods_link_enabled, kratos_selfservice_methods_lookup_secret_enabled, kratos_selfservice_methods_oidc_config_base_redirect_uri, kratos_selfservice_methods_oidc_config_providers, kratos_selfservice_methods_oidc_enabled, kratos_selfservice_methods_password_config_haveibeenpwned_enabled, kratos_selfservice_methods_password_config_identifier_similarity_check_enabled, kratos_selfservice_methods_password_config_ignore_network_errors, kratos_selfservice_methods_password_config_max_breaches, kratos_selfservice_methods_password_config_min_password_length, kratos_selfservice_methods_password_enabled, kratos_selfservice_methods_profile_enabled, kratos_selfservice_methods_totp_config_issuer, kratos_selfservice_methods_totp_enabled, kratos_selfservice_methods_webauthn_config_passwordless, kratos_selfservice_methods_webauthn_config_rp_display_name, kratos_selfservice_methods_webauthn_config_rp_icon, kratos_selfservice_methods_webauthn_config_rp_id, kratos_selfservice_methods_webauthn_config_rp_origin, kratos_selfservice_methods_webauthn_enabled, kratos_session_cookie_persistent, kratos_session_cookie_same_site, kratos_session_lifespan, kratos_session_whoami_required_aal, name, production, project_id, updated_at].hash end # Builds the object from hash # @param [Hash] attributes Model attributes in the form of hash # @return [Object] Returns the model itself def self.build_from_hash(attributes) new.build_from_hash(attributes) end # Builds the object from hash # @param [Hash] attributes Model attributes in the form of hash # @return [Object] Returns the model itself def build_from_hash(attributes) return nil unless attributes.is_a?(Hash) attributes = attributes.transform_keys(&:to_sym) self.class.openapi_types.each_pair do |key, type| if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key) self.send("#{key}=", nil) elsif type =~ /\AArray<(.*)>/i # check to ensure the input is an array given that the attribute # is documented as an array but the input is not if attributes[self.class.attribute_map[key]].is_a?(Array) self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) end elsif !attributes[self.class.attribute_map[key]].nil? self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]])) end end self end # Deserializes the data based on type # @param string type Data type # @param string value Value to be deserialized # @return [Object] Deserialized data def _deserialize(type, value) case type.to_sym when :Time Time.parse(value) when :Date Date.parse(value) when :String value.to_s when :Integer value.to_i when :Float value.to_f when :Boolean if value.to_s =~ /\A(true|t|yes|y|1)\z/i true else false end when :Object # generic object (usually a Hash), return directly value when /\AArray<(?.+)>\z/ inner_type = Regexp.last_match[:inner_type] value.map { |v| _deserialize(inner_type, v) } when /\AHash<(?.+?), (?.+)>\z/ k_type = Regexp.last_match[:k_type] v_type = Regexp.last_match[:v_type] {}.tap do |hash| value.each do |k, v| hash[_deserialize(k_type, k)] = _deserialize(v_type, v) end end else # model # models (e.g. Pet) or oneOf klass = OryClient.const_get(type) klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) end end # Returns the string representation of the object # @return [String] String presentation of the object def to_s to_hash.to_s end # to_body is an alias to to_hash (backward compatibility) # @return [Hash] Returns the object in the form of hash def to_body to_hash end # Returns the object in the form of hash # @return [Hash] Returns the object in the form of hash def to_hash hash = {} self.class.attribute_map.each_pair do |attr, param| value = self.send(attr) if value.nil? is_nullable = self.class.openapi_nullable.include?(attr) next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}")) end hash[param] = _to_hash(value) end hash end # Outputs non-array value in the form of hash # For object, use to_hash. Otherwise, just return the value # @param [Object] value Any valid value # @return [Hash] Returns the value in the form of hash def _to_hash(value) if value.is_a?(Array) value.compact.map { |v| _to_hash(v) } elsif value.is_a?(Hash) {}.tap do |hash| value.each { |k, v| hash[k] = _to_hash(v) } end elsif value.respond_to? :to_hash value.to_hash else value end end end end