Schema reference
Every management and configuration object Stalwart exposes over JMAP is documented here. Each page covers the object's fields, the JMAP methods it supports (with curl examples), the equivalent stalwart-cli commands, and where to find the object in the WebUI.
All objects below are available via the urn:stalwart:jmap capability. Their JMAP type names are prefixed with x: on the wire (for example x:Domain); this prefix is omitted in the CLI.
For telemetry data and permission identifiers referenced from this documentation, see the Events, Metrics, and Permissions pages.
Objects
| Object | Kind | Summary |
|---|---|---|
| Account | Object | Defines a user or group account for authentication and email access. |
| AccountPassword | Singleton | Password-based authentication credential. |
| AccountSettings | Singleton | Configures default account settings for locale and encryption. |
| AcmeProvider | Object | Defines an ACME provider for automatic TLS certificate management. |
| Action | Object | Defines server management actions such as reloads, troubleshooting and cache operations. |
| AddressBook | Singleton | Configures address book and contact storage settings. |
| AiModel | Object * | Defines an AI model endpoint for LLM-based features. |
| Alert | Object * | Defines an alert rule triggered by metric conditions. |
| AllowedIp | Object | Defines an allowed IP address or network range. |
| ApiKey | Object | API key credential for programmatic access. |
| AppPassword | Object | App password credential for programmatic access. |
| Application | Object | Defines a web application served by the server. |
| ArchivedItem | Object * | Represents an archived item that can be restored. |
| ArfExternalReport | Object | Stores an ARF feedback report received from an external source. |
| Asn | Singleton | Configures ASN and geolocation data sources for IP address lookups. |
| Authentication | Singleton | Configures authentication settings including password policies and default roles. |
| BlobStore | Singleton | Configures the blob storage backend for messages and files. |
| BlockedIp | Object | Defines a blocked IP address or network range. |
| Bootstrap | Singleton | Initial setup shown the first time Stalwart starts. |
| Cache | Singleton | Configures in-memory cache sizes for data, DNS records, and authorization tokens. |
| Calendar | Singleton | Configures calendar settings including iCalendar limits and default names. |
| CalendarAlarm | Singleton | Configures calendar alarm email notifications. |
| CalendarScheduling | Singleton | Configures calendar scheduling, iTIP messaging, and HTTP RSVP settings. |
| Certificate | Object | Defines a TLS certificate and its associated private key. |
| ClusterNode | Object | Represents a node in the cluster |
| ClusterRole | Object | Defines a cluster node role with enabled tasks and listeners. |
| Coordinator | Singleton | Configures the cluster coordinator for inter-node communication. |
| DataRetention | Singleton | Configures data retention policies, expunge schedules, and archival settings. |
| DataStore | Singleton | Configures the primary data store backend. |
| Directory | Object | Defines an external directory for account authentication and lookups. |
| DkimReportSettings | Singleton | Configures DKIM authentication failure report generation. |
| DkimSignature | Object | Defines a DKIM signature used to sign outgoing email messages. |
| DmarcExternalReport | Object | Stores a DMARC aggregate report received from an external source. |
| DmarcInternalReport | Object | Stores an outbound DMARC aggregate report pending delivery. |
| DmarcReportSettings | Singleton | Configures DMARC aggregate and failure report generation. |
| DnsResolver | Singleton | Configures the DNS resolver used for domain lookups. |
| DnsServer | Object | Defines a DNS server for automatic record management. |
| Domain | Object | Defines an email domain and its DNS, DKIM, and TLS certificate settings. |
| DsnReportSettings | Singleton | Configures Delivery Status Notification (DSN) report generation. |
| Singleton | Configures email message limits, encryption, compression, and default folder settings. | |
| Enterprise | Singleton | Configures enterprise licensing and branding settings. |
| EventTracingLevel | Object | Defines a custom logging level override for a specific event type. |
| FileStorage | Singleton | Configures file storage limits. |
| Http | Singleton | Configures HTTP server settings including rate limiting, CORS, and security headers. |
| HttpForm | Singleton | Configures the contact form submission endpoint. |
| HttpLookup | Object | Defines an HTTP-based lookup list. |
| Imap | Singleton | Configures IMAP protocol settings including authentication, timeouts, and rate limits. |
| InMemoryStore | Singleton | Configures the in-memory cache and lookup store. |
| Jmap | Singleton | Configures JMAP protocol limits for requests, uploads, and push notifications. |
| Log | Object | Represents a server log entry. |
| MailingList | Object | Defines a mailing list that distributes messages to a group of recipients. |
| MaskedEmail | Object * | Defines a masked email address for privacy protection. |
| MemoryLookupKey | Object | Defines an in-memory lookup key for fast data access. |
| MemoryLookupKeyValue | Object | Defines an in-memory lookup key-value pair. |
| Metric | Object | Stores a collected server metric data point. |
| Metrics | Singleton | Configures metrics collection and export via OpenTelemetry and Prometheus. |
| MetricsStore | Singleton * | Configures the storage backend for metrics data. |
| MtaConnectionStrategy | Object | Defines a connection strategy for outbound message delivery. |
| MtaDeliverySchedule | Object | Defines retry and notification intervals for message delivery. |
| MtaExtensions | Singleton | Configures SMTP protocol extensions offered to clients. |
| MtaHook | Object | Defines an MTA hook endpoint for message processing. |
| MtaInboundSession | Singleton | Configures inbound SMTP session timeouts and transfer limits. |
| MtaInboundThrottle | Object | Defines an inbound rate limit rule for SMTP connections. |
| MtaMilter | Object | Defines a Milter filter endpoint for message processing. |
| MtaOutboundStrategy | Singleton | Configures outbound message delivery routing, scheduling, and TLS strategies. |
| MtaOutboundThrottle | Object | Defines an outbound rate limit rule for message delivery. |
| MtaQueueQuota | Object | Defines a quota rule for message queues. |
| MtaRoute | Object | Defines a routing rule for outbound message delivery. |
| MtaStageAuth | Singleton | Configures SMTP authentication requirements and error handling. |
| MtaStageConnect | Singleton | Configures SMTP connection greeting and hostname settings. |
| MtaStageData | Singleton | Configures message processing rules for the SMTP DATA stage. |
| MtaStageEhlo | Singleton | Configures EHLO command requirements and validation. |
| MtaStageMail | Singleton | Configures MAIL FROM stage processing and sender validation. |
| MtaStageRcpt | Singleton | Configures RCPT TO stage processing and recipient validation. |
| MtaSts | Singleton | Configures the MTA-STS policy for the server. |
| MtaTlsStrategy | Object | Defines a TLS security strategy for outbound connections. |
| MtaVirtualQueue | Object | Defines a virtual queue for organizing outbound message delivery. |
| NetworkListener | Object | Defines a network listener for accepting incoming connections. |
| OAuthClient | Object | Defines a registered OAuth client application. |
| OidcProvider | Singleton | Configures the OAuth and OpenID Connect provider settings. |
| PublicKey | Object | Defines a public key for email encryption (OpenPGP or S/MIME). |
| QueuedMessage | Object | Represents a queued email message pending delivery. |
| ReportSettings | Singleton | Configures inbound report analysis and outbound report settings. |
| Role | Object | Defines a named set of permissions that can be assigned to accounts, groups, or tenants. |
| Search | Singleton | Configures full-text search indexing for emails, calendars, contacts, and tracing. |
| SearchStore | Singleton | Configures the full-text search backend. |
| Security | Singleton | Configures automatic IP banning rules for abuse, authentication failures, and port scanning. |
| SenderAuth | Singleton | Configures sender authentication verification including DKIM, SPF, DMARC, and ARC. |
| Sharing | Singleton | Configures sharing settings for calendars, address books, and files. |
| SieveSystemInterpreter | Singleton | Configures the system-level Sieve script interpreter settings and limits. |
| SieveSystemScript | Object | Defines a system Sieve script executed by the server. |
| SieveUserInterpreter | Singleton | Configures the user-level Sieve script interpreter settings and limits. |
| SieveUserScript | Object | Defines a global Sieve script available for user imports. |
| SpamClassifier | Singleton | Configures the spam classifier model, training parameters, and auto-learning settings. |
| SpamDnsblServer | Object | Defines a DNSBL server used for spam filtering lookups. |
| SpamDnsblSettings | Singleton | Configures DNSBL query limits for spam filtering. |
| SpamFileExtension | Object | Defines a file extension classification rule for spam filtering. |
| SpamLlm | Singleton * | Configures the LLM-based spam classifier. |
| SpamPyzor | Singleton | Configures the Pyzor collaborative spam detection service. |
| SpamRule | Object | Defines a spam filter rule for message classification. |
| SpamSettings | Singleton | Configures global spam filter thresholds, greylisting, and trust settings. |
| SpamTag | Object | Defines a score or action assigned to a spam classification tag. |
| SpamTrainingSample | Object | Stores an email sample used for spam classifier training. |
| SpfReportSettings | Singleton | Configures SPF authentication failure report generation. |
| StoreLookup | Object | Defines an external store used for lookups. |
| SystemSettings | Singleton | Configures core server settings including hostname, thread pool, and network services. |
| Task | Object | Represents a background task scheduled for execution. |
| TaskManager | Singleton | Configures task execution settings including retry strategies. |
| Tenant | Object * | Defines a tenant for multi-tenant environments with isolated resources and quotas. |
| TlsExternalReport | Object | Stores a TLS aggregate report received from an external source. |
| TlsInternalReport | Object | Stores an outbound TLS aggregate report pending delivery. |
| TlsReportSettings | Singleton | Configures TLS aggregate report generation. |
| Trace | Object * | Stores a message delivery trace with associated events. |
| Tracer | Object | Defines a logging and tracing output method. |
| TracingStore | Singleton * | Configures the storage backend for tracing data. |
| WebDav | Singleton | Configures WebDAV protocol settings including property limits and locking. |
| WebHook | Object | Defines a webhook endpoint for event notifications. |