IBeam.Storage.S3
2.12.2
dotnet add package IBeam.Storage.S3 --version 2.12.2
NuGet\Install-Package IBeam.Storage.S3 -Version 2.12.2
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="IBeam.Storage.S3" Version="2.12.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="IBeam.Storage.S3" Version="2.12.2" />
<PackageReference Include="IBeam.Storage.S3" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add IBeam.Storage.S3 --version 2.12.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: IBeam.Storage.S3, 2.12.2"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package IBeam.Storage.S3@2.12.2
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=IBeam.Storage.S3&version=2.12.2
#tool nuget:?package=IBeam.Storage.S3&version=2.12.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
IBeam.Storage.S3
IBeam.Storage.S3 implements IBlobStorageService with AWS S3 or S3-compatible object storage.
dotnet add package IBeam.Storage.S3
When To Use This
- You want IBeam file/blob operations backed by AWS S3.
- You use S3-compatible storage through a custom service URL.
- You want services to depend on
IBlobStorageServiceinstead of AWS SDK types.
What This Package Contains
| Area | Type(s) | Purpose |
|---|---|---|
| Provider | S3BlobStorageService |
Implements save/read/delete/existence/URL operations. |
| Options | S3BlobStorageOptions |
Configures region, credentials, service URL, and path-style behavior. |
| DI | AddIBeamS3BlobStorage(IConfiguration) |
Registers S3 as IBlobStorageService. |
Quick Start
using IBeam.Storage.S3;
builder.Services.AddIBeamS3BlobStorage(builder.Configuration);
Configuration with AWS region:
{
"IBeam": {
"Storage": {
"S3": {
"Region": "us-east-1",
"AccessKeyId": "<optional>",
"SecretAccessKey": "<optional>",
"ForcePathStyle": true
}
}
}
}
Configuration with an S3-compatible endpoint:
{
"IBeam": {
"Storage": {
"S3": {
"ServiceUrl": "http://localhost:9000",
"AccessKeyId": "minio",
"SecretAccessKey": "minio123",
"ForcePathStyle": true
}
}
}
}
Configuration
| Setting | Default | Purpose |
|---|---|---|
Region |
empty | AWS region. Required unless ServiceUrl is set. |
AccessKeyId |
empty | Optional explicit access key. Must be paired with SecretAccessKey. |
SecretAccessKey |
empty | Optional explicit secret key. Must be paired with AccessKeyId. |
SessionToken |
empty | Optional temporary credential token. |
ServiceUrl |
empty | Custom S3-compatible endpoint. |
ForcePathStyle |
true |
Uses path-style URLs, commonly needed for local/S3-compatible providers. |
Either Region or ServiceUrl is required.
Storage Shape
This package creates or uses S3 buckets by name. It does not create Azure Tables.
| Concept | IBeam Name | S3 Name |
|---|---|---|
| Storage group | containerName |
Bucket |
| Object path | blobName |
Object key |
| Content type | contentType |
Object content type |
Code Example
await storage.SaveAsync(
"tenant-225925cc995e4584a63b4f2cb4f38f6f",
"exports/month-end.csv",
csvStream,
contentType: "text/csv",
overwrite: false,
ct);
Extended Docs And Agent Guidance
- AI prompt:
.agent/prompt.md - Root implementation guide:
../.agent/implementation-guide.md - Storage abstractions:
../IBeam.Storage.Abstractions/README.md
Agents should keep object naming conventions in services and use this provider only for S3 IO.
Troubleshooting
| Problem | Likely Cause | Fix |
|---|---|---|
| Startup fails | Neither Region nor ServiceUrl is configured |
Configure one under IBeam:Storage:S3. |
| Credential validation fails | Only one of key/secret was set | Provide both or rely on default AWS credential resolution. |
| Local S3-compatible storage fails | Path-style addressing mismatch | Keep ForcePathStyle enabled for MinIO/local endpoints. |
Version Notes
- Targets
net10.0. - Uses AWS S3 SDK.
- Package version is assigned by the repository release workflow.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- AWSSDK.S3 (>= 4.0.19.1)
- IBeam.Storage.Abstractions (>= 2.12.2)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.3)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.3)
- Microsoft.Extensions.Options (>= 10.0.3)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.3)
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 |
|---|---|---|
| 2.12.2 | 72 | 9/11/2026 |
| 2.12.1 | 69 | 9/11/2026 |
| 2.12.0 | 69 | 9/10/2026 |
| 2.11.0 | 94 | 8/30/2026 |
| 2.10.1 | 104 | 8/23/2026 |
| 2.10.0 | 99 | 8/23/2026 |
| 2.9.45 | 99 | 8/10/2026 |
| 2.9.44 | 112 | 8/3/2026 |
| 2.9.43 | 108 | 7/29/2026 |
| 2.9.1 | 115 | 7/23/2026 |
| 2.9.0 | 108 | 7/21/2026 |
| 2.8.2 | 114 | 7/21/2026 |
| 2.8.1 | 110 | 7/21/2026 |
| 2.8.0 | 108 | 7/21/2026 |
| 2.7.0 | 106 | 7/21/2026 |
| 2.6.0 | 98 | 7/20/2026 |
| 2.5.0 | 106 | 7/17/2026 |
| 2.4.2 | 108 | 7/16/2026 |
| 2.4.1 | 103 | 7/14/2026 |
| 2.4.0 | 124 | 6/24/2026 |
Loading failed