# PostaOptions Properties

- Package: [CommunityToolkit.Aspire.Hosting.Posta](/reference/api/csharp/communitytoolkit.aspire.hosting.posta.md)
- Type: [PostaOptions](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postaoptions.md)
- Kind: `Properties`
- Members: `71`

Configuration options for the Posta container.

<a id="allowdowngrade"></a>

## AllowDowngrade

- Name: `AllowDowngrade`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a value indicating whether older binaries can boot against a newer database schema.

```csharp
public bool AllowDowngrade { get; set; }
```

<a id="apiurl"></a>

## ApiUrl

- Name: `ApiUrl`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the public API base URL advertised in the OpenAPI servers list.

```csharp
public string? ApiUrl { get; set; }
```

<a id="authratelimitenabled"></a>

## AuthRateLimitEnabled

- Name: `AuthRateLimitEnabled`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a value indicating whether auth rate limiting is enabled.

```csharp
public bool AuthRateLimitEnabled { get; set; }
```

<a id="autosuppressonreject"></a>

## AutoSuppressOnReject

- Name: `AutoSuppressOnReject`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a value indicating whether permanently rejected recipients are added to the suppression list.

```csharp
public bool AutoSuppressOnReject { get; set; }
```

<a id="blobfilesystempath"></a>

## BlobFileSystemPath

- Name: `BlobFileSystemPath`
- Modifiers: `get; set`
- Returns: `string`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the filesystem storage path.

```csharp
public string BlobFileSystemPath { get; set; }
```

<a id="blobprovider"></a>

## BlobProvider

- Name: `BlobProvider`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the storage backend for attachments, either s3 or filesystem.

```csharp
public string? BlobProvider { get; set; }
```

<a id="blobs3accesskey"></a>

## BlobS3AccessKey

- Name: `BlobS3AccessKey`
- Modifiers: `nullable` `get; set`
- Returns: `IResourceBuilder<ParameterResource>`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the S3 access key.

```csharp
public IResourceBuilder<ParameterResource>? BlobS3AccessKey { get; set; }
```

<a id="blobs3bucket"></a>

## BlobS3Bucket

- Name: `BlobS3Bucket`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the S3 bucket name.

```csharp
public string? BlobS3Bucket { get; set; }
```

<a id="blobs3endpoint"></a>

## BlobS3Endpoint

- Name: `BlobS3Endpoint`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the S3-compatible endpoint.

```csharp
public string? BlobS3Endpoint { get; set; }
```

<a id="blobs3pathstyle"></a>

## BlobS3PathStyle

- Name: `BlobS3PathStyle`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a value indicating whether S3 path-style addressing is used.

```csharp
public bool BlobS3PathStyle { get; set; }
```

<a id="blobs3region"></a>

## BlobS3Region

- Name: `BlobS3Region`
- Modifiers: `get; set`
- Returns: `string`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the S3 region.

```csharp
public string BlobS3Region { get; set; }
```

<a id="blobs3secretkey"></a>

## BlobS3SecretKey

- Name: `BlobS3SecretKey`
- Modifiers: `nullable` `get; set`
- Returns: `IResourceBuilder<ParameterResource>`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the S3 secret key.

```csharp
public IResourceBuilder<ParameterResource>? BlobS3SecretKey { get; set; }
```

<a id="blobs3usessl"></a>

## BlobS3UseSsl

- Name: `BlobS3UseSsl`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a value indicating whether S3 storage uses TLS.

```csharp
public bool BlobS3UseSsl { get; set; }
```

<a id="corsorigins"></a>

## CorsOrigins

- Name: `CorsOrigins`
- Modifiers: `get; set`
- Returns: `string`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the comma-separated allowed CORS origins.

```csharp
public string CorsOrigins { get; set; }
```

<a id="databaseurl"></a>

## DatabaseUrl

- Name: `DatabaseUrl`
- Modifiers: `nullable` `get; set`
- Returns: `IResourceBuilder<ParameterResource>`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a PostgreSQL connection string parameter that overrides individual database settings.

```csharp
public IResourceBuilder<ParameterResource>? DatabaseUrl { get; set; }
```

<a id="devmode"></a>

## DevMode

- Name: `DevMode`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a value indicating whether Posta stores emails without sending them.

```csharp
public bool DevMode { get; set; }
```

<a id="emailverificationrequired"></a>

## EmailVerificationRequired

- Name: `EmailVerificationRequired`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a value indicating whether users must verify their email address before sign-in.

```csharp
public bool EmailVerificationRequired { get; set; }
```

<a id="emailverifycachettlhours"></a>

## EmailVerifyCacheTtlHours

- Name: `EmailVerifyCacheTtlHours`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets how long address-level verification results are cached, in hours.

```csharp
public int EmailVerifyCacheTtlHours { get; set; }
```

<a id="emailverifyenabled"></a>

## EmailVerifyEnabled

- Name: `EmailVerifyEnabled`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a value indicating whether the email verification endpoint is enabled.

```csharp
public bool EmailVerifyEnabled { get; set; }
```

<a id="emailverifymxcachettlhours"></a>

## EmailVerifyMxCacheTtlHours

- Name: `EmailVerifyMxCacheTtlHours`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets how long domain MX lookups are cached, in hours.

```csharp
public int EmailVerifyMxCacheTtlHours { get; set; }
```

<a id="emailverifyratehourly"></a>

## EmailVerifyRateHourly

- Name: `EmailVerifyRateHourly`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the per-user hourly cap on verification requests.

```csharp
public int EmailVerifyRateHourly { get; set; }
```

<a id="embeddedworker"></a>

## EmbeddedWorker

- Name: `EmbeddedWorker`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a value indicating whether the worker runs in the server process.

```csharp
public bool EmbeddedWorker { get; set; }
```

<a id="encryptionkey"></a>

## EncryptionKey

- Name: `EncryptionKey`
- Modifiers: `nullable` `get; set`
- Returns: `IResourceBuilder<ParameterResource>`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the AES-256-GCM encryption key for stored SMTP passwords.

```csharp
public IResourceBuilder<ParameterResource>? EncryptionKey { get; set; }
```

<a id="environment"></a>

## Environment

- Name: `Environment`
- Modifiers: `get; set`
- Returns: `string`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the Posta environment name.

```csharp
public string Environment { get; set; }
```

<a id="googleoauthclientid"></a>

## GoogleOAuthClientId

- Name: `GoogleOAuthClientId`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the Google OAuth client ID for SSO login.

```csharp
public string? GoogleOAuthClientId { get; set; }
```

<a id="googleoauthclientsecret"></a>

## GoogleOAuthClientSecret

- Name: `GoogleOAuthClientSecret`
- Modifiers: `nullable` `get; set`
- Returns: `IResourceBuilder<ParameterResource>`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the Google OAuth client secret for SSO login.

```csharp
public IResourceBuilder<ParameterResource>? GoogleOAuthClientSecret { get; set; }
```

<a id="inboundenabled"></a>

## InboundEnabled

- Name: `InboundEnabled`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a value indicating whether inbound email processing is enabled.

```csharp
public bool InboundEnabled { get; set; }
```

<a id="inboundhostname"></a>

## InboundHostname

- Name: `InboundHostname`
- Modifiers: `get; set`
- Returns: `string`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the hostname announced in EHLO and used as TLS SNI.

```csharp
public string InboundHostname { get; set; }
```

<a id="inboundmaxattachsize"></a>

## InboundMaxAttachSize

- Name: `InboundMaxAttachSize`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the maximum inbound attachment size in bytes.

```csharp
public int InboundMaxAttachSize { get; set; }
```

<a id="inboundmaxmessagesize"></a>

## InboundMaxMessageSize

- Name: `InboundMaxMessageSize`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the maximum raw inbound message size in bytes.

```csharp
public int InboundMaxMessageSize { get; set; }
```

<a id="inboundsmtphost"></a>

## InboundSmtpHost

- Name: `InboundSmtpHost`
- Modifiers: `get; set`
- Returns: `string`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the bind address for the built-in SMTP receiver.

```csharp
public string InboundSmtpHost { get; set; }
```

<a id="inboundsmtpport"></a>

## InboundSmtpPort

- Name: `InboundSmtpPort`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the SMTP listener port.

```csharp
public int InboundSmtpPort { get; set; }
```

<a id="inboundsmtpratelimit"></a>

## InboundSmtpRateLimit

- Name: `InboundSmtpRateLimit`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the per-IP SMTP session rate limit.

```csharp
public int InboundSmtpRateLimit { get; set; }
```

<a id="inboundsmtpratewindow"></a>

## InboundSmtpRateWindow

- Name: `InboundSmtpRateWindow`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the SMTP rate-limit window in seconds.

```csharp
public int InboundSmtpRateWindow { get; set; }
```

<a id="inboundtlscertfile"></a>

## InboundTlsCertFile

- Name: `InboundTlsCertFile`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the PEM certificate path for inbound TLS.

```csharp
public string? InboundTlsCertFile { get; set; }
```

<a id="inboundtlskeyfile"></a>

## InboundTlsKeyFile

- Name: `InboundTlsKeyFile`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the PEM key path for inbound TLS.

```csharp
public string? InboundTlsKeyFile { get; set; }
```

<a id="inboundtlsmode"></a>

## InboundTlsMode

- Name: `InboundTlsMode`
- Modifiers: `get; set`
- Returns: `string`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the inbound SMTP TLS mode: none or starttls.

```csharp
public string InboundTlsMode { get; set; }
```

<a id="inboundwebhooksecret"></a>

## InboundWebhookSecret

- Name: `InboundWebhookSecret`
- Modifiers: `nullable` `get; set`
- Returns: `IResourceBuilder<ParameterResource>`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the shared secret for inbound webhooks.

```csharp
public IResourceBuilder<ParameterResource>? InboundWebhookSecret { get; set; }
```

<a id="metricsenabled"></a>

## MetricsEnabled

- Name: `MetricsEnabled`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a value indicating whether Prometheus metrics are enabled.

```csharp
public bool MetricsEnabled { get; set; }
```

<a id="oauthcallbackurl"></a>

## OAuthCallbackUrl

- Name: `OAuthCallbackUrl`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the OAuth callback base URL.

```csharp
public string? OAuthCallbackUrl { get; set; }
```

<a id="openapidocs"></a>

## OpenApiDocs

- Name: `OpenApiDocs`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a value indicating whether Swagger UI and ReDoc are enabled.

```csharp
public bool OpenApiDocs { get; set; }
```

<a id="planenforcement"></a>

## PlanEnforcement

- Name: `PlanEnforcement`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a value indicating whether hosted plan limits and quotas are enforced.

```csharp
public bool PlanEnforcement { get; set; }
```

<a id="ratelimitdaily"></a>

## RateLimitDaily

- Name: `RateLimitDaily`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the maximum emails per day per user.

```csharp
public int RateLimitDaily { get; set; }
```

<a id="ratelimithourly"></a>

## RateLimitHourly

- Name: `RateLimitHourly`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the maximum emails per hour per user.

```csharp
public int RateLimitHourly { get; set; }
```

<a id="redisaddress"></a>

## RedisAddress

- Name: `RedisAddress`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets an external Redis address in the form host:port.

```csharp
public string? RedisAddress { get; set; }
```

<a id="redisdatabase"></a>

## RedisDatabase

- Name: `RedisDatabase`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the Redis database number.

```csharp
public int RedisDatabase { get; set; }
```

<a id="redispassword"></a>

## RedisPassword

- Name: `RedisPassword`
- Modifiers: `nullable` `get; set`
- Returns: `IResourceBuilder<ParameterResource>`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a Redis password parameter that overrides the referenced Redis resource password.

```csharp
public IResourceBuilder<ParameterResource>? RedisPassword { get; set; }
```

<a id="redisurl"></a>

## RedisUrl

- Name: `RedisUrl`
- Modifiers: `nullable` `get; set`
- Returns: `IResourceBuilder<ParameterResource>`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets a Redis URL that overrides individual Redis settings.

```csharp
public IResourceBuilder<ParameterResource>? RedisUrl { get; set; }
```

<a id="redisusername"></a>

## RedisUsername

- Name: `RedisUsername`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the Redis username.

```csharp
public string? RedisUsername { get; set; }
```

<a id="smtprelayenabled"></a>

## SmtpRelayEnabled

- Name: `SmtpRelayEnabled`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets whether the authenticated SMTP relay is enabled.

```csharp
public bool SmtpRelayEnabled { get; set; }
```

<a id="smtprelayhost"></a>

## SmtpRelayHost

- Name: `SmtpRelayHost`
- Modifiers: `get; set`
- Returns: `string`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the SMTP relay bind address.

```csharp
public string SmtpRelayHost { get; set; }
```

<a id="smtprelayhostname"></a>

## SmtpRelayHostname

- Name: `SmtpRelayHostname`
- Modifiers: `get; set`
- Returns: `string`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the hostname announced by the SMTP relay.

```csharp
public string SmtpRelayHostname { get; set; }
```

<a id="smtprelaymaxmessagesize"></a>

## SmtpRelayMaxMessageSize

- Name: `SmtpRelayMaxMessageSize`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the SMTP relay maximum message size in bytes.

```csharp
public int SmtpRelayMaxMessageSize { get; set; }
```

<a id="smtprelayport"></a>

## SmtpRelayPort

- Name: `SmtpRelayPort`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the SMTP relay listener port.

```csharp
public int SmtpRelayPort { get; set; }
```

<a id="smtprelayratelimit"></a>

## SmtpRelayRateLimit

- Name: `SmtpRelayRateLimit`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the SMTP relay per-IP session rate limit.

```csharp
public int SmtpRelayRateLimit { get; set; }
```

<a id="smtprelayratewindow"></a>

## SmtpRelayRateWindow

- Name: `SmtpRelayRateWindow`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the SMTP relay rate-limit window in seconds.

```csharp
public int SmtpRelayRateWindow { get; set; }
```

<a id="systemsmtpencryption"></a>

## SystemSmtpEncryption

- Name: `SystemSmtpEncryption`
- Modifiers: `get; set`
- Returns: `string`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the system SMTP encryption mode: none, ssl, or starttls.

```csharp
public string SystemSmtpEncryption { get; set; }
```

<a id="systemsmtpfrom"></a>

## SystemSmtpFrom

- Name: `SystemSmtpFrom`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the system SMTP from address.

```csharp
public string? SystemSmtpFrom { get; set; }
```

<a id="systemsmtphost"></a>

## SystemSmtpHost

- Name: `SystemSmtpHost`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the system SMTP server host used for platform notifications.

```csharp
public string? SystemSmtpHost { get; set; }
```

<a id="systemsmtppassword"></a>

## SystemSmtpPassword

- Name: `SystemSmtpPassword`
- Modifiers: `nullable` `get; set`
- Returns: `IResourceBuilder<ParameterResource>`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the system SMTP password.

```csharp
public IResourceBuilder<ParameterResource>? SystemSmtpPassword { get; set; }
```

<a id="systemsmtpport"></a>

## SystemSmtpPort

- Name: `SystemSmtpPort`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the system SMTP server port.

```csharp
public int SystemSmtpPort { get; set; }
```

<a id="systemsmtpusername"></a>

## SystemSmtpUsername

- Name: `SystemSmtpUsername`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the system SMTP username.

```csharp
public string? SystemSmtpUsername { get; set; }
```

<a id="updatecheck"></a>

## UpdateCheck

- Name: `UpdateCheck`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets whether Posta checks GitHub for new releases.

```csharp
public bool UpdateCheck { get; set; }
```

<a id="webdir"></a>

## WebDir

- Name: `WebDir`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the Vue dashboard build directory.

```csharp
public string? WebDir { get; set; }
```

<a id="webhookmaxretries"></a>

## WebhookMaxRetries

- Name: `WebhookMaxRetries`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the maximum webhook delivery retry attempts.

```csharp
public int WebhookMaxRetries { get; set; }
```

<a id="webhookproxyurl"></a>

## WebhookProxyUrl

- Name: `WebhookProxyUrl`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the optional HTTP, HTTPS, or SOCKS5 proxy for webhook delivery.

```csharp
public string? WebhookProxyUrl { get; set; }
```

<a id="webhooktimeoutseconds"></a>

## WebhookTimeoutSeconds

- Name: `WebhookTimeoutSeconds`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the webhook HTTP request timeout in seconds.

```csharp
public int WebhookTimeoutSeconds { get; set; }
```

<a id="weburl"></a>

## WebUrl

- Name: `WebUrl`
- Modifiers: `nullable` `get; set`
- Returns: `string?`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the public dashboard URL.

```csharp
public string? WebUrl { get; set; }
```

<a id="workerconcurrency"></a>

## WorkerConcurrency

- Name: `WorkerConcurrency`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the number of worker goroutines.

```csharp
public int WorkerConcurrency { get; set; }
```

<a id="workermaxretries"></a>

## WorkerMaxRetries

- Name: `WorkerMaxRetries`
- Modifiers: `get; set`
- Returns: `int`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets the maximum email retry attempts.

```csharp
public int WorkerMaxRetries { get; set; }
```

<a id="workspaceonlymode"></a>

## WorkspaceOnlyMode

- Name: `WorkspaceOnlyMode`
- Modifiers: `get; set`
- Returns: `bool`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaOptions.cs)

Gets or sets whether users must operate within workspaces.

```csharp
public bool WorkspaceOnlyMode { get; set; }
```
