Conexio.Pillarbox.Client
1.1.0-preview.74
dotnet add package Conexio.Pillarbox.Client --version 1.1.0-preview.74
NuGet\Install-Package Conexio.Pillarbox.Client -Version 1.1.0-preview.74
<PackageReference Include="Conexio.Pillarbox.Client" Version="1.1.0-preview.74" />
<PackageVersion Include="Conexio.Pillarbox.Client" Version="1.1.0-preview.74" />
<PackageReference Include="Conexio.Pillarbox.Client" />
paket add Conexio.Pillarbox.Client --version 1.1.0-preview.74
#r "nuget: Conexio.Pillarbox.Client, 1.1.0-preview.74"
#:package Conexio.Pillarbox.Client@1.1.0-preview.74
#addin nuget:?package=Conexio.Pillarbox.Client&version=1.1.0-preview.74&prerelease
#tool nuget:?package=Conexio.Pillarbox.Client&version=1.1.0-preview.74&prerelease
Conexio.Pillarbox.Client
The client SDK for Pillarbox, Conexio Software's outbound email service. Pillarbox sends the email a Conexio system hands it, records what happened to each message, and refuses addresses that have bounced or complained before. This package is how a .NET system hands it email.
dotnet add package Conexio.Pillarbox.Client
builder.Services.AddPillarbox(options =>
{
options.BaseUrl = builder.Configuration["Pillarbox:BaseUrl"]!; // https://pillarbox.conexiosoftware.com
options.ApiKey = builder.Configuration["Pillarbox:ApiKey"]!; // a Send key, from configuration — never source
options.DefaultAccount = "your-account";
options.DefaultStream = "notification";
});
Then inject IPillarboxClient and call SendAsync or SendBatchAsync.
What the client does for you:
- Retries the right things. 5xx, 408 and 429 with backoff and jitter, a circuit breaker and a total timeout. A 4xx other than 429 is never retried: the request is wrong, and sending it again only delays finding out.
- Validates before sending. Options are checked at startup, so a missing key fails the deploy
rather than the first send at 6am.
SendBatchAsyncrefuses a batch in which any item lacks an idempotency key, before anything is sent. - Keeps you honest about idempotency. Derive the key from the business record
(
invoice-2026-04471), never from a GUID or a timestamp; a repeated key returns the original message instead of sending twice.
Targets net8.0 and net10.0. Depends on Conexio.Pillarbox.Contracts (the request and
response types) and nothing from AWS.
You need a Pillarbox API key to use it, issued by a Pillarbox operator and scoped to your
account. The API is private; this client is public because a client library carries nothing
that needs protecting. If an agent is doing your integration, give it an Agent key and point it
at the MCP endpoint's get_integration_guide tool, which renders the whole handover for your
account.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Conexio.Pillarbox.Contracts (>= 1.1.0-preview.74)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Http (>= 10.0.10)
- Microsoft.Extensions.Http.Resilience (>= 10.8.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.10)
-
net8.0
- Conexio.Pillarbox.Contracts (>= 1.1.0-preview.74)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Http (>= 10.0.10)
- Microsoft.Extensions.Http.Resilience (>= 10.8.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.10)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.1.0-preview.74 | 43 | 9/30/2026 |
| 1.1.0-preview.73 | 33 | 9/30/2026 |
| 1.1.0-preview.72 | 37 | 9/30/2026 |
| 1.1.0-preview.71 | 39 | 9/29/2026 |
| 1.1.0-preview.70 | 37 | 9/29/2026 |
| 1.1.0-preview.69 | 54 | 9/24/2026 |
| 1.1.0-preview.68 | 44 | 9/24/2026 |
| 1.1.0-preview.67 | 129 | 9/23/2026 |
| 1.1.0-preview.66 | 53 | 9/22/2026 |
| 1.1.0-preview.65 | 52 | 9/22/2026 |
| 1.1.0-preview.64 | 50 | 9/22/2026 |
| 1.1.0-preview.63 | 55 | 9/21/2026 |
| 1.1.0-preview.62 | 62 | 9/17/2026 |
| 1.1.0-preview.61 | 60 | 9/16/2026 |
| 1.1.0-preview.60 | 58 | 9/16/2026 |
| 1.1.0-preview.59 | 55 | 9/15/2026 |
| 1.1.0-preview.58 | 54 | 9/14/2026 |
| 1.0.0-preview.57 | 53 | 9/14/2026 |
| 1.0.0-preview.56 | 60 | 9/14/2026 |
| 1.0.0-preview.55 | 54 | 9/14/2026 |