UI configuration options#
This documentation applies to Piler enterprise edition 2.0.0
Revision #1
Publication date: 2025-SEP-09
PILER_KEY#
Default value: /etc/piler/piler.key
Description: Path to the private key file used by Piler for signing and cryptographic operations.
RETRIEVER_METHOD#
Default value: direct
Description: Defines how archived emails are retrieved. Options:
direct: Read directly from storage. piler-ui only needs read access, and the store should be read-only for it, even though it runs as the samepileruser as the piler daemon:- Docker: mount the store volumes into the piler-ui container with
:ro. - Host installation: the
piler-ui.servicesystemd unit hasReadOnlyPaths=/var/piler/store /var/piler/astore .... systemd mounts these directories read-only for piler-ui only, while the piler daemon writes them. It applies when piler-ui is started by systemd. If you store the emails elsewhere (PILER_STORE_DIR,PILER_ASTORE_DIR), add those directories toReadOnlyPaths=of piler-ui with a drop-in (systemctl edit piler-ui), and toReadWritePaths=of the piler daemon (systemctl edit piler): its unit allows writes only to the directories listed there.
- Docker: mount the store volumes into the piler-ui container with
s3: Retrieve from Amazon S3 or compatible storagesocket: Use the retrieverd daemon through a UNIX domain socket. Not recommended for new installations, and it will be phased out in a future release. Existing installations should move todirectwith a read-only store, or tos3.
LOG_LEVEL#
Default value: INFO
Description: Sets the logging verbosity level. Possible values: DEBUG, INFO, WARN, ERROR.
LOG_FORMAT#
Default value: json
Description: Output format of logs. Options: json, plain.
USERNAME#
Default value: ""
Description: Username for the UI to run when started as root.
LICENSE_FILE#
Default value: ./license.jwt
Description: Path to the license file containing a signed license token.
LISTEN_ADDR#
Default value: :3000
Description: Address and port where the Fiber web application will listen for HTTP requests.
TRUSTED_PROXIES#
Default value: 127.0.0.1
Description: Comma-separated list of trusted proxy IP addresses for handling forwarded headers.
PROXY_HEADER#
Default value: X-Forwarded-For
Description: HTTP header used to extract the real client IP address when behind a proxy.
RETRIEVER_SOCKET#
Default value: /var/piler/sockets/retriever.sock
Description: Path to the UNIX domain socket used when RETRIEVER_METHOD=socket
(retrieverd, not recommended and to be phased out, see RETRIEVER_METHOD).
MYSQL_USER#
Default value: piler
Description: MySQL database username.
MYSQL_PASSWORD#
Default value: piler123
Description: MySQL database password.
MYSQL_HOST#
Default value: localhost:3306
Description: Host and port of the MySQL server.
MYSQL_MAX_OPEN_CONN#
Default value: 50
Description: Maximum number of open MySQL connections per child process.
MYSQL_MAX_IDLE_CONN#
Default value: 20
Description: Maximum number of idle MySQL connections in the connection pool.
MYSQL_CONN_MAX_LIFETIME#
Default value: 300s
Description: Maximum lifetime of a MySQL connection before it is recycled.
MYSQL_USE_TLS#
Default value: false
Description: Enable TLS for the connection to MySQL/MariaDB.
MYSQL_TLS_CA_CERT#
Default value: ""
Description: Path to a CA certificate file, used to verify a self-signed or custom CA when MYSQL_USE_TLS is enabled.
MYSQL_TLS_SKIP_VERIFY#
Default value: false
Description: Skip verification of the MySQL server's TLS certificate. Only use for testing.
DSN#
Default value: piler:piler123@tcp(127.0.0.1:3306)/?parseTime=true
Description: MySQL connection DSN used by the MS Teams archiving module. The main application's own database connection is still assembled from MYSQL_USER, MYSQL_PASSWORD and MYSQL_HOST.
MANTICORE_DSN#
Default value: piler:piler123@tcp(localhost:9306)/?parseTime=true
Description: DSN for connecting to Manticore search engine (read/write).
MANTICORE_READONLY_DSN#
Default value: piler:piler123@tcp(localhost:9307)/?parseTime=true
Description: DSN for connecting to Manticore search engine (read-only).
REDIS_ADDR#
Default value: 127.0.0.1:6379
Description: Redis server address.
TENANT_RATE_LIMIT_PER_MINUTE#
Default value: 20000
Description: Maximum number of requests allowed per tenant per minute.
IO_RATE_LIMIT_PER_ROUTE#
Default value: 200
Description: I/O rate limit for routes that retrieves emails or attachments from the storage, eg. view, download, attachments (requests per second).
DEV_MODE#
Default value: false
Description: Enables development mode with relaxed security and verbose logging.
NODE_TYPE#
Default value: master
Description: Role of the current node in a multi-node setup. Options: master, worker.
WORKERS#
Default value: ""
Description: List of worker node addresses (for multi-node setups).
STANDBY_NODES#
Default value: ""
Description: List of standby node addresses, used for multi-node high-availability failover.
JWT_SECRET#
Default value: ""
Description: Secret key used to sign JWT tokens.
SESSION_DURATION#
Default value: 3h
Description: How long an authenticated user session remains valid before requiring re-login.
ENABLE_CATEGORY#
Default value: true
Description: Enable or disable category handling in the UI.
ENABLE_REDACT#
Default value: true
Description: Enable or disable text redaction in the UI.
LANGUAGES#
Default value: de,en,es,fr,it,zh
Description: List of supported UI languages.
LOCALE#
Default value: en-US
Description: Default locale used for formatting dates and text.
LOGIN_LOGO#
Default value: /assets/images/login-logo.svg
Description: Path to the logo displayed on the login page.
HEADER_LOGO#
Default value: /assets/images/logo-header.svg
Description: Path to the logo displayed in the application header.
TOAST_LOGO#
Default value: /assets/images/logo-round.svg
Description: Path to the logo used in toast notifications.
HEADER_LINK#
Default value: ""
Description: Custom link displayed in the application header.
HEADER_LINK_TITLE#
Default value: ""
Description: Title text for the header link.
MAX_CONTENT_LENGTH_TO_DISPLAY#
Default value: 30000
Description: Maximum content size (in bytes) to render in the UI. Longer messages are truncated in the message preview, but other than that the message is still intact.
RT_INDEX#
Default value: true
Description: Enable or disable real-time indexing.
EXTRA_NOTES#
Default value: ""
Description: Custom notes displayed in the login page.
MULTITENANCY#
Default value: false
Description: Enable or disable multi-tenant mode.
MULTINODES#
Default value: false
Description: Enable or disable multi-node mode.
CSS#
Default value:
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css">
<link rel="stylesheet" href="/assets/css/style.css">
Description: Built-in CSS includes for styling the UI.
CUSTOM_CSS#
Default value: ""
Description: Custom CSS overrides for the UI.
LEADER_ELECTION_ENABLED#
Default value: false
Description: Enable Redis-based leader election, used to coordinate scheduled/background jobs in multi-master deployments so only one node runs them at a time.
LEADER_REDIS_KEY#
Default value: piler:leader
Description: Redis key used to hold the leader lock.
LEADER_LOCK_TTL#
Default value: 30s
Description: Time-to-live of the leader lock. If the current leader fails to renew it within this time, another node can take over.
LEADER_RENEW_INTERVAL#
Default value: 10s
Description: Interval at which the current leader renews its lock.
LEADER_RETRY_INTERVAL#
Default value: 5s
Description: Interval at which non-leader nodes retry to acquire leadership.
ENABLE_SLACK#
Default value: false
Description: Internal flag automatically set to true when the license includes the slack feature. Not intended to be set directly.
ADMIN_GROUP#
Default value: ""
Description: LDAP or SSO group mapped to administrators.
AUDITOR_GROUP#
Default value: ""
Description: LDAP or SSO group mapped to auditors.
RESTRICTED_AUDITOR_GROUP#
Default value: ""
Description: LDAP or SSO group mapped to restricted auditors.
DATAOFFICER_GROUP#
Default value: ""
Description: LDAP or SSO group mapped to data officers.
ENABLE_GOOGLE_AUTH#
Default value: false
Description: Enable Google OAuth2 authentication.
GOOGLE_CLIENT_ID#
Default value: ""
Description: Google OAuth2 client ID.
GOOGLE_CLIENT_SECRET#
Default value: ""
Description: Google OAuth2 client secret.
GOOGLE_REDIRECT_URL#
Default value: ""
Description: Redirect URL for Google OAuth2 login.
ENABLE_AZURE_AUTH#
Default value: false
Description: Enable Microsoft Azure OAuth2 authentication.
AZURE_CLIENT_ID#
Default value: ""
Description: Azure OAuth2 client ID.
AZURE_CLIENT_SECRET#
Default value: ""
Description: Azure OAuth2 client secret.
AZURE_TENANT_ID#
Default value: ""
Description: Azure Active Directory tenant ID.
AZURE_REDIRECT_URL#
Default value: ""
Description: Redirect URL for Azure OAuth2 login.
ENABLE_GENERIC_OAUTH_AUTH#
Default value: false
Description: Enable generic OAuth2 authentication.
GENERIC_OAUTH_CLIENT_ID#
Default value: ""
Description: Client ID for generic OAuth2 provider.
GENERIC_OAUTH_CLIENT_SECRET#
Default value: ""
Description: Client secret for generic OAuth2 provider.
GENERIC_OAUTH_REDIRECT_URL#
Default value: ""
Description: Redirect URL for generic OAuth2 login.
GENERIC_OAUTH_AUTH_URL#
Default value: ""
Description: Authorization URL for generic OAuth2 provider.
GENERIC_OAUTH_TOKEN_URL#
Default value: ""
Description: Token URL for generic OAuth2 provider.
GENERIC_OAUTH_USERINFO_URL#
Default value: ""
Description: User info URL for generic OAuth2 provider.
ENABLE_AUTHENTICATOR#
Default value: true
Description: Enable TOTP authenticator usage for 2FA.
ENABLE_PASSKEY#
Default value: false
Description: Enable WebAuthn/passkey-based login as a 2FA/authentication method.
DATE_FORMAT#
Default value: YYYY/MM/DD
Description: Default date format used in the UI.
TIMEZONE#
Default value: Europe/Budapest
Description: Default timezone used by the application.
MAX_DOWNLOAD_MESSAGES#
Default value: 100
Description: Maximum number of messages that can be downloaded at once.
MAX_PURGE_BATCH_SIZE#
Default value: 1000
Description: Maximum number of messages deleted in a single purge batch.
SMARTHOST#
Default value: ""
Description: SMTP relay host (smarthost) used for restoring emails.
SMARTHOST_PORT#
Default value: ""
Description: Port number for the smarthost.
SMTP_USERNAME#
Default value: ""
Description: Username used to authenticate with the smarthost, if required.
SMTP_PASSWORD#
Default value: ""
Description: Password used to authenticate with the smarthost, if required.
SMTP_USE_TLS#
Default value: false
Description: Connect to the smarthost using implicit TLS.
SMTP_USE_STARTTLS#
Default value: false
Description: Upgrade the smarthost connection to TLS using STARTTLS.
SMTP_SKIP_VERIFY#
Default value: false
Description: Skip verification of the smarthost's TLS certificate. Only use for testing.
NOREPLY_EMAIL_ADDRESS#
Default value: no-reply@archive.example.com
Description: Default "no-reply" email address for the UI when restoring email messages.
ENABLE_LDAP_AUTH#
Default value: false
Description: Enable LDAP authentication.
LDAP_HOST#
Default value: ""
Description: LDAP server host and port.
LDAP_BASE_DN#
Default value: ""
Description: Base DN for LDAP searches.
LDAP_BIND_DN#
Default value: ""
Description: Bind DN used for LDAP authentication.
LDAP_BIND_PASSWORD#
Default value: ""
Description: Password for LDAP bind DN.
LDAP_ACCOUNT_OBJECTCLASS#
Default value: ""
Description: LDAP object class for user accounts.
LDAP_ACCOUNT_MAIL_ATTR#
Default value: ""
Description: LDAP attribute for user email addresses.
LDAP_ACCOUNT_USERID_ATTR#
Default value: ""
Description: LDAP attribute for user ID.
LDAP_ACCOUNT_USERNAME_ATTR#
Default value: ""
Description: LDAP attribute for username.
LDAP_DISTRIBUTIONLIST_OBJECTCLASS#
Default value: ""
Description: LDAP object class for distribution lists.
LDAP_DISTRIBUTIONLIST_MAIL_ATTR#
Default value: ""
Description: LDAP attribute for distribution list email addresses.
LDAP_USE_TLS#
Default value: true
Description: Use TLS (LDAPS) when connecting to the LDAP server.
ENABLE_IMAP_AUTH#
Default value: false
Description: Enable IMAP authentication.
RESTORE_OVER_IMAP#
Default value: true
Description: Allow restoring messages to user mailboxes over IMAP.
IMAP_SERVER#
Default value: ""
Description: IMAP server address.
IMAP_FOLDER#
Default value: INBOX
Description: IMAP folder where restored emails are delivered.
IMAP_USE_TLS#
Default value: true
Description: Use TLS for IMAP connections.
IMAP_ENCRYPT_KEY#
Default value: ""
Description: Key used to encrypt/decrypt stored IMAP authentication credentials.
ENABLE_POP3_AUTH#
Default value: false
Description: Enable POP3 authentication.
POP3_SERVER#
Default value: ""
Description: POP3 server address.
POP3_USE_TLS#
Default value: true
Description: Use TLS for POP3 connections.
MAILCOW_HOST#
Default value: ""
Description: Mailcow server address.
MAILCOW_API_KEY#
Default value: ""
Description: API key for Mailcow integration.
CAUTION_TEXT#
Default value:
Caution: This message was sent from outside the company.<br />Please do not click links or open attachments unless you<br />recognize the source of this email and know the content is safe!
Description: Warning banner displayed on external messages.
GOTENBERG_ADDR#
Default value: ""
Description: Address of Gotenberg service used for document PDF export.
ENABLE_EXPORT#
Default value: true
Description: Enable export functionality for messages.
MIN_SIZE_TO_ENABLE_EXPORT#
Default value: 10000000000
Description: Minimum storage size (bytes) required before export is enabled.
MAX_EXPORT_MESSAGES#
Default value: 20000
Description: Maximum number of messages included in a single export.
MAX_EXPORT_SIZE_BYTES#
Default value: 5368709120 (5 GB)
Description: Maximum total size (in bytes) of a single export job.
EXPORT_TIMEOUT#
Default value: 300s
Description: Timeout duration for export jobs.
ADMIN_CAN_MANAGE_EXPORTS#
Default value: true
Description: Allow administrators to manage export jobs.
DIR_EXPORT#
Default value: /var/piler/export
Description: Directory where exported files are stored.
EXPORT_WARNING_TEXT#
Default value:
Exported files will be auto removed in 7 days. Please download them in their scheduled period
Description: Warning text shown to users about export retention.
EDISCOVERY_MAX_GLOBAL_EXPORTS#
Default value: 3
Description: Maximum number of eDiscovery export jobs that can run concurrently across the whole instance.
EDISCOVERY_MAX_TENANT_EXPORTS#
Default value: 1
Description: Maximum number of eDiscovery export jobs that can run concurrently for a single tenant.
EDISCOVERY_WORKERS#
Default value: 4
Description: Number of worker goroutines processing eDiscovery export jobs.
ENABLE_DELETE#
Default value: false
Description: Enable delete functionality for messages.
NEED_TO_APPROVE_DELETE#
Default value: false
Description: Require data officer approval before message deletion.
ENABLE_DELETE_FOR_USERS#
Default value: false
Description: Allow non-admin users (not just admins/data officers) to delete their own messages, when ENABLE_DELETE is also enabled. A user can only ask for the removal of the messages they are the sender or a recipient of, and the request always has to be approved by a data officer, whatever NEED_TO_APPROVE_DELETE is.
Removal settings in a multi-node setup#
Set ENABLE_DELETE, NEED_TO_APPROVE_DELETE and ENABLE_DELETE_FOR_USERS to the same values on the master and on every worker.
The messages are on the workers, so the master passes each step on to the worker that has the message:
- A removal request is recorded on the worker of the message, then on the master. The worker applies its own settings to it: if removal is not enabled there, the request fails with an error.
- While a request is pending, the data officer can open the message to review it.
- The decision of the data officer (approve or reject) is carried out by the worker of the message, then recorded on the master. If the worker can't be reached, the request stays pending.
A data officer can only approve or reject a message that has a pending removal request.
APP_TRACE_NAME#
Default value: ""
Description: Application trace name (used for distributed tracing).
TRACE_ADDR#
Default value: ""
Description: Trace collector address (e.g., OpenTelemetry backend).
TURNSTILE_SITE_KEY#
Default value: ""
Description: Cloudflare Turnstile site key.
TURNSTILE_SECRET_KEY#
Default value: ""
Description: Cloudflare Turnstile secret key.
TIKA_URL#
Default value: http://127.0.0.1:9998/tika
Description: Apache Tika server endpoint for content extraction.
HEADER_LINE_TO_HIDE#
Default value: ""
Description: Comma separated Email header lines (without the colon!) to hide in the UI.
Example: HEADER_LINE_TO_HIDE=Received,Delivered-To#
SPAM_HEADER_LINE#
Default value: X-Spam-Flag: YES
Description: Email header line (name and value) used to detect whether a message was flagged as spam.
SAML_CERT_FILE#
Default value: saml.crt
Description: Path to the SAML certificate file.
SAML_KEY_FILE#
Default value: saml.key
Description: Path to the SAML private key file.
SAML_METADATA_URL#
Default value: ""
Description: Metadata URL for SAML IdP.
TSA_PUBLIC_KEY_FILE#
Default value: ""
Description: Path to public key used to verify timestamp authority signatures.
JWT_ED25519_PUBLIC_KEYS_DIR#
Default value: ""
Description: Directory containing ED25519 public keys for validating externally-issued JWT tokens (external JWT authentication).
CONTENT_SECURITY_POLICY#
Default value:
default-src 'self'; script-src 'self' 'unsafe-eval' 'sha256-ZswfTY7H35rbv8WC7NXBoiC7WNu86vSzCDChNWwZZDM='
'sha256-Sc84R3QT4gTYLl5M2SIYCramZDi3OcEjJiog35/7ydU=' https://cdn.jsdelivr.net https://challenges.cloudflare.com ;
style-src 'self' https://cdn.jsdelivr.net; img-src 'self' data: https://cdn.jsdelivr.net https://challenges.cloudflare.com;
font-src 'self' https://cdn.jsdelivr.net; frame-src https://challenges.cloudflare.com; connect-src 'self';
object-src 'none'; base-uri 'none'; form-action 'self'; frame-ancestors 'none';
Description: Content Security Policy (CSP) header applied by the application.
S3_ENDPOINT#
Default value: ""
Description: S3-compatible storage endpoint, eg. s3.eu-central-003.backblazeb2.com
S3_ACCESS_KEY#
Default value: ""
Description: Access key for S3 storage.
S3_SECRET_KEY#
Default value: ""
Description: Secret key for S3 storage.
S3_USE_SSL#
Default value: true
Description: Enable SSL/TLS for S3 connections.
S3_REGION#
Default value: ""
Description: S3 region name.
S3_BUCKET_PREFIX#
Default value: ""
Description: Prefix applied to S3 buckets.
S3_USE_SUBDIRS#
Default value: true
Description: Store objects in subdirectories within the S3 bucket.
S3_RETRY_MAX_ATTEMPTS#
Default value: 3
Description: Maximum retry attempts when the scanner encounters a missing S3 object.
S3_RETRY_INITIAL_DELAY#
Default value: 2s
Description: Initial delay between S3 retry attempts; doubles after each attempt.
DEMO_MODE#
Default value: false
Description: Enable demo mode with restricted functionality.
ALLOWED_CIDRS#
Default value: 127.0.0.0/8,172.18.0.0/16,172.19.0.0/16,172.20.0.0/16
Description: Defines CIDR blocks allowed to access the /metrics and /healthz endpoints.
BILLING_SERVER_URL#
Default value: https://billing1.mailpiler.com,https://billing2.mailpiler.com
Description: Comma-separated list of billing/telemetry server URLs that encrypted usage reports are POSTed to.
AFTTER_START_REPORT_DELAY#
Default value: 600s
Description: Delay after application startup before the first telemetry report is sent. (Note: the variable name retains a typo from the original implementation.)
ANALYTICS_ENABLED#
Default value: true
Description: Enable collection of analytics data used by the dashboard and billing reports.
ANALYTICS_SYNC_INTERVAL#
Default value: 3600s
Description: Interval at which the analytics background worker syncs aggregated usage data.
QUOTA_NOTIFICATION_INTERVAL#
Default value: 86400s
Description: Interval at which the quota-notification background worker checks and sends storage/usage quota notifications.
METRICS_AGGREGATOR_DELAY#
Default value: 60s
Description: Delay between processing each tenant while aggregating health metrics (not a total run duration).
SMART_INSIGHTS_ENABLED#
Default value: false
Description: Enable the Smart Insights scanner, which detects sensitive information (SSN, credit card, IBAN, passport, etc.) in archived emails. See docs/SCANNER-CONFIGURATION-GUIDE.md.
SCAN_ATTACHMENTS#
Default value: false
Description: Also scan message attachments (not just body text) for sensitive information.
SCAN_RATE_LIMIT#
Default value: 100
Description: Maximum scanner throughput, in messages per second.
MIN_CONFIDENCE#
Default value: 0.80
Description: Minimum detector confidence score (0.0-1.0) required for a Smart Insights match to be reported.
ENABLED_DETECTORS#
Default value: ssn,credit_card,passport,iban
Description: Comma-separated list of Smart Insights detectors to run. The SSN detector has a high false-positive rate in technical environments; consider disabling it there (see docs/SCANNER-CONFIGURATION-GUIDE.md).
SECURITY_RISK_ENABLED#
Default value: false
Description: Enable security risk scoring for scanned messages.
RISK_ALERT_THRESHOLD#
Default value: 60
Description: Security risk score (0-100) above which an alert (email/SIEM) is triggered.
COMPLIANCE_RISK_ENABLED#
Default value: false
Description: Enable compliance risk scoring for scanned messages.
COMPLIANCE_ALERT_THRESHOLD#
Default value: 50
Description: Compliance risk score (0-100) above which an alert (email/SIEM) is triggered.
PERCOLATE_CATEGORIES_ENABLED#
Default value: false
Description: Enable percolate-query-based automatic categorization of messages during scanning.
SCANNER_THREADS#
Default value: 1
Description: Number of worker threads used by the scanner to process messages in parallel.
ML_PHISHING_ENABLED#
Default value: false
Description: Enable the dependency-free Go-based ML phishing detector.
ML_PHISHING_MODEL_PATH#
Default value: /var/piler/models/phishing_detector.json
Description: Path to the phishing detection model file.
ML_PHISHING_THRESHOLD#
Default value: 0.5
Description: Confidence threshold (0.0-1.0) above which a message is flagged as phishing.
SEMANTIC_SEARCH_*#
The semantic search settings are described on the Semantic search page.
CAPACITY_WARNING_THRESHOLD_GB#
Default value: 1024 (1 TB)
Description: Total stored-data size, in GB, above which a capacity warning is shown in provider/tenant analytics.
LLM_BASE_URL#
Default value: http://localhost:11434
Description: Base URL of the Ollama (or compatible) API used for LLM-powered features such as message summarization.
LLM_MODEL#
Default value: llama3.1:8b
Description: Model name used for LLM summarization requests.
LLM_ENABLED#
Default value: false
Description: Enable LLM-powered features (e.g. message summarization, natural-language search).
LLM_CACHE_EXPIRY_MINUTES#
Default value: 15
Description: Redis cache expiry, in minutes, for LLM-generated results.
NL2QUERY_PROMPT_FILE#
Default value: ""
Description: Path to a custom prompt template used to translate natural-language search input into Manticore search syntax. Leave empty to use the embedded default prompt.
TEAMS_ENABLED#
Default value: false
Description: Enable Microsoft Teams message archiving.
TEAMS_ATTACHMENT_STORAGE#
Default value: local
Description: Storage backend for Teams attachments: local (filesystem) or s3.
TEAMS_S3_ENDPOINT#
Default value: ""
Description: S3-compatible endpoint used for Teams attachment storage, when TEAMS_ATTACHMENT_STORAGE=s3.
TEAMS_S3_BUCKET_PREFIX#
Default value: ""
Description: Prefix prepended to the Teams S3 bucket name, e.g. acme- → bucket acme-teams-<tenantID>.
TEAMS_S3_BUCKET#
Default value: teams
Description: Base bucket name used for Teams attachment storage (combined with the prefix and tenant ID).
TEAMS_S3_ACCESS_KEY#
Default value: ""
Description: Access key for Teams attachment S3 storage.
TEAMS_S3_SECRET_KEY#
Default value: ""
Description: Secret key for Teams attachment S3 storage.
TEAMS_S3_USE_SSL#
Default value: true
Description: Enable SSL/TLS for Teams attachment S3 connections.
TEAMS_S3_REGION#
Default value: us-east-1
Description: S3 region used for Teams attachment storage.
TEAMS_RETENTION_ENABLED#
Default value: false
Description: Enable automatic deletion of Teams messages/attachments once their retention period expires.
TEAMS_RETENTION_DAYS#
Default value: 2555 (7 years)
Description: Number of days Teams messages/attachments are retained before automatic deletion.
TEAMS_RETENTION_CHECK_INTERVAL#
Default value: 86400s
Description: Interval at which the Teams retention job checks for expired data.
SLACK_ENABLED#
Default value: false
Description: Enable the Slack archiving UI and related settings panel.
SLACK_WORKSPACE_ID#
Default value: ""
Description: ID of the Slack workspace being archived.
SLACK_APP_ID#
Default value: ""
Description: Slack App ID used for the archiving integration.
SLACK_BOT_TOKEN#
Default value: ""
Description: Slack bot token used by the Slack collector to access workspace data.
SLACK_USER_TOKEN#
Default value: ""
Description: Slack user token used by the Slack collector, where elevated/user-level scopes are required.
SLACK_SYNC_INTERVAL_MINUTES#
Default value: 10
Description: Interval, in minutes, at which the Slack collector syncs new messages.
SLACK_ARCHIVE_CHANNELS#
Default value: true
Description: Archive public/private channel conversations.
SLACK_ARCHIVE_DMS#
Default value: true
Description: Archive direct messages (1:1 conversations).
SLACK_ARCHIVE_GROUP_DMS#
Default value: true
Description: Archive group direct messages (multi-person DMs).
SLACK_DOWNLOAD_FILES#
Default value: true
Description: Download and archive files shared in Slack conversations.
SLACK_ATTACHMENT_STORAGE#
Default value: file
Description: Storage backend for Slack attachments: file (filesystem) or s3.
SLACK_ATTACHMENT_PATH#
Default value: /var/piler/slack
Description: Local filesystem path used to store Slack attachments, when SLACK_ATTACHMENT_STORAGE=file.
SLACK_S3_ENDPOINT#
Default value: ""
Description: S3-compatible endpoint used for Slack attachment storage, when SLACK_ATTACHMENT_STORAGE=s3.
SLACK_S3_BUCKET_PREFIX#
Default value: ""
Description: Prefix prepended to the Slack S3 bucket name, e.g. acme- → bucket acme-slack-<tenantID>.
SLACK_S3_BUCKET#
Default value: slack
Description: Base bucket name used for Slack attachment storage (combined with the prefix and tenant ID).
SLACK_S3_ACCESS_KEY#
Default value: ""
Description: Access key for Slack attachment S3 storage.
SLACK_S3_SECRET_KEY#
Default value: ""
Description: Secret key for Slack attachment S3 storage.
SLACK_S3_USE_SSL#
Default value: true
Description: Enable SSL/TLS for Slack attachment S3 connections.
SLACK_S3_REGION#
Default value: us-east-1
Description: S3 region used for Slack attachment storage.
SLACK_PARALLEL_CONVERSATIONS#
Default value: 3
Description: Number of Slack conversations whose history is fetched concurrently during sync.
SLACK_PARALLEL_THREADS#
Default value: 5
Description: Number of Slack thread-reply fetches performed concurrently during sync.
SLACK_PARALLEL_FILES#
Default value: 3
Description: Number of Slack file downloads performed concurrently during sync.
SLACK_RETENTION_ENABLED#
Default value: false
Description: Enable automatic deletion of Slack messages/files once their retention period expires.
SLACK_RETENTION_DAYS#
Default value: 2555 (7 years)
Description: Number of days Slack messages/files are retained before automatic deletion.
SLACK_RETENTION_CHECK_INTERVAL#
Default value: 86400s
Description: Interval at which the Slack retention job checks for expired data.
SHOW_USER_SETTINGS#
Default value: true
Description: Show the user settings menu/page in the UI.
SHOW_LOGOUT_BUTTON#
Default value: true
Description: Show the logout button in the UI.
SHOW_IMPORT_MENU#
Default value: true
Description: Show the import menu in the UI.
OUTLOOK_ADDIN_ENABLED#
Default value: false
Description: Enable the Outlook add-in (2.2.4+), see Outlook add-in. Requires JWT_SECRET and HTTPS. Can be set per tenant.
OUTLOOK_ADDIN_BASE_URL#
Default value: ""
Description: The public URL of piler-ui used in the Outlook add-in manifest. Empty means https:// + the host the manifest is downloaded from.
OUTLOOK_ADDIN_FRAME_ANCESTORS#
Default value: https://outlook.office.com https://outlook.office365.com https://outlook.live.com https://outlook.cloud.microsoft https://*.outlook.com https://*.office.com https://*.office365.com https://*.cloud.microsoft
Description: Space separated list of the origins allowed to show the Outlook add-in pane. Append the host of an on-premises Outlook on the web (OWA).
OUTLOOK_ADDIN_RELAX_LOGIN_COOP#
Default value: true
Description: Relax the Cross-Origin-Opener-Policy header of the login pages while a sign-in started from the Outlook add-in is in progress. Needed for signing in from Outlook on the web.