import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; import Long from "long"; import type { CallContext, CallOptions } from "nice-grpc-common"; import { PaginationRequest, PaginationResponse } from "../../filter/v2/filter.js"; import { Details, ListDetails, RequestContext } from "../../object/v2/object.js"; import { BrandingSettings } from "./branding_settings.js"; import { DomainSettings } from "./domain_settings.js"; import { LegalAndSupportSettings } from "./legal_settings.js"; import { LockoutSettings } from "./lockout_settings.js"; import { IdentityProvider, LoginSettings } from "./login_settings.js"; import { OrganizationSettings, OrganizationSettingsFieldName, OrganizationSettingsSearchFilter } from "./organization_settings.js"; import { PasswordComplexitySettings, PasswordExpirySettings } from "./password_settings.js"; import { EmbeddedIframeSettings, SecuritySettings } from "./security_settings.js"; export declare const protobufPackage = "zitadel.settings.v2"; export interface GetLoginSettingsRequest { /** * Specify the context for which the login settings should be returned. * This can be the instance or an organization. * In case of an organization, the returned settings will fall back to the instance settings * if not explicitly set on the organization. */ ctx: RequestContext | undefined; } export interface GetLoginSettingsResponse { details: Details | undefined; settings: LoginSettings | undefined; } export interface GetPasswordComplexitySettingsRequest { /** * Specify the context for which the password complexity settings should be returned. * This can be the instance or an organization. * In case of an organization, the returned settings will fall back to the instance settings * if not explicitly set on the organization. */ ctx: RequestContext | undefined; } export interface GetPasswordComplexitySettingsResponse { details: Details | undefined; settings: PasswordComplexitySettings | undefined; } export interface GetPasswordExpirySettingsRequest { /** * Specify the context for which the password expiry settings should be returned. * This can be the instance or an organization. * In case of an organization, the returned settings will fall back to the instance settings * if not explicitly set on the organization. */ ctx: RequestContext | undefined; } export interface GetPasswordExpirySettingsResponse { details: Details | undefined; settings: PasswordExpirySettings | undefined; } export interface GetBrandingSettingsRequest { /** * Specify the context for which the branding settings should be returned. * This can be the instance or an organization. * In case of an organization, the returned settings will fall back to the instance settings * if not explicitly set on the organization. */ ctx: RequestContext | undefined; } export interface GetBrandingSettingsResponse { details: Details | undefined; settings: BrandingSettings | undefined; } export interface GetDomainSettingsRequest { /** * Specify the context for which the domain settings should be returned. * This can be the instance or an organization. * In case of an organization, the returned settings will fall back to the instance settings * if not explicitly set on the organization. */ ctx: RequestContext | undefined; } export interface GetDomainSettingsResponse { details: Details | undefined; settings: DomainSettings | undefined; } export interface GetLegalAndSupportSettingsRequest { /** * Specify the context for which the legal and support settings should be returned. * This can be the instance or an organization. * In case of an organization, the returned settings will fall back to the instance settings * if not explicitly set on the organization. */ ctx: RequestContext | undefined; } export interface GetLegalAndSupportSettingsResponse { details: Details | undefined; settings: LegalAndSupportSettings | undefined; } export interface GetLockoutSettingsRequest { /** * Specify the context for which the lockout settings should be returned. * This can be the instance or an organization. * In case of an organization, the returned settings will fall back to the instance settings * if not explicitly set on the organization. */ ctx: RequestContext | undefined; } export interface GetLockoutSettingsResponse { details: Details | undefined; settings: LockoutSettings | undefined; } export interface GetActiveIdentityProvidersRequest { /** * Specify the context for which the active identity providers should be returned. * This can be the instance or an organization. * In case of an organization, the returned providers will fall back to the instance providers * if not explicitly set on the organization. */ ctx: RequestContext | undefined; creationAllowed?: boolean | undefined; linkingAllowed?: boolean | undefined; autoCreation?: boolean | undefined; autoLinking?: boolean | undefined; } export interface GetActiveIdentityProvidersResponse { details: ListDetails | undefined; identityProviders: IdentityProvider[]; } export interface GetGeneralSettingsRequest { } export interface GetGeneralSettingsResponse { /** * The unique identifier of the default organization. * The default organization is used to assign new users to an organization if no other organization is specified. * Deprecated: use default_organization_id instead. */ defaultOrgId: string; /** * The default language is use if no other language is specified or detected. * The format is a BCP 47 language tag (e.g. "en", "de", "fr-CH"). */ defaultLanguage: string; /** * The list of supported languages. * The format is a BCP 47 language tag (e.g. "en", "de", "fr-CH"). */ supportedLanguages: string[]; /** * The unique identifier of the default organization. * The default organization is used to assign new users to an organization if no other organization is specified. */ defaultOrganizationId: string; } export interface GetSecuritySettingsRequest { } export interface GetSecuritySettingsResponse { details: Details | undefined; settings: SecuritySettings | undefined; } export interface SetSecuritySettingsRequest { /** * EmbeddedIframeSettings defines if the login UI can be embedded in an iframe * and which origins are allowed to do so. */ embeddedIframe: EmbeddedIframeSettings | undefined; /** * If enabled, users are allowed to impersonate other users. * The impersonator needs the appropriate `*_IMPERSONATOR` roles assigned as well". */ enableImpersonation: boolean; } export interface SetSecuritySettingsResponse { details: Details | undefined; } export interface SetOrganizationSettingsRequest { /** Organization ID in which this settings are set. */ organizationId: string; /** * Force the usernames in the organization to be unique, * only possible to set if the existing users already have unique usernames in the organization context. */ organizationScopedUsernames?: boolean | undefined; } export interface SetOrganizationSettingsResponse { /** The timestamp of the set of the organization settings. */ setDate: Date | undefined; } export interface DeleteOrganizationSettingsRequest { /** Organization ID in which this settings are set. */ organizationId: string; } export interface DeleteOrganizationSettingsResponse { /** The timestamp of the deletion of the organization settings. */ deletionDate: Date | undefined; } export interface ListOrganizationSettingsRequest { /** List limitations and ordering. */ pagination?: PaginationRequest | undefined; /** * The field the result is sorted by. The default is the creation date. * Beware that if you change this, your result pagination might be inconsistent. */ sortingColumn?: OrganizationSettingsFieldName | undefined; /** Define the criteria to query for. */ filters: OrganizationSettingsSearchFilter[]; } export interface ListOrganizationSettingsResponse { pagination: PaginationResponse | undefined; organizationSettings: OrganizationSettings[]; } export interface GetHostedLoginTranslationRequest { system?: boolean | undefined; instance?: boolean | undefined; organizationId?: string | undefined; /** * The locale of the translations to be returned. * Needs to be a BCP 47 language tag (e.g. "en", "de", "fr-CH"). */ locale: string; /** if set to true, higher levels are ignored, if false higher levels are merged into the file */ ignoreInheritance: boolean; } export interface GetHostedLoginTranslationResponse { /** hash of the payload */ etag: string; /** Translations contains the translations in the requested language. */ translations: { [key: string]: any; } | undefined; } export interface SetHostedLoginTranslationRequest { instance?: boolean | undefined; organizationId?: string | undefined; /** * The locale of the translations to be set. * Needs to be a BCP 47 language tag (e.g. "en", "de", "fr-CH"). */ locale: string; /** Translations should contain the translations in the specified locale. */ translations: { [key: string]: any; } | undefined; } export interface SetHostedLoginTranslationResponse { /** hash of the saved translation. Valid only when ignore_inheritance = true */ etag: string; } export declare const GetLoginSettingsRequest: MessageFns; export declare const GetLoginSettingsResponse: MessageFns; export declare const GetPasswordComplexitySettingsRequest: MessageFns; export declare const GetPasswordComplexitySettingsResponse: MessageFns; export declare const GetPasswordExpirySettingsRequest: MessageFns; export declare const GetPasswordExpirySettingsResponse: MessageFns; export declare const GetBrandingSettingsRequest: MessageFns; export declare const GetBrandingSettingsResponse: MessageFns; export declare const GetDomainSettingsRequest: MessageFns; export declare const GetDomainSettingsResponse: MessageFns; export declare const GetLegalAndSupportSettingsRequest: MessageFns; export declare const GetLegalAndSupportSettingsResponse: MessageFns; export declare const GetLockoutSettingsRequest: MessageFns; export declare const GetLockoutSettingsResponse: MessageFns; export declare const GetActiveIdentityProvidersRequest: MessageFns; export declare const GetActiveIdentityProvidersResponse: MessageFns; export declare const GetGeneralSettingsRequest: MessageFns; export declare const GetGeneralSettingsResponse: MessageFns; export declare const GetSecuritySettingsRequest: MessageFns; export declare const GetSecuritySettingsResponse: MessageFns; export declare const SetSecuritySettingsRequest: MessageFns; export declare const SetSecuritySettingsResponse: MessageFns; export declare const SetOrganizationSettingsRequest: MessageFns; export declare const SetOrganizationSettingsResponse: MessageFns; export declare const DeleteOrganizationSettingsRequest: MessageFns; export declare const DeleteOrganizationSettingsResponse: MessageFns; export declare const ListOrganizationSettingsRequest: MessageFns; export declare const ListOrganizationSettingsResponse: MessageFns; export declare const GetHostedLoginTranslationRequest: MessageFns; export declare const GetHostedLoginTranslationResponse: MessageFns; export declare const SetHostedLoginTranslationRequest: MessageFns; export declare const SetHostedLoginTranslationResponse: MessageFns; export type SettingsServiceDefinition = typeof SettingsServiceDefinition; export declare const SettingsServiceDefinition: { readonly name: "SettingsService"; readonly fullName: "zitadel.settings.v2.SettingsService"; readonly methods: { /** * Get General Settings * * Get basic information of the instance like the default organization, default language and supported languages. * * Required permissions: * - `policy.read` */ readonly getGeneralSettings: { readonly name: "GetGeneralSettings"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Get Login Settings * * Get the login settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ readonly getLoginSettings: { readonly name: "GetLoginSettings"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Get Active Identity Providers * * Get the current active identity providers for the requested context. * This can be the instance or an organization. In case of an organization, * the returned identity providers will fall back to the active instance identity providers * if not explicitly set on the organization. * * Optionally, filter the identity providers by their allowed actions: * - creation_allowed: only return identity providers that are allowed for user creation * - linking_allowed: only return identity providers that are allowed for linking to existing users * - auto_creation: only return identity providers that are allowed for automatic user creation * - auto_linking: only return identity providers that are allowed for automatic linking to existing users * * Required permissions: * - `policy.read` */ readonly getActiveIdentityProviders: { readonly name: "GetActiveIdentityProviders"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Get Password Complexity Settings * * Get the password complexity settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ readonly getPasswordComplexitySettings: { readonly name: "GetPasswordComplexitySettings"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Get Password Expiry Settings * * Get the password expiry settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ readonly getPasswordExpirySettings: { readonly name: "GetPasswordExpirySettings"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Get Branding Settings * * Get the current active branding settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ readonly getBrandingSettings: { readonly name: "GetBrandingSettings"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Get Domain Settings * * Get the domain settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ readonly getDomainSettings: { readonly name: "GetDomainSettings"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Get Legal and Support Settings * * Get the legal and support settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ readonly getLegalAndSupportSettings: { readonly name: "GetLegalAndSupportSettings"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Get Lockout Settings * * Get the lockout settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Lockout settings define how many failed attempts are allowed before a user is locked out. * * Required permissions: * - `policy.read` */ readonly getLockoutSettings: { readonly name: "GetLockoutSettings"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Get Security Settings * * Get the security settings of the ZITADEL instance. * Security settings include settings like enabling impersonation and embedded iframe settings. * * Required permissions: * - `iam.policy.read` */ readonly getSecuritySettings: { readonly name: "GetSecuritySettings"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Set Security Settings * * Set the security settings of the instance. * * Required permissions: * - `iam.policy.write` */ readonly setSecuritySettings: { readonly name: "SetSecuritySettings"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Set Organization Settings * * Sets the settings specific to an organization. * Organization scopes usernames defines that the usernames have to be unique in the organization scope, * can only be changed if the usernames of the users are unique in the scope. * * Required permissions: * - `iam.policy.write` */ readonly setOrganizationSettings: { readonly name: "SetOrganizationSettings"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Delete Organization Settings * * Delete the settings specific to an organization. * * Required permissions: * - `iam.policy.delete` */ readonly deleteOrganizationSettings: { readonly name: "DeleteOrganizationSettings"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * List Organization Settings * * Returns a list of organization settings. * * Required permission: * - `iam.policy.read` * - `org.policy.read` */ readonly listOrganizationSettings: { readonly name: "ListOrganizationSettings"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Get Hosted Login Translation * * Returns the translations in the requested locale for the hosted login. * The translations returned are based on the input level specified (system, instance or organization). * * If the requested level doesn't contain all translations, and ignore_inheritance is set to false, * a merging process fallbacks onto the higher levels ensuring all keys in the file have a translation, * which could be in the default language if the one of the locale is missing on all levels. * * The etag returned in the response represents the hash of the translations as they are stored on DB * and its reliable only if ignore_inheritance = true. * * Required permissions: * - `iam.policy.read` */ readonly getHostedLoginTranslation: { readonly name: "GetHostedLoginTranslation"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; /** * Set Hosted Login Translation * * Sets the input translations at the specified level (instance or organization) for the input language. * * Required permissions: * - `iam.policy.write` */ readonly setHostedLoginTranslation: { readonly name: "SetHostedLoginTranslation"; readonly requestType: MessageFns; readonly requestStream: false; readonly responseType: MessageFns; readonly responseStream: false; readonly options: { readonly _unknownFields: { readonly 8338: readonly [Buffer]; readonly 400010: readonly [Buffer]; readonly 578365826: readonly [Buffer]; }; }; }; }; }; export interface SettingsServiceImplementation { /** * Get General Settings * * Get basic information of the instance like the default organization, default language and supported languages. * * Required permissions: * - `policy.read` */ getGeneralSettings(request: GetGeneralSettingsRequest, context: CallContext & CallContextExt): Promise>; /** * Get Login Settings * * Get the login settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ getLoginSettings(request: GetLoginSettingsRequest, context: CallContext & CallContextExt): Promise>; /** * Get Active Identity Providers * * Get the current active identity providers for the requested context. * This can be the instance or an organization. In case of an organization, * the returned identity providers will fall back to the active instance identity providers * if not explicitly set on the organization. * * Optionally, filter the identity providers by their allowed actions: * - creation_allowed: only return identity providers that are allowed for user creation * - linking_allowed: only return identity providers that are allowed for linking to existing users * - auto_creation: only return identity providers that are allowed for automatic user creation * - auto_linking: only return identity providers that are allowed for automatic linking to existing users * * Required permissions: * - `policy.read` */ getActiveIdentityProviders(request: GetActiveIdentityProvidersRequest, context: CallContext & CallContextExt): Promise>; /** * Get Password Complexity Settings * * Get the password complexity settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ getPasswordComplexitySettings(request: GetPasswordComplexitySettingsRequest, context: CallContext & CallContextExt): Promise>; /** * Get Password Expiry Settings * * Get the password expiry settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ getPasswordExpirySettings(request: GetPasswordExpirySettingsRequest, context: CallContext & CallContextExt): Promise>; /** * Get Branding Settings * * Get the current active branding settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ getBrandingSettings(request: GetBrandingSettingsRequest, context: CallContext & CallContextExt): Promise>; /** * Get Domain Settings * * Get the domain settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ getDomainSettings(request: GetDomainSettingsRequest, context: CallContext & CallContextExt): Promise>; /** * Get Legal and Support Settings * * Get the legal and support settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ getLegalAndSupportSettings(request: GetLegalAndSupportSettingsRequest, context: CallContext & CallContextExt): Promise>; /** * Get Lockout Settings * * Get the lockout settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Lockout settings define how many failed attempts are allowed before a user is locked out. * * Required permissions: * - `policy.read` */ getLockoutSettings(request: GetLockoutSettingsRequest, context: CallContext & CallContextExt): Promise>; /** * Get Security Settings * * Get the security settings of the ZITADEL instance. * Security settings include settings like enabling impersonation and embedded iframe settings. * * Required permissions: * - `iam.policy.read` */ getSecuritySettings(request: GetSecuritySettingsRequest, context: CallContext & CallContextExt): Promise>; /** * Set Security Settings * * Set the security settings of the instance. * * Required permissions: * - `iam.policy.write` */ setSecuritySettings(request: SetSecuritySettingsRequest, context: CallContext & CallContextExt): Promise>; /** * Set Organization Settings * * Sets the settings specific to an organization. * Organization scopes usernames defines that the usernames have to be unique in the organization scope, * can only be changed if the usernames of the users are unique in the scope. * * Required permissions: * - `iam.policy.write` */ setOrganizationSettings(request: SetOrganizationSettingsRequest, context: CallContext & CallContextExt): Promise>; /** * Delete Organization Settings * * Delete the settings specific to an organization. * * Required permissions: * - `iam.policy.delete` */ deleteOrganizationSettings(request: DeleteOrganizationSettingsRequest, context: CallContext & CallContextExt): Promise>; /** * List Organization Settings * * Returns a list of organization settings. * * Required permission: * - `iam.policy.read` * - `org.policy.read` */ listOrganizationSettings(request: ListOrganizationSettingsRequest, context: CallContext & CallContextExt): Promise>; /** * Get Hosted Login Translation * * Returns the translations in the requested locale for the hosted login. * The translations returned are based on the input level specified (system, instance or organization). * * If the requested level doesn't contain all translations, and ignore_inheritance is set to false, * a merging process fallbacks onto the higher levels ensuring all keys in the file have a translation, * which could be in the default language if the one of the locale is missing on all levels. * * The etag returned in the response represents the hash of the translations as they are stored on DB * and its reliable only if ignore_inheritance = true. * * Required permissions: * - `iam.policy.read` */ getHostedLoginTranslation(request: GetHostedLoginTranslationRequest, context: CallContext & CallContextExt): Promise>; /** * Set Hosted Login Translation * * Sets the input translations at the specified level (instance or organization) for the input language. * * Required permissions: * - `iam.policy.write` */ setHostedLoginTranslation(request: SetHostedLoginTranslationRequest, context: CallContext & CallContextExt): Promise>; } export interface SettingsServiceClient { /** * Get General Settings * * Get basic information of the instance like the default organization, default language and supported languages. * * Required permissions: * - `policy.read` */ getGeneralSettings(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Get Login Settings * * Get the login settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ getLoginSettings(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Get Active Identity Providers * * Get the current active identity providers for the requested context. * This can be the instance or an organization. In case of an organization, * the returned identity providers will fall back to the active instance identity providers * if not explicitly set on the organization. * * Optionally, filter the identity providers by their allowed actions: * - creation_allowed: only return identity providers that are allowed for user creation * - linking_allowed: only return identity providers that are allowed for linking to existing users * - auto_creation: only return identity providers that are allowed for automatic user creation * - auto_linking: only return identity providers that are allowed for automatic linking to existing users * * Required permissions: * - `policy.read` */ getActiveIdentityProviders(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Get Password Complexity Settings * * Get the password complexity settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ getPasswordComplexitySettings(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Get Password Expiry Settings * * Get the password expiry settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ getPasswordExpirySettings(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Get Branding Settings * * Get the current active branding settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ getBrandingSettings(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Get Domain Settings * * Get the domain settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ getDomainSettings(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Get Legal and Support Settings * * Get the legal and support settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Required permissions: * - `policy.read` */ getLegalAndSupportSettings(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Get Lockout Settings * * Get the lockout settings for the requested context. * This can be the instance or an organization. In case of an organization, * the returned settings will fall back to the instance settings if not explicitly set on the organization. * * Lockout settings define how many failed attempts are allowed before a user is locked out. * * Required permissions: * - `policy.read` */ getLockoutSettings(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Get Security Settings * * Get the security settings of the ZITADEL instance. * Security settings include settings like enabling impersonation and embedded iframe settings. * * Required permissions: * - `iam.policy.read` */ getSecuritySettings(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Set Security Settings * * Set the security settings of the instance. * * Required permissions: * - `iam.policy.write` */ setSecuritySettings(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Set Organization Settings * * Sets the settings specific to an organization. * Organization scopes usernames defines that the usernames have to be unique in the organization scope, * can only be changed if the usernames of the users are unique in the scope. * * Required permissions: * - `iam.policy.write` */ setOrganizationSettings(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Delete Organization Settings * * Delete the settings specific to an organization. * * Required permissions: * - `iam.policy.delete` */ deleteOrganizationSettings(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * List Organization Settings * * Returns a list of organization settings. * * Required permission: * - `iam.policy.read` * - `org.policy.read` */ listOrganizationSettings(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Get Hosted Login Translation * * Returns the translations in the requested locale for the hosted login. * The translations returned are based on the input level specified (system, instance or organization). * * If the requested level doesn't contain all translations, and ignore_inheritance is set to false, * a merging process fallbacks onto the higher levels ensuring all keys in the file have a translation, * which could be in the default language if the one of the locale is missing on all levels. * * The etag returned in the response represents the hash of the translations as they are stored on DB * and its reliable only if ignore_inheritance = true. * * Required permissions: * - `iam.policy.read` */ getHostedLoginTranslation(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; /** * Set Hosted Login Translation * * Sets the input translations at the specified level (instance or organization) for the input language. * * Required permissions: * - `iam.policy.write` */ setHostedLoginTranslation(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; } type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends globalThis.Array ? globalThis.Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; fromJSON(object: any): T; toJSON(message: T): unknown; create(base?: DeepPartial): T; fromPartial(object: DeepPartial): T; } export {};