Information
-
Here you will find a description of the PLANTA Web Client configuration.
Basics
Information
-
There are several ways to apply configurations. Below, all options are listed from lowest to highest priority.
-
If a variable has been defined at more than one position, the position with the highest priority will be used:
-
appsettings.json: Main (default) configuration, changes are not recommended -
appsettings.[Environment].json: environment-specific (e.g. production) configuration -
Environment variables
-
Command line parameters
-
Define parameters outside the JSON format
Information
-
You have to use a particular format for environment variables and command line parameters:
Define parameters within a block
|
JSON: |
Command line: |
|
JavaScript
|
|
Define parameters within an array
|
JSON: |
Overwrite ServerB port in the command line: |
|
JavaScript
|
|
Parameter
Information
-
The following parameters can be used to configure the Web Client.
Dotnet Settings
Information
-
The
ASPNETCORE_ENVIRONMENTvariable can be set toDevelopment. This enables a button on the error screen that allows copying the stack trace.
Connection Settings
Information
-
Parameters which define the server start and the communication with the PLANTA Server.
-
They must be defined within the
ConnectionSettingsblock.
|
Parameter |
Type |
Default |
Description |
From/Up to Version |
|---|---|---|---|---|
|
|
int |
6 |
Zlib compression level, number between 0 and 9. Will be ignored if |
|
|
|
string |
de-DE |
Culture code which is used by the application. Depends on the host operating system. A list of culture codes can be found online as well. |
|
|
|
string |
null |
|
|
|
|
int |
60 |
Time interval between keepalive signals sent to the PLANTA Server in seconds |
|
|
|
int |
5 |
Request timeout for routing requests to PLANTA link |
|
|
|
string |
see |
API key which the Web Client sends as the |
|
|
|
string |
null |
The PLANTA link webhook which is required for routing |
|
|
|
int |
1440 |
Time in minutes for which the web server saves panel information when the user has interrupted the connection or left the page |
|
|
|
string |
null |
Password parameter which is sent upon server start |
|
|
|
int |
480 |
Time in minutes for which the web server saves session information when the user has interrupted the connection or left the page. If the parameter is missing, “120” applies. With |
|
|
|
bool |
false |
With “true”, each browser tab gets its own session, so several tabs of one browser can be used at the same time. Each session counts against the licensed maximum and against the user’s Parallel sessions limit. A tab whose session is taken over by another tab returns to the login page. With “false”, all tabs of a browser share one session. |
From Web 4.3.0 |
|
|
int |
1 |
Only with |
From Web 4.3.0 |
|
|
array |
null |
List of PLANTA Servers. Must contain at least one entry. Further information |
|
|
|
bool |
true |
Defines whether communication with the PLANTA Server is to be compressed |
|
|
|
string |
null |
User parameter which is sent upon server start |
|
|
|
bool |
false |
Defines whether SSL is to be activated for communication with the PLANTA Server |
|
Settings of the Servers parameter
|
Parameter |
Type |
Description |
From/Up to Version |
|---|---|---|---|
|
|
string |
server host name |
|
|
|
int |
server port |
|
gRPC Settings
Information
-
This block controls the gRPC connection to the PLANTA manager via which the Web Client loads the integrated agile views.
-
The parameters must be defined within the
GrpcSettingsblock. -
If
ServerUrlremains empty, the address is formed from the host ofConnectionSettings:RoutingWebHookand a port. The port is the value ofPort, otherwise the port the manager announces at login, otherwise “50051”. An explicitly setServerUrltakes precedence. -
If no address can be formed, the startup records this in the log and only the agile views are unavailable. The rest of the Web Client continues to work.
|
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
string |
empty |
Complete gRPC address of the manager, e.g. |
|
|
int |
50051 |
Port of the derived address. Has no effect if |
|
|
bool |
false |
Determines whether the derived address uses |
|
|
string |
empty |
Service token for calls without a session-specific token. Required for the Microsoft 365 integration |
|
|
string |
empty |
Identifier which the Web Client sends with gRPC calls |
Example configuration
{
"ConnectionSettings": {
"RoutingWebHook": "https://manager.example.com:23333/api/webclient/routing"
},
"GrpcSettings": {
"ServerUrl": ""
}
}
AI Settings
|
Parameter |
Type |
Description |
From/Up to Version |
|---|---|---|---|
|
|
string |
URL of the AI assistant chat. |
|
The PLANTA AI Assistant is available in a separate container—that is where installation and configuration take place. If you have any questions, please contact your PLANTA consultant.
Data Protection Settings
Information
-
Parameters to control the Data Protection API.
-
They must be defined within the
DataProtectionSettingsblock.
|
Parameter |
Type |
Default |
Description |
From/Up to Version |
|---|---|---|---|---|
|
|
string |
PLANTA Webclient |
The name of the application for data protection purposes. |
|
|
|
string |
%ApplicationFilesPath%/DataProtectionKeys |
Directory path where data protection keys are stored. |
|
|
|
string |
AES_256_CBC |
The encryption algorithm used for data protection, for possible values see here. |
|
|
|
string |
HMACSHA256 |
The validation algorithm used for data protection, for possible values see here. |
|
|
|
string |
|
The thumbprint of the encryption certificate used for data protection. If empty, the keys file is not encrypted. |
|
Authentication Settings
Information
-
Parameters which are used to configure whether and how the reverse proxy informs us about the authenticated user. This requires the use of PLANTA secure.
-
The parameters must be defined within the
AuthenticationSettingsblock.
|
Parameter |
Type |
Default |
Description |
From/Up to Version |
|---|---|---|---|---|
|
|
bool |
false |
If this option is activated, the Web Client sends a message to the server during session initialization which informs it about the pre-authentication and the corresponding user code. |
|
|
|
bool |
false |
When enabled, the Web Client uses JWT/OIDC for authentication (enables OIDC flows). Deprecated from 3.7.2 Use |
Up to 3.7.1 |
|
|
bool |
false |
When true, the client initiates the OIDC login flow by itself. Otherwise, the reverse proxy initiates the OIDC login flow. Deprecated from 3.7.2 Use |
Up to 3.7.1 |
|
|
bool |
false |
Enables OIDC authentication. Replaces the previous parameters |
From 3.7.2 |
|
|
string |
plain |
The format in which the value is provided. So far, only the "plain" format has been implemented, which passes the header value to the server. |
|
|
|
string |
x-forwarded-user |
Name of the HTTP header field that contains the user ID authenticated by the reverse proxy. |
|
|
|
string |
x-forwarded-access-token |
Name of the HTTP cookie that contains the JWT access token |
|
|
|
string |
x-forwarded-id-token |
Name of the HTTP cookie that contains the JWT ID token |
|
|
|
string |
/ |
Web base path that the reverse proxy uses for the Web Client, e.g. if the Web Client can be accessed on the reverse proxy under http://www.example.com/webclient, the base path will be /webclient. |
|
|
|
string |
/signed-out |
Logout route which is opened when the user wants to terminate their session on the reverse proxy. |
|
|
|
OIDC Settings |
|
Configuration for the OpenID Connect authentication |
|
|
|
ReverseProxyJwtSettings |
|
Configuration for the JWT authentication via reverse proxy (Cloudflare by default). |
|
ReverseProxyJWT Settings
|
Parameter |
Type |
Default |
Description |
From/Up to Version |
|---|---|---|---|---|
|
|
string |
|
The HTTP header key that contains the application JWT from the reverse proxy. The authentication service also checks whether the header name contains |
|
|
|
string |
|
Expected |
|
|
|
string |
|
JWKS endpoint URL used for validating the token signature. |
|
|
|
string |
|
Expected |
|
Notes
-
When
JwtAuthistrueandJwtAuthOnClientisfalse, the client tries to find the tokens made available by the reverse proxy either in cookies (standard OIDC cookies) or in the configuredHeaderKey. IfHeaderKeycontains aCfprefix and a matching request header exists, the reverse proxy/Cloudflare flow is used. -
After successful validation, the client sends an XML message of the
<ProxyToken type="1" .../>type that contains the application token inaccess_tokento the backend. The backend must supporttype="1"andaccess_tokenas validated reverse proxy JWT.
OIDC Settings
Information
-
Parameters for configuring the OpenID Connect authentication.
-
They must be defined within the
AuthenticationSettings.OidcSettingsblock.
|
Parameter |
Type |
Default |
Description |
From/Up to Version |
|---|---|---|---|---|
|
|
string |
|
OAuth client ID that is used for token validation. |
|
|
|
string |
|
Client secret that is used for authentication to the OIDC provider. |
|
|
|
string |
|
URL for the OIDC discovery document. Deprecated from 3.7.2 Use |
Up to 3.7.1 |
|
|
string |
|
The base issuer URL of the OIDC provider (e.g. |
From 3.7.2 |
|
|
string |
|
Access scope requested from the OIDC provider. |
|
Authentication: Examples and Setup
Information
-
Below are common configuration scenarios and concrete examples for setting values via
appsettings.json, environment variables, or command line.
Example A — Reverse-proxy header authentication (proxy tells backend the user ID)
-
appsettings.json:
{
"AuthenticationSettings": {
"ProxyAuth": true,
"ProxyUserHeader": "x-forwarded-user"
}
}
-
Environment variable (Windows PowerShell):
$env:AuthenticationSettings__ProxyAuth = "true"
$env:AuthenticationSettings__ProxyUserHeader = "x-forwarded-user"
Example B — Cloudflare Access / Reverse-proxy JWT (reverse proxy injects application JWT)
-
appsettings.json:
{
"AuthenticationSettings": {
"JwtAuth": true,
"JwtAuthOnClient": false,
"ReverseProxyJwtSettings": {
"HeaderKey": "Cf-Access-Jwt-Assertion",
"IssuerUrl": "https://your-team.cloudflareaccess.com",
"JwksUrl": "https://your-team.cloudflareaccess.com/cdn-cgi/access/certs",
"Audience": "PASTE_THE_64_CHAR_HEX_TAG_HERE"
}
}
}
Notes
-
The application will detect Cloudflare usage when the configured
HeaderKeycontainsCf-and a matching header exists on the request. -
Ensure
JwksUrl,IssuerUrl, andAudienceexactly match the token claims issued by Cloudflare Access. If they do not match, validation fails.
Example C — OIDC client-initiated login with PKCE (browser performs OIDC flow)
-
appsettings.json:
{
"AuthenticationSettings": {
"JwtAuth": true,
"JwtAuthOnClient": true,
"OidcSettings": {
"ClientId": "APPLICATION_CLIENT_ID",
"ClientSecret": "YOUR_CLIENT_SECRET",
"DiscoveryUrl": "https://login.example.com/.well-known/openid-configuration",
"Scope": "openid profile email"
}
}
}
Behavior
-
The client will start the Authorization Code flow with PKCE and exchange the authorization code for
id_token/access_tokenin the browser. -
Tokens are validated and then forwarded to the backend with
ProxyTokentype="0".
WebAPI Authentication Settings
|
Parameter |
Type |
Default |
Description |
From/Up to Version |
|---|---|---|---|---|
|
|
string |
APIKEY |
API key which is used to access the web API endpoints |
|
Adaptive Card Settings
Signature Settings
|
Parameter |
Type |
Default |
Description |
From/Up to Version |
|---|---|---|---|---|
|
|
string |
|
XML formatted private RSA key for signing Adaptive Cards |
|
Upload Settings
Information
-
Parameters that define the behavior for file uploads.
-
They must be defined within the
FileUploadSettingsblock.
|
Parameter |
Type |
Default |
Description |
From/Up to Version |
|---|---|---|---|---|
|
|
string |
.doc, .docx, .xls, .txt |
File endings which can be uploaded |
|
|
|
int |
2000000 |
Maximum size of files, in bytes |
|
|
|
int |
100000 |
If a number > 0 is defined, the file is uploaded in chunks of the specified size (in bytes). If 0 is defined, the file is uploaded in one request. |
|
|
|
string |
. |
Path under which the files are temporarily saved during upload |
|
Help Center Settings
Information
-
Parameters to configure the links and commands used in the Help Center menu.
-
They must be defined within the
HelpCenterSettingsblock.
|
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
string |
URL for the main help center page. |
|
|
|
string |
URL for video tutorials. |
|
|
|
string |
https://help.planta.de/project/?contextKey=GrundlagenProject |
URL of the page opened by the Getting Started entry in the Help Center. Up to Web 4.3.1, the default was https://help.planta.de/de/project/. |
|
|
string |
URL for the privacy policy page. When set, a privacy policy link will be displayed in the feedback component. |
|
|
|
string |
https://help.planta.de/de/tec/Container-ab-39.5.24/konfiguration-des-ki-assistenten-fur-webclient |
URL for AI assistant configuration documentation. This link is shown when the AI assistant is disabled to help users learn how to set it up. |
|
|
int? |
null |
Optional command ID to execute for module-specific help. |
|
|
int? |
null |
Optional command ID to execute for field-specific help. |
|
|
int |
1000 |
Maximum character length allowed for feedback comment text. This limits how much text users can enter in the feedback form. |
|
|
array |
null |
List of feedback destinations. Each destination has a |
Feedback to Destination Details
Information
-
Console:Logs feedback to the console. -
Logger:Logs feedback using the application's logger. -
File:Logs feedback to a file. RequiresArgs.filepath(path to the file) andArgs.encoding(file encoding, e.g.,utf-8). -
Service:Sends feedback to a service. RequiresArgs.url(URL of the feedback service).
Example configuration for FeedbackTo:
"FeedbackTo": [
{ "Name": "Console" },
{ "Name": "Logger" },
{
"Name": "File",
"Args": {
"filepath": "%ApplicationFilesPath%/feedback.log",
"encoding": "utf-8"
}
},
{
"Name": "Service",
"Args": {
"url": "http://localhost:5159/api/feedback"
}
}
]
Message Dumper Settings
Information
-
Message Dumper saves the communication with PLANTA Server: one XML file per session.
-
Recordings are kept beyond the end of the session and beyond restarts. Their age, number, and size are limited by
RetentionDays,MaxRetainedDumps, andMaxSizeBytes. The recording of a running session is never deleted. -
Login data is masked as *** in the recording. All other field contents appear in plain text in the recording.
-
The parameters must be defined within the
MessageDumperSettingsblock.
|
Parameter |
Type |
Default |
Description |
From/Up to Version |
|---|---|---|---|---|
|
|
bool |
false |
Records every session. Also enables downloading other users’ recordings in the Session logs dialog. Turn on for diagnosis only |
|
|
|
string |
%ApplicationFilesPath%/Logs/Dump |
Path under which message dump files are saved |
|
|
|
bool |
true |
Create an XML recording of a session. It is started by adding |
|
|
|
bool |
false |
Writes binary content such as attachments, OLE objects, and images to the recording. With “false”, the attribute |
From 4.1.0 |
|
|
long |
26214400 (25 MB) |
Size limit per recording. When it is reached, recording stops and the file is closed with the marker |
From 4.1.0 |
|
|
int |
7 |
Age in days after the last change from which a recording is deleted |
From 4.1.0 |
|
|
int |
100 |
Maximum number of recordings kept. Above it, the oldest are deleted first |
From 4.1.0 |
Session Log Settings
Information
-
From Web Client 4.1.0.
-
Every session writes its own log file.
-
Users download their session log via the Session logs dialog.
-
Access to other users’ logs is a customizing right and can be restricted further via
DownloadAccess.
-
-
The parameters must be defined within the
SessionLogSettingsblock.
|
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
bool |
true |
Writes a separate log file for each session. With “false”, the menu entry is omitted as well |
|
|
string |
AllUsers |
Defines who may list and download session logs. “AllUsers”: users with customizing rights reach every session, all others only their own. “CustomizersOnly”: without customizing rights, the menu entry is not displayed. “Disabled”: the menu entry is not displayed for anyone |
|
|
string |
%ApplicationFilesPath%/Logs/Sessions |
Directory for the log files and their metadata files |
|
|
long |
10485760 (10 MB) |
Size limit per session log. When it is reached, a truncation marker is appended and writing stops. With 0 or less there is no limit |
|
|
int |
7 |
Age in days after the last change from which a log and its metadata file are deleted |
|
|
int |
500 |
Maximum number of logs in the directory, including running sessions. Above it, the oldest finished logs are deleted first. A session that starts after the limit is reached gets no log |
|
|
string |
|
Serilog output format of a log line |
|
|
string |
Information |
Lowest level an event must reach to be written to the session log. A lower value also lowers the global minimum logging level and therefore affects all log sinks |
Notes
-
Set
MaxRetainedSessionswell above the number of concurrent sessions. Every page call creates a session with a log even before login. When the limit is reached, no new logs are created, and finished logs are deleted at once. -
The storage needed by the directory is at most
MaxRetainedSessions×MaxSizeBytes. Size the volume accordingly. -
Errors of session logging appear only in the container’s standard error output (stderr), not in the log itself.
Example configuration
{
"SessionLogSettings": {
"DownloadAccess": "CustomizersOnly"
}
}
Virtualization Settings
Information
-
Virtualization is used to only render what is visible on screen to improve performance.
-
The parameters must be defined within the
VirtualizationSettingsblock.
|
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
bool |
true |
Enables the virtualization feature |
OneDrive Settings
Information
-
Parameters for the OneDrive file picker, used by the Insert from OneDrive context menu entry for hyperlinks and for attachment links in the agile views.
-
The function runs in the browser and needs its own Azure app registration. The Microsoft 365 integration service is not used for it.
-
For setup in Azure, see Configure OneDrive Integration.
-
The parameters must be defined within the
OneDriveSettingsblock.
|
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
bool |
false |
Shows the Insert from OneDrive entry in the context menu of hyperlinks |
|
|
string |
|
Client ID of the Azure app registration (required) |
|
|
string |
|
ID of the Azure tenant. Used to form the login authority if |
|
|
string |
|
Optional login authority. Default: |
|
|
string |
(origin of the application) |
Optional redirect URI. Must be registered in Azure as a redirect URI for a single-page application (SPA). Set it only if the public origin differs from the one the application sees, e.g. behind a reverse proxy. |
|
|
string |
|
OneDrive/SharePoint host of the tenant, e.g. |
Repositioning Modules Settings
Information
-
This parameter enables a feature that allows module windows to be positioned anywhere within a view (e.g., within the module bar or at the edge of a panel).
-
The parameter must be defined within the
DockingSettingsblock.
|
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
bool |
false |
Enables docking, stacking as tabs, collapsing, and rearranging modules in the panel. |
Example configuration
{
"DockingSettings": {
"DockPanelEnabled": true
}
}
Status Message Settings
Information
-
This block controls how the Web Client displays the status messages sent by the server.
-
There are three display options which can be turned on and off independently of one another and filtered by status: the pop-up message at the bottom of the screen, the status chip in the module’s action bar, and the classic status bar in the lower-left corner.
-
The parameters must be defined within the
StatusMessageSettingsblock. -
In ascending order, the statuses are
Working,Info,Success,Warning, andError. Each display option shows the range fromMinimumLeveltoMaximumLevel(both limits included). If the upper limit is below the lower limit, the display option shows nothing.
|
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
bool |
false |
Allows users to change the status display options for themselves, in the User settings dialog on the Status messages page. If this dialog is not available, for example with an older database, in the Status messages settings window (PLANTA logo → ? → Status messages). Alternatively, the gear icon in the list of recent messages opens the same settings window, provided the status chip is turned on. With “false”, there is no way of accessing the settings window. All display options then correspond to the existing settings in this block. With “false”, the Status messages entry in the ? menu behind the PLANTA logo is also omitted. A menu entry that the customizing supplies for command 602 is kept. |
|
|
bool |
false |
Turns on the pop-up message at the bottom of the screen |
|
|
string |
Success |
Lowest status which is displayed as a pop-up message |
|
|
string |
Error |
Highest status which is displayed as a pop-up message |
|
|
int |
2000 |
Display duration in milliseconds. Warnings and errors remain on screen regardless of this value until the user closes them. With “0”, the message is given a close button instead of the elapsing line |
|
|
string |
Center |
Position at the bottom of the screen at which the messages appear, configurable with the values “Left”, “Center”, or “Right”. The messages are then displayed in a bar directly above the panel bar. |
|
|
int |
3 |
Number of warnings and errors which are displayed separately one below the other before older messages are stacked above them. Values below 1 are treated as 1. Can only be set per installation. The Status messages window does not offer this value. |
|
|
bool |
false |
Turns on the status chip in the module’s action bar |
|
|
string |
Working |
Lowest status which the status chip displays. A message below it leaves the current content in place |
|
|
string |
Error |
Highest status which the status chip displays. A message above it leaves the current content in place |
|
|
bool |
true |
Determines whether the classic status bar exists in the client at all. With “false”, it disappears from the user interface and from the Status messages window, and a stored user setting which refers to it is ignored. |
|
|
bool |
true |
Turns on the classic status bar. Has no effect while |
|
|
string |
Working |
Lowest status which the classic status bar displays |
|
|
string |
Error |
Highest status which the classic status bar displays |
|
|
int |
2000 |
Display duration in milliseconds, here for all statuses including warnings and errors. With “0”, the message remains until the next one replaces it. |
|
|
int |
100 |
Number of status messages a session keeps for the message log and the Messages overview. When the number is exceeded, the oldest message is dropped. The log belongs to the session on the server and is kept when the page is reloaded. Values below 1 count as 1. Can only be set per installation, because every message uses server memory as long as the session exists. |
Example configuration
Default setting, only the classic status bar displays messages:
{
"StatusMessageSettings": {
"AllowUserSettings": false,
"Toast": { "Enabled": false, "MinimumLevel": "Success", "TimeoutMs": 2000, "Placement": "Center", "CardsBeforeStacking": 3 },
"Pill": { "Enabled": false, "MinimumLevel": "Working" },
"LegacyBar": { "Available": true, "Enabled": true, "MinimumLevel": "Working", "TimeoutMs": 2000 }
}
}
Test of the new display options, counts and results in the status chip, warnings and errors as pop-up messages, user settings released:
{
"StatusMessageSettings": {
"AllowUserSettings": true,
"Toast": { "Enabled": true, "MinimumLevel": "Warning" },
"Pill": { "Enabled": true, "MinimumLevel": "Working", "MaximumLevel": "Success" },
"LegacyBar": { "Available": true, "Enabled": false }
}
}
User Settings Dialog Settings
Information
-
Defines which customizing module the Web Client shows as the User settings dialog. The customizing opens the module stored in its global setting
user_settings_module. If this setting is changed, the same module ID must be entered here. -
An empty module ID, or the ID of a module that the Web Client already shows as another dialog, hides the dialog and writes a warning to the log.
-
Prerequisites are a server release after S 39.2.3 and a database release after DB 27.1.0.
-
The parameter must be defined within the
UserSettingsDialogblock.
|
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
string |
009EAG |
Module ID of the customizing module shown as the User settings dialog |
Example configuration
{
"UserSettingsDialog": {
"ModuleCustomizingId": "009EAG"
}
}
Keyboard Settings
Information
-
Defines how the keyboard behaves in the data areas of modules.
-
With Grid navigation (“Treegrid”), the arrow keys move the selection across all cells. Editing starts by typing, pressing Enter, or F2.
-
With Classic (“Classic”), an input field selected with the keyboard can be edited at once.
-
With
AllowUserSettings, each user chooses the behavior on the Keyboard page of the User settings dialog. If this dialog is not available, for example with an older database, the user chooses via the Keyboard entry in the ? menu behind the PLANTA logo. The choice is saved per user in the browser. -
Users with a screen reader should keep Grid navigation.
-
From Web Client 4.3.0.
-
The parameters must be defined within the
KeyboardSettingsblock.
|
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
string |
Treegrid |
Behavior for all users as long as they may not choose themselves or have not chosen: “Treegrid” (Grid navigation) or “Classic” (Classic). Any other value stops the Web Client from starting with an error message. |
|
|
bool |
false |
Allows users to choose the behavior themselves. With “false”, the choice appears neither in the User settings dialog nor in the ? menu. A previously saved choice is then not applied, but not deleted. |
Example configuration
{
"KeyboardSettings": {
"DefaultBehaviour": "Classic",
"AllowUserSettings": true
}
}
Password Policy Settings
Information
-
Defines the rules a new password must meet before the Web Client sends it to the server. The rules apply in the User settings dialog and in the dialog for changing the password, also when a new password is required at login, for example after a password reset or when the password has expired.
-
Set the rules to your company’s password policy. A password that breaks the rules cannot be set via the Web Client.
-
The parameters must be defined within the
PasswordPolicyblock.
|
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
int |
10 |
Minimum number of characters of a new password. “0” sets no minimum length |
|
|
bool |
true |
A new password must contain an uppercase and a lowercase letter |
|
|
bool |
true |
A new password must contain a digit |
|
|
bool |
true |
A new password must contain a character that is neither a letter nor a digit |
Example configuration
{
"PasswordPolicy": {
"MinimumLength": 10,
"RequireUpperAndLowerCase": true,
"RequireDigit": true,
"RequireSpecialCharacter": true
}
}
Chart Export Settings
Information
-
Parameters to control chart export functionality.
-
The parameters must be defined within the
ChartExportSettingsblock.
|
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
int |
4 |
Scale factor for exported chart images. Higher values produce higher-resolution images but increase file size. |
|
|
int |
60 |
Maximum number of chart exports allowed per minute (rate limiting). |
|
|
int |
15728640 |
Maximum file size for exported chart images, in bytes (default is 15 MB). |
Example configuration
{
"ChartExportSettings": {
"ExportScaleFactor": 4,
"MaxUploadsPerMinute": 60,
"MaxFileSizeBytes": 15728640
}
}
Page Size Settings
Information
-
Parameters for configuring custom page sizes for PDF export.
-
The parameter must be defined within the
PaperFormatSettingsblock.
|
Parameter |
Type |
Default |
Description |
From/Up to Version |
|---|---|---|---|---|
|
|
array |
|
List of custom page size configurations. Each format must include a localized name and dimensions in millimeters. |
|
Define parameters within an array
{
"PaperFormatSettings": {
"Formats": [
{
"Name": {
"de": "A0",
"en": "A0",
"fr": "A0",
"pt": "A0"
},
"Size": {
"Width": 841,
"Height": 1189
}
},
{
"Name": {
"de": "Tabloid",
"en": "Tabloid (11x17 in)",
"fr": "Tabloïd",
"pt": "Tablóide"
},
"Size": {
"Width": 279,
"Height": 432
}
}
]
}
}
Logging Settings
Information
-
The PLANTA Web Client uses Serilog for logging.
-
Serilog uses so-called “sinks” for showing logs. The Web Client currently supports the following sinks:
-
Console
-
File
-
Metrics Settings
Information
-
Parameters to configure the Prometheus metrics endpoint and telemetry.
-
The parameters must be defined within the
MetricsSettingsblock.
|
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
string |
/metrics |
The Prometheus endpoint path for metrics scraping. Configure this to change the URL where metrics are exposed. |
|
|
string |
planta_webclient_metrics |
Name of the custom OpenTelemetry meter for application metrics. This identifies the meter in OpenTelemetry. |
|
|
string |
planta_webclient_ |
Prefix to add to custom application metrics names. This helps identify custom metrics from this application in monitoring systems. Note: Default system metrics (ASP.NET Core, Runtime, HTTP Client) do not use this prefix. |
Example configuration:
{
"MetricsSettings": {
"PrometheusEndpoint": "/custom-metrics",
"MeterName": "my_application_metrics",
"MetricsPrefix": "my_app_"
}
}
Change Host URL
Information
-
ASP.NET Core applications use ports 5000 (http) and 5001 (https) by default.
-
With the
Urlsparameter it can be overwritten as follows:
|
JSON: |
Command line: |
|
JavaScript
|
|