This document lists all available options, that can be used to configure the Mesh Acta-Nova Plugin.

Configuration Options

You can configure the following properties either via environment variables or via the configuration file config.yml.

Variable Name Environment Variable Default Value Type Description

actaNovaProxyHandler

ANDP_AN_PROXY_HANDLER

false

boolean

When true, activates the /actanovaproxy/* endpoint that proxies requests to ActaNova. Successful responses (2xx) are relayed to the client; ActaNova errors return a generic 502 (details hidden); connection errors return 400.

cleanUpTasksRoot

ANDP_CLEANUP_TASKS_ROOT

/acta_nova_plugin/cleanupTasks

String

Gentics Mesh folder path used to track cleanup task execution state.

disableFormPublishing

ANDP_DISABLE_FORM_PUBLISHING

false

boolean

When true, all form-publish requests are forbidden. Form staging remains available.

andpJwtUserIdField

ANDP_JWT_USERID_FIELD

preferred_username

String

Name of the JWT token claim used as the userId in ActaNova requests.

meshProject

ANDP_MESH_PROJECT

andp

String

Name of the Gentics Mesh project the plugin is assigned to.

privateKeyPath

ANDP_PRIVATE_KEY_PATH

/uploads/andp/privatekey.key

String

File system path for the RSA private key used to sign/verify forms. Auto-generated if missing. Must point to a shared directory in clustered deployments.

publicKeyPath

ANDP_PUBLIC_KEY_PATH

/uploads/andp/publickey.key

String

File system path for the RSA public key used to sign/verify forms. Auto-generated if missing. Must point to a shared directory in clustered deployments.

userContextFieldsFromUserToken

ANDP_USERCONTEXT_FIELDS_FROM_USER_TOKEN

firstName,lastName,email,mobile

List

List of User Attributes (Keycloak Token) extracted and forwarded to ActaNova in the X-User-Context header (e.g. firstName,lastName).

userContextFieldsWhitelist

ANDP_USERCONTEXT_FIELDS_WHITELIST

culture,formID

List

List of Attributes in X-User-Context which are whitelisted and forwarded to ActaNova directly.

userRefRoot

ANDP_USERREF_ROOT

/acta_nova_plugin/userRef

String

Gentics Mesh folder path under which user reference (userref) data is stored.

actaNovaBaseUrl

MESH_PLUGIN_ACTA_NOVA_AN_BASE_URL

-

String

Required. Base URL of the ActaNova REST API.

httpTimeout

MESH_PLUGIN_ACTA_NOVA_AN_HTTP_TIMEOUT

70

int

Connection and request timeout in seconds for all HTTP calls to ActaNova.

cleanUpSecret

MESH_PLUGIN_ACTA_NOVA_CLEANUP_SECRET

-

String

Secret token required to authorize calls to the cleanup-task endpoints. Leave empty to disable the cleanup endpoints.

formsRoot

MESH_PLUGIN_ACTA_NOVA_FORMS_ROOT

/acta_nova_plugin/forms

String

Gentics Mesh folder path under which published ActaNova forms are stored.

notificationsRoot

MESH_PLUGIN_ACTA_NOVA_NOTIFICATIONS_ROOT

/acta_nova_plugin/notifications

String

Gentics Mesh folder path under which user notifications from ActaNova are stored.

publishedContentRoot

MESH_PLUGIN_ACTA_NOVA_PUBLISHED_CONTENT_ROOT

/acta_nova_plugin/publishedContent

String

Gentics Mesh folder path under which content published by ActaNova is stored.

reportsRoot

MESH_PLUGIN_ACTA_NOVA_REPORTS_ROOT

/acta_nova_plugin/requestedReports

String

Gentics Mesh folder path under which requested report documents are stored.

requiredPeerName

MESH_PLUGIN_ACTA_NOVA_REQUIRED_PEER_NAME

-

String

Required SSL client certificate common name (CN) for form-publish and notification endpoints. Leave empty to disable the check (not recommended for production).

tasksRoot

MESH_PLUGIN_ACTA_NOVA_TASKS_ROOT

/acta_nova_plugin/tasks

String

Gentics Mesh folder path under which ActaNova tasks are stored.

transactionsRoot

MESH_PLUGIN_ACTA_NOVA_TRANSACTIONS_ROOT

/acta_nova_plugin/transactions

String

Gentics Mesh folder path under which payment transactions are stored.

useFormGridWithoutComparingVersion

MESH_PLUGIN_ACTA_NOVA_USE_FORM_GRID_WITHOUT_COMPARING_VERSION

false

boolean

When true, existing form grid schemas will always be used, regardless if they were published after new form versions where published

clientAuthentication

Variable Name Environment Variable Default Value Type Description

clientAuthentication.disableVerifyHostname

``

false

boolean

clientAuthentication.caCert

MESH_PLUGIN_ACTA_NOVA_CA_CERT

-

String

The path to the CA certificate used to sign the client certificate (can be in storage or absolute)

clientAuthentication.enabled

MESH_PLUGIN_ACTA_NOVA_CLIENT_AUTH_ENABLED

false

boolean

Enable sending of client certificates

clientAuthentication.clientCert

MESH_PLUGIN_ACTA_NOVA_CLIENT_CERT

-

String

Path to the client certificate in PKCS #12 format to use (can be in storage or absolute)

clientAuthentication.clientCertPass

MESH_PLUGIN_ACTA_NOVA_CLIENT_CERT_PASS

-

String

The pass phrase for the configured client certificate

backOfficeAuthentication

Variable Name Environment Variable Default Value Type Description

backOfficeAuthentication.backOfficePublicKeyPath

MESH_PLUGIN_ACTA_NOVA_BACKOFFICE_AUTH_BACKOFFICE_PUBLIC_KEY_PATH

-

String

Path to BackOffice Public Key to validate incoming requests provided in PEM Format

backOfficeAuthentication.enabled

MESH_PLUGIN_ACTA_NOVA_BACKOFFICE_AUTH_ENABLED

false

boolean

Enable Front-Office ←→ BackOffice Authentication

backOfficeAuthentication.headerName

MESH_PLUGIN_ACTA_NOVA_BACKOFFICE_AUTH_HEADER_NAME

X-Authorization

String

Header-Name used for transmitting Authorization Info

backOfficeAuthentication.audience

MESH_PLUGIN_ACTA_NOVA_BACKOFFICE_AUTH_JWT_AUDIENCE

Back-Office

String

JWT Audience

backOfficeAuthentication.clockSkew

MESH_PLUGIN_ACTA_NOVA_BACKOFFICE_AUTH_JWT_CLOCKSKEW

10

int

JWT Validation ClockSkew in seconds

backOfficeAuthentication.issuer

MESH_PLUGIN_ACTA_NOVA_BACKOFFICE_AUTH_JWT_ISSUER

Front-Office

String

JWT Issuer

backOfficeAuthentication.subject

MESH_PLUGIN_ACTA_NOVA_BACKOFFICE_AUTH_JWT_SUBJECT

Front-Office

String

JWT Subject

backOfficeAuthentication.validity

MESH_PLUGIN_ACTA_NOVA_BACKOFFICE_AUTH_JWT_VALIDITY

300

int

JWT Validity in seconds

backOfficeAuthentication.keystorePass

MESH_PLUGIN_ACTA_NOVA_BACKOFFICE_AUTH_KEYSTORE_PASS

-

String

The pass phrase for the configured keystore

backOfficeAuthentication.keystorePath

MESH_PLUGIN_ACTA_NOVA_BACKOFFICE_AUTH_KEYSTORE_PATH

-

String

Path to the keystore in PKCS #12 format to use (can be in storage or absolute)

backOfficeAuthentication.keystorePrivateKeyPass

MESH_PLUGIN_ACTA_NOVA_BACKOFFICE_AUTH_KEYSTORE_PRIVATE_KEY_PASS

-

String

The pass phrase for the configured private Key

mail

Variable Name Environment Variable Default Value Type Description

mail.mailProjectMapping

``

{default={portalBaseUrl=${ANDP_MAIL_PORTALURL_DEFAULT}, templatePath=/templates/notificationCreated_andp_%s.hbs}}

Map

Mapping for mail Project specific settings

mail.sender

MESH_PLUGIN_ACTA_NOVA_MAIL_SENDER

noreply@gentics.com

String

E-mail address used as sender for notification e-mails

mail.sendMails

MESH_PLUGIN_ACTA_NOVA_MAIL_SEND_MAILS

false

Boolean

Do send mails on notification creation - default: false

mail.hostname

MESH_PLUGIN_ACTA_NOVA_MAIL_SMTP_HOSTNAME

-

String

The mail server hostname

mail.password

MESH_PLUGIN_ACTA_NOVA_MAIL_SMTP_PASSWORD

-

String

The mail server password

mail.port

MESH_PLUGIN_ACTA_NOVA_MAIL_SMTP_PORT

-

int

The mail server port

mail.ssl

MESH_PLUGIN_ACTA_NOVA_MAIL_SMTP_SSL

-

boolean

Whether to connect to the mail server via SSL

mail.trustAll

MESH_PLUGIN_ACTA_NOVA_MAIL_SMTP_SSL_TRUST_ALL

-

boolean

Whether to trust all SSL for the connection to the mail server

mail.username

MESH_PLUGIN_ACTA_NOVA_MAIL_SMTP_USERNAME

-

String

The mail server username

Feature Configuration

You can configure the following properties either via environment variables or via the configuration file features.yml. If you configure in the features.yml, please note that the following configs must be wrapped under features:

feature_prefill

Variable Name Environment Variable Default Value Type Description

feature_prefill.enabled

PREFILL_ENABLED

false

boolean

When true, the pre-fill feature is enabled, allowing form fields to be pre-populated from user data.

feature_languages

Variable Name Environment Variable Default Value Type Description

feature_languages.enabled

LANGUAGES_ENABLED

true

boolean

When true, multi-language support is enabled for the portal.

feature_languages.languages

LANGUAGES_LANGUAGES

de-AT,en-AT

List

List of supported language codes (e.g. de-AT,en-AT).

feature_wizard

Variable Name Environment Variable Default Value Type Description

feature_wizard.enabled

WIZARD_ENABLED

false

boolean

When true, the multi-step wizard navigation feature is enabled for forms.

feature_tos

Variable Name Environment Variable Default Value Type Description

feature_tos.enabled

TOS_ENABLED

false

boolean

When true, users must accept the Terms of Service before submitting forms.

feature_onboarding

Variable Name Environment Variable Default Value Type Description

feature_onboarding.enabled

ONBOARDING_ENABLED

false

boolean

When true, the onboarding flow feature is enabled for new users.

feature_servicecatalog

Variable Name Environment Variable Default Value Type Description

feature_servicecatalog.enabled

SERVICECATALOG_ENABLED

true

boolean

When true, the service catalog feature is enabled, listing available forms by category.

feature_servicecatalog.detailPage

SERVICE_DETAILPAGE

true

boolean

When true, individual detail pages are enabled for service catalog entries.

feature_servicecatalog.elementsTemplateName

SERVICE_ELEMENTSTEMPLATENAME

form-detail

String

Name of the Handlebars (hbs) template used to render service catalog elements.

feature_compress

Variable Name Environment Variable Default Value Type Description

feature_compress.enabled

COMPRESS_ENABLED

false

boolean

When true, HTTP response compression is enabled for the plugin API.

feature_compress.compressThresholdKBytes

COMPRESS_THRESHOLD_KBYTES

1000

int

Threshold of data size in KB - above this size compression will be active

feature_upload_constraints

Variable Name Environment Variable Default Value Type Description

feature_upload_constraints.fileExtensionsAllowed

ACTA_NOVA_PLUGIN_FEATURE_UPLOAD_CONSTRAINTS_FILE_EXTENSIONS_ALLOWED

docx,xlsx,pptx,pdf,jpg,jpeg,png,mpeg,mp3,wav,x-wav,mp4,x-matroska

List

Allowed file extensions (comma separated e.g. 'docx,xlsx') - only used for client side validation

feature_upload_constraints.fileMimeTypesAllowed

ACTA_NOVA_PLUGIN_FEATURE_UPLOAD_CONSTRAINTS_FILE_MIME_TYPES_ALLOWED

application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.presentationml.presentation,application/pdf,image/jpeg,image/png,audio/mpeg,audio/mp3,audio/wav,audio/x-wav,audio/mp4,audio/x-matroska,video/mp4,video/quicktime,video/mpeg,video/x-msvideo,video/x-matroska

List

Allowed file MIME-types (comma separated e.g. 'image/jpeg,image/png') - has precedence over fileMimeTypesNotAllowed

feature_upload_constraints.maxSizeOverall

ACTA_NOVA_PLUGIN_FEATURE_UPLOAD_CONSTRAINTS_MAX_SIZE_OVERALL

20971520

int

Max allowed file size for all files in a form

feature_upload_constraints.maxSizePerFile

ACTA_NOVA_PLUGIN_FEATURE_UPLOAD_CONSTRAINTS_MAX_SIZE_PER_FILE

5242880

int

Max allowed file size per uploaded file

feature_form_elements_with_editing_overlay

Variable Name Environment Variable Default Value Type Description

feature_form_elements_with_editing_overlay.enabled

ACTA_NOVA_PLUGIN_FEATURE_FORM_ELEMENTS_WITH_EDITING_OVERLAY_ENABLED

false

boolean

Allow configuring form elements with an editing overlay in Formgrid

feature_load_user_roles_from_acta_nova

Variable Name Environment Variable Default Value Type Description

feature_load_user_roles_from_acta_nova.enabled

ACTA_NOVA_PLUGIN_FEATURE_LOAD_USER_ROLES_FROM_ACTA_NOVA

false

boolean

When true, the user’s roles are loaded from ActaNova on each request instead of relying solely on the Keycloak token.

feature_debug

Variable Name Environment Variable Default Value Type Description

feature_debug.enabled

ANDP_DEBUG_ENABLED

false

boolean

When true, additional debug information (request body, user context, ActaNova errors) is included in API responses.

feature_formgrid

Variable Name Environment Variable Default Value Type Description

feature_formgrid.enabled

FEATURE_FORMGRID_TYPES_ENABLED

true

boolean

When true, the form grid editor feature is enabled, allowing forms to be visually arranged in a grid layout.

feature_formgrid.formgridTypes

FORMGRID_TYPES

String

formgrid types

feature_formgrid_options

Variable Name Environment Variable Default Value Type Description

feature_formgrid_options.enabled

FEATURE_FORMGRID_OPTIONS_ENABLED

true

boolean

When true, per-element configuration options are shown in the form grid editor.

feature_formgrid_options.formgridOptions

FORMGRID_OPTIONS

[{"name":"boolean","options":[{"key":"radio","name":"Variante Radio-Buttons","type":"boolean"},{"key":"button","name":"Variante Button","type":"boolean"},{"key":"buttonIsPrimary","name":"Button in PrimĂ€rfarben anzeigen?","type":"boolean","constraint":"element.formGridOptions.button === true"},{"key":"dropdown","name":"Variante Dropdown","type":"boolean"}]},{"name":"catalog","options":[{"key":"radio","name":"Variante Checkbox","type":"boolean","constraint":"this.schema.isList"},{"key":"radio","name":"Variante Radio-Buttons","type":"boolean","constraint":"!this.schema.isList"},{"key":"radioColumns","name":"Anzahl Spalten mit Checkboxen/Radio-Buttons: ","type":"dropdown","constraint":"element.formGridOptions.radio","selectOptions":[{"key":"1","value":"1"},{"key":"2","value":"2"},{"key":"3","value":"3"},{"key":"4","value":"4"}]}]},{"name":"number","options":[{"key":"numberPlaceholder","text":"<b>Formatierung Nummer</b>","name":"Platzhalter fĂŒr Nummereingabefelder","type":"string","constraint":"this.schema && this.schema.type == 'number' && this.schema.isRaw"},{"key":"numberStep","name":"ZĂ€hlschritte (Ganzzahl)","type":"string","constraint":"this.schema && this.schema.type == 'number' && this.schema.isRaw && this.schema?.precision === 0"},{"key":"numberStep","name":"ZĂ€hlschritte (Festkomma/Fliesskomma)","type":"string","constraint":"this.schema && this.schema.type == 'number' && this.schema.isRaw && this.schema?.precision !== 0"},{"key":"alignment","name":"Ausrichtung Wert: ","type":"dropdown","constraint":"this.schema && this.schema.type == 'number' && this.schema.isRaw","selectOptions":[{"key":"Links","value":"left"},{"key":"Zentriert","value":"center"},{"key":"Rechts","value":"right"}]},{"key":"alignmentUnit","name":"Ausrichtung Einheit: ","type":"dropdown","constraint":"this.schema && this.schema.type == 'number' && this.schema.isRaw","selectOptions":[{"key":"Links","value":"left"},{"key":"Zentriert","value":"center"},{"key":"Rechts","value":"right"}]}]},{"name":"aggregate","options":[{"key":"tableColumnWidthOptimized","text":"<p>Dieses Element ist eine Aggregatsliste mit Dialogformularen. Die EintrĂ€ge werden als Tabelle angezeigt.</p>","name":"Spaltenbreite auf Inhalt optimiert","type":"boolean","constraint":"isAggregateListDialogFormTable"},{"key":"tableRowMaxLineHeight","name":"Maximale Zeilenanzahl","type":"string","constraint":"isAggregateListDialogFormTable && !element.formGridOptions.tableColumnWidthOptimized"},{"key":"buttonDisplayStyle","text":"Darstellung der Funktionen: ","name":"Darstellung der Funktionen: ","type":"dropdown","constraint":"this.schema && this.schema.type == 'number' && this.schema.isRaw und this.hasUnits","selectOptions":[{"key":"Icon","value":"icon"},{"key":"Text","value":"text"},{"key":"Icon + Text","value":"icontext"}]}]}]

String

Formgrid types: JSON array defining per-element-type configuration options available in the form grid editor.

feature_multi_tenancy

Variable Name Environment Variable Default Value Type Description

feature_multi_tenancy.enabled

ANDP_MULTI_TENANCY_ENABLED

false

boolean

When true, multi-tenancy routing is enabled.

feature_form_flow

Variable Name Environment Variable Default Value Type Description

feature_form_flow.enabled

``

true

boolean

feature_form_flow.additionalFlows

FEATURE_FORMFLOW_ADDITIONALFLOWS

[]

String

Additional form flow templates to be merged with the default form flows defined in FEATURE_FORMFLOW_CONFIG.

feature_form_flow.formFlows

FEATURE_FORMFLOW_CONFIG

[ { "key": "default", "name": "Standard", "formFlowSteps": [ { "buttonText": "form_flow_btn_form", "reactClass": "FormScreen", "name": "form_flow_name_form", "description": "form_flow_desc_form", "buttonDefinition": [ { "btnComponent": "DetailInfoButton", "translateKey": "form_detailinfo", "mobileDisabled": true }, { "btnComponent": "CancelButton", "translateKey": "form_cancel" }, { "btnComponent": "PreviousPageButton", "translateKey": "form_previousPage" }, { "btnComponent": "NextPageButton", "translateKey": "form_nextPage" } ], "variables": [] }, { "buttonText": "form_flow_btn_summary", "reactClass": "SummaryScreen", "name": "form_flow_name_summary", "description": "form_flow_desc_summary", "buttonDefinition": [ { "btnComponent": "CancelButton", "translateKey": "form_cancel" }, { "btnComponent": "PrintPdfButton", "translateKey": "form_print", "mobileDisabled": true }, { "btnComponent": "PreviousPageButton", "translateKey": "form_previousPage" }, { "btnComponent": "SubmitButton", "translateKey": "form_submit" } ], "variables": [ { "name": "showDetails", "value": true } ] }, { "buttonText": "form_flow_btn_success", "reactClass": "SuccessScreen", "name": "form_flow_name_success", "description": "form_flow_desc_success", "buttonDefinition": [], "variables": [] } ] }, { "key": "no_summary", "name": "Ohne Zusammenfassung", "formFlowSteps": [ { "buttonText": "form_flow_btn_form", "reactClass": "FormScreen", "name": "form_flow_name_form", "description": "form_flow_desc_form", "buttonDefinition": [ { "btnComponent": "DetailInfoButton", "translateKey": "form_detailinfo", "mobileDisabled": true }, { "btnComponent": "CancelButton", "translateKey": "form_cancel" }, { "btnComponent": "PreviousPageButton", "translateKey": "form_previousPage" }, { "btnComponent": "NextPageButton", "translateKey": "form_nextPage" }, { "btnComponent": "SubmitButton", "translateKey": "form_submit" } ], "variables": [] }, { "buttonText": "form_flow_btn_success", "reactClass": "SuccessScreen", "name": "form_flow_name_success", "description": "form_flow_desc_success", "buttonDefinition": [], "variables": [] } ] } ]

String

defining the available form flow templates (sequences of steps such as Form → Summary → Success).

feature_app_fcm

Variable Name Environment Variable Default Value Type Description

feature_app_fcm.enabled

FCM_ENABLED

false

boolean

feature_app_fcm.notificationTranslations

FCM_TRANSLATIONS

{de-AT=Neue Nachricht von, en-AT=New message from}

Map