Account Settings
Account Settings
Account settings let you customize behavior for one account without changing the whole system. They're edited from the Account Management → Details → Settings section in the frontend and through the account settings API:
GET /accounts/{accountId}/settingsPUT /accounts/{accountId}/settings/{settingName}
This is where you currently:
- override email settings for a specific account
- choose the dashboard that should open by default for that account
- tune the size limit used when selecting files for compaction jobs
Permissions
Viewing and updating account settings requires account admin access for that account, or global admin access.
Sensitive values
Sensitive account settings are redacted on read. If you save an account email password, later reads from the UI or API won't return the stored value.
Maintenance note
This page is tied directly to the code-defined registry in
src/Logship/Service/Services/Accounts/Settings/AccountSettingStore.cs, the parsing logic insrc/Logship/Service/Services/Accounts/Models/AccountSettingValue.cs, and the code that consumes these settings. Whenever an account setting is added, removed, renamed, retyped, or its behavior changes in code, this documentation must be updated in the same change.
Quick example
Here are a few common account-level changes:
PUT /accounts/11111111-1111-1111-1111-111111111111/settings/Logship.Dashboards.Default
Authorization: Bearer <token>
Content-Type: application/json
{
"value": "operations-overview"
} PUT /accounts/11111111-1111-1111-1111-111111111111/settings/Logship.Storage.Compaction.MaxFileSize
Authorization: Bearer <token>
Content-Type: application/json
{
"value": "1 GB"
} PUT /accounts/11111111-1111-1111-1111-111111111111/settings/Logship.Communication.Email.FromAddress
Authorization: Bearer <token>
Content-Type: application/json
{
"value": "alerts@domain.com"
} How account settings work
Account settings are stored per account and returned by /accounts/{accountId}/settings.
The important part is how they interact with the rest of the system:
- account email settings override the matching system email connection values for account-scoped mail
Logship.Communication.Email.Drop.Unsent.Afteris account-scopedLogship.Dashboards.Defaultis used when loading the account landing dashboardLogship.Storage.Compaction.MaxFileSizeis used when selecting files for compaction jobs
Setting reference
| Setting | Type | Default | Sensitive | What it does |
|---|---|---|---|---|
Logship.Communication.Email.Endpoint | string | null | No | Outgoing email server and port. Example: mail.domain.com:993. |
Logship.Communication.Email.UserName | string | null | No | Outgoing email username. |
Logship.Communication.Email.Password | string | null | Yes | Outgoing email password. |
Logship.Communication.Email.FromAddress | string | null | No | Outgoing email from address. If left empty, it defaults to the username. |
Logship.Communication.Email.Drop.Unsent.After | TimeSpan | 01:00:00 | No | Age threshold after which queued unsent emails are dropped. |
Logship.Dashboards.Default | string | null | No | Dashboard identifier loaded by default for the account landing experience. |
Logship.Storage.Compaction.MaxFileSize | size | 1 GB | No | Maximum total file size target used while selecting files for compaction. |
Email overrides
These account settings are used for account-scoped mail:
Logship.Communication.Email.EndpointLogship.Communication.Email.UserNameLogship.Communication.Email.PasswordLogship.Communication.Email.FromAddress
When these are set for an account, they override the matching system email connection values for that account's outgoing mail.
That's useful when:
- one account must send through a different mail server
- one account needs a different sender identity
- one account needs separate credentials
Logship.Communication.Email.Drop.Unsent.After
This setting is also account-scoped, but it controls queue behavior rather than connection details.
It defines how old a queued email can be before Logship drops it instead of sending it.
Use a standard TimeSpan value such as:
00:15:00
01:00:00
06:00:00 If an email is older than this threshold when processing runs, the messenger service drops it.
Default dashboard
Logship.Dashboards.Default is used by the account landing page to decide which dashboard to load by default.
If the setting contains a value, the frontend attempts to load that dashboard for the current account. If it isn't set, the account falls back to the standard welcome experience.
This is a practical way to land users on an operations dashboard, a service overview dashboard, or any other dashboard your team wants to treat as the account homepage.
Compaction max file size
Logship.Storage.Compaction.MaxFileSize is read by AssignSchemaCompactionJobsTask when it selects files for compaction.
In plain English: this value limits how much data Logship will try to roll into a compaction job before it stops selecting more files.
Accepted units
This setting accepts the following suffixes:
BKBMBGB
Examples:
512 MB
1 GB
1073741824 B The parser is case-insensitive for these unit suffixes.
Common variations
Keep the shared system email connection, but change the visible sender for one account
Set only:
Logship.Communication.Email.FromAddress
Give one account a completely separate mail configuration
Set:
Logship.Communication.Email.EndpointLogship.Communication.Email.UserNameLogship.Communication.Email.PasswordLogship.Communication.Email.FromAddress
Tune compaction selection for a larger or smaller account
Adjust Logship.Storage.Compaction.MaxFileSize to change the size threshold used during compaction job selection.
Troubleshooting
I saved an account email password, but it reads back as blank
That's expected.
Sensitive account settings are redacted on read, so the stored password is not returned by the API or frontend.
Emails for this account are being dropped before they send
Check Logship.Communication.Email.Drop.Unsent.After.
If the threshold is too short for your queue and delivery pattern, older queued emails will be dropped instead of sent.
The account landing page isn't opening the dashboard I expected
Check whether Logship.Dashboards.Default is set for that account and whether it points to the dashboard you expect to load.
My compaction size value isn't being accepted
Use one of the supported size suffixes:
BKBMBGB
Safe examples are:
512 MB
1 GB Related docs
For installation-wide defaults and operational tuning, see System Settings.