# PostaHostingExtensions

- Kind: `class`
- Package: [CommunityToolkit.Aspire.Hosting.Posta](/reference/api/csharp/communitytoolkit.aspire.hosting.posta.md)
- Version: `13.5.0`
- Namespace: `Aspire.Hosting`
- Target framework: `net10.0`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1/src/CommunityToolkit.Aspire.Hosting.Posta/PostaHostingExtensions.cs)

Provides extension methods for adding Posta to an `Hosting.IDistributedApplicationBuilder`.

## Definition

```csharp
namespace Aspire.Hosting;

public static class PostaHostingExtensions
{
    // ...
}
```

## Methods

- [AddPosta(IDistributedApplicationBuilder, string, IResourceBuilder<PostgresDatabaseResource>, IResourceBuilder<RedisResource>, IResourceBuilder<ParameterResource>, IResourceBuilder<ParameterResource>, string, int?)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#addposta-idistributedapplicationbuilder-string-iresourcebuilder-postgresdatabaseresource-iresourcebuilder-redisresource-iresourcebuilder-parameterresource-iresourcebuilder-parameterresource-string-int) : `IResourceBuilder<PostaResource>` `extension` `ats export` -- Adds a Posta container resource to the `Hosting.IDistributedApplicationBuilder` and configures PostgreSQL and Redis references.
- [AddPosta(IDistributedApplicationBuilder, string, IResourceBuilder<PostgresDatabaseResource>, IResourceBuilder<RedisResource>, PostaOptions, IResourceBuilder<ParameterResource>, IResourceBuilder<ParameterResource>, string, int?)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#addposta-idistributedapplicationbuilder-string-iresourcebuilder-postgresdatabaseresource-iresourcebuilder-redisresource-postaoptions-iresourcebuilder-parameterresource-iresourcebuilder-parameterresource-string-int) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Adds a Posta container resource to the `Hosting.IDistributedApplicationBuilder` with PostgreSQL, Redis, and additional Posta environment configuration.
- [AddPosta(IDistributedApplicationBuilder, string, IResourceBuilder<PostgresDatabaseResource>, IResourceBuilder<RedisResource>, Action<PostaOptions>, IResourceBuilder<ParameterResource>, IResourceBuilder<ParameterResource>, string, int?)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#addposta-idistributedapplicationbuilder-string-iresourcebuilder-postgresdatabaseresource-iresourcebuilder-redisresource-action-postaoptions-iresourcebuilder-parameterresource-iresourcebuilder-parameterresource-string-int) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Adds a Posta container resource to the `Hosting.IDistributedApplicationBuilder` with PostgreSQL, Redis, and additional Posta environment configuration.
- [WithDataBindMount(IResourceBuilder<PostaResource>, string, bool)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withdatabindmount-iresourcebuilder-postaresource-string-bool) : `IResourceBuilder<PostaResource>` `extension` `ats export` -- Adds a bind mount for Posta's filesystem-backed attachment data.
- [WithDataVolume(IResourceBuilder<PostaResource>, string?, bool)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withdatavolume-iresourcebuilder-postaresource-string-bool) : `IResourceBuilder<PostaResource>` `extension` `ats export` -- Adds a named volume for Posta's filesystem-backed attachment data.
- [WithEmailVerification(IResourceBuilder<PostaResource>, PostaEmailVerificationOptions)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withemailverification-iresourcebuilder-postaresource-postaemailverificationoptions) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Configures email verification behavior for Posta.
- [WithEmailVerification(IResourceBuilder<PostaResource>, Action<PostaEmailVerificationOptions>)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withemailverification-iresourcebuilder-postaresource-action-postaemailverificationoptions) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Configures email verification behavior for Posta.
- [WithGoogleOAuth(IResourceBuilder<PostaResource>, PostaGoogleOAuthOptions)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withgoogleoauth-iresourcebuilder-postaresource-postagoogleoauthoptions) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Configures Google OAuth login for Posta.
- [WithGoogleOAuth(IResourceBuilder<PostaResource>, Action<PostaGoogleOAuthOptions>)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withgoogleoauth-iresourcebuilder-postaresource-action-postagoogleoauthoptions) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Configures Google OAuth login for Posta.
- [WithInboundSmtp(IResourceBuilder<PostaResource>, PostaInboundSmtpOptions, int?, int)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withinboundsmtp-iresourcebuilder-postaresource-postainboundsmtpoptions-int-int) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Configures the built-in inbound SMTP receiver used by Posta.
- [WithInboundSmtp(IResourceBuilder<PostaResource>, Action<PostaInboundSmtpOptions>, int?, int)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withinboundsmtp-iresourcebuilder-postaresource-action-postainboundsmtpoptions-int-int) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Configures the built-in inbound SMTP receiver used by Posta.
- [WithReference(IResourceBuilder<PostaResource>, IResourceBuilder<PostgresDatabaseResource>)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withreference-iresourcebuilder-postaresource-iresourcebuilder-postgresdatabaseresource) : `IResourceBuilder<PostaResource>` `extension` `ats export` -- Configures the PostgreSQL database used by Posta.
- [WithReference(IResourceBuilder<PostaResource>, IResourceBuilder<RedisResource>, IResourceBuilder<ParameterResource>)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withreference-iresourcebuilder-postaresource-iresourcebuilder-redisresource-iresourcebuilder-parameterresource) : `IResourceBuilder<PostaResource>` `extension` `ats export` -- Configures the Redis server used by Posta.
- [WithS3BlobStorage(IResourceBuilder<PostaResource>, PostaS3BlobStorageOptions)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withs3blobstorage-iresourcebuilder-postaresource-postas3blobstorageoptions) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Configures S3-compatible attachment storage for Posta.
- [WithS3BlobStorage(IResourceBuilder<PostaResource>, Action<PostaS3BlobStorageOptions>)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withs3blobstorage-iresourcebuilder-postaresource-action-postas3blobstorageoptions) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Configures S3-compatible attachment storage for Posta.
- [WithSmtpRelay(IResourceBuilder<PostaResource>, PostaSmtpRelayOptions, int?, int)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withsmtprelay-iresourcebuilder-postaresource-postasmtprelayoptions-int-int) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Configures and exposes Posta's authenticated SMTP relay.
- [WithSmtpRelay(IResourceBuilder<PostaResource>, Action<PostaSmtpRelayOptions>, int?, int)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withsmtprelay-iresourcebuilder-postaresource-action-postasmtprelayoptions-int-int) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Configures and exposes Posta's authenticated SMTP relay.
- [WithSystemSmtp(IResourceBuilder<PostaResource>, PostaSystemSmtpOptions)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withsystemsmtp-iresourcebuilder-postaresource-postasystemsmtpoptions) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Configures the system SMTP server used by Posta for platform notifications.
- [WithSystemSmtp(IResourceBuilder<PostaResource>, Action<PostaSystemSmtpOptions>)](/reference/api/csharp/communitytoolkit.aspire.hosting.posta/postahostingextensions/methods.md#withsystemsmtp-iresourcebuilder-postaresource-action-postasystemsmtpoptions) : `IResourceBuilder<PostaResource>` `extension` `ats ignored` -- Configures the system SMTP server used by Posta for platform notifications.
