For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
  • About NVIDIA NeMo Relay
    • Overview
    • Architecture
    • Ecosystem
    • Concepts
    • Release Notes
  • Getting Started
    • Agent Runtime Primer
    • Prerequisites
    • Installation
    • Configuration / Setup
    • Quick Start
  • NVIDIA NeMo Relay CLI
    • About
    • Basic Usage
    • Claude Code
    • Codex
    • Cursor
    • Hermes Agent
  • Supported Integrations
    • About
    • OpenClaw Plugin Guide
    • LangChain Integration Guide
    • LangGraph Integration Guide
    • Deep Agents Integration Guide
  • Instrument Applications
    • About
    • Adding Scopes and Marks
    • Instrument a Tool Call
    • Instrument an LLM Call
    • Add Middleware
    • Code Examples
  • Observability Plugin
    • About
    • Configuration
    • Agent Trajectory Interchange Format (ATIF)
    • Agent Trajectory Observability Format (ATOF)
    • OpenTelemetry
    • OpenInference
  • Adaptive Plugin
    • About
    • Configuration
    • Adaptive Cache Governor (ACG)
    • Adaptive Hints
  • NeMo Guardrails Plugin
    • About
    • Configuration
  • Integrate into Frameworks
    • About
    • Adding Scopes
    • Wrap Tool Calls
    • Wrap LLM Calls
    • Handle Non-Serializable Data
    • Using Codecs
    • Provider Codecs
    • Provider Response Codecs
    • Code Examples
  • Build Plugins
    • About
    • Define a Plugin
    • Validate Plugin Configuration
    • Plugin Configuration Files
    • Register Plugin Behavior
    • Design Plugin Configuration
    • NeMo Guardrails Example Plugin
    • Code Examples
  • Contribute
    • About
    • Development Setup
    • Workflow and Reviews
    • Testing and Documentation
  • Reference
    • APIs
      • Python Library Reference
      • Node.js Library Reference
      • Rust Library Reference
        • nemo-relay
          • api
          • codec
          • config_editor
          • error
          • json
          • observability
            • atif
            • atof
            • openinference
            • otel
            • plugin_component
              • AtifSectionConfig
              • AtofSectionConfig
              • ComponentSpec
              • ObservabilityConfig
              • OtlpSectionConfig
              • S3StorageConfig
              • AtifStorageConfig
              • OBSERVABILITY_PLUGIN_KIND
              • deregister_observability_component
              • register_observability_component
          • plugin
          • plugins
          • stream
          • editor_config
        • nemo-relay-adaptive
        • nemo-relay-ffi
    • Performance
  • Resources
    • Support and FAQs
    • Glossary
    • Troubleshooting Guide
    • Community
    • Legal
NVIDIANVIDIA
Developer-friendly docs for your API
Privacy Policy | Your Privacy Choices | Terms of Service | Accessibility | Corporate Policies | Product Security | Contact

Copyright © 2026, NVIDIA Corporation.

LogoLogo
On this page
  • Fields
  • bucket: String
  • key_prefix: Option<String>
  • access_key_id: Option<String>
  • secret_access_key_var: Option<String>
  • session_token_var: Option<String>
  • region: Option<String>
  • endpoint_url: Option<String>
  • allow_http: Option<bool>
  • Trait Implementations
  • impl Clone for S3StorageConfig
  • clone
  • clone_from
  • impl Debug for S3StorageConfig
  • fmt
  • impl<'de> Deserialize<'de> for S3StorageConfig
  • deserialize
  • impl Serialize for S3StorageConfig
  • serialize
ReferenceAPIsRust Library Referencenemo-relayobservabilityplugin_component

Struct S3Storage Config

||View as Markdown|
Previous

Struct Otlp Section Config

Next

Enum Atif Storage Config

Generated from cargo doc --no-deps -p nemo-relay -p nemo-relay-adaptive -p nemo-relay-ffi.

pub struct S3StorageConfig {
    pub bucket: String,
    pub key_prefix: Option<String>,
    pub access_key_id: Option<String>,
    pub secret_access_key_var: Option<String>,
    pub session_token_var: Option<String>,
    pub region: Option<String>,
    pub endpoint_url: Option<String>,
    pub allow_http: Option<bool>,
}

S3-compatible storage settings for ATIF trajectory upload.

Every connection field is optional. Unset fields fall back to the matching AWS_* environment variable, preserving the env-driven workflow while letting one config file fully describe a destination when needed. Secret credentials are referenced by env var name (the _var suffix), so multiple destinations can each carry their own credentials without leaking secret material into the config.

Fields

bucket: String

Destination bucket name. Must be non-empty.

key_prefix: Option<String>

Optional key prefix applied to every uploaded object. A trailing / is inserted automatically when one is missing.

access_key_id: Option<String>

Static AWS access key ID. When unset, AWS_ACCESS_KEY_ID is used.

secret_access_key_var: Option<String>

Name of the environment variable that holds the static secret access key. Validated to be non-empty and present at plugin initialization time. When unset, AWS_SECRET_ACCESS_KEY is used.

session_token_var: Option<String>

Name of the environment variable that holds the optional STS session token. Validated to be non-empty and present at plugin initialization time. When unset, AWS_SESSION_TOKEN is used.

region: Option<String>

AWS region for the bucket. When unset, AWS_REGION is used.

endpoint_url: Option<String>

Endpoint URL override for S3-compatible storage (for example, MinIO). When unset, AWS_ENDPOINT_URL is used.

allow_http: Option<bool>

Allow plain HTTP endpoints. When unset, AWS_ALLOW_HTTP is used.

Trait Implementations

impl Clone for S3StorageConfig

impl Clone for S3StorageConfig

clone

fn clone(&self) -> S3StorageConfig

clone_from

fn clone_from(&mut self, source: &Self)

impl Debug for S3StorageConfig

impl Debug for S3StorageConfig

fmt

fn fmt(&self, f: &mut Formatter<'_>) -> Result

impl<'de> Deserialize<'de> for S3StorageConfig

impl<'de> Deserialize<'de> for S3StorageConfig

deserialize

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
    __D: Deserializer<'de>,

impl Serialize for S3StorageConfig

impl Serialize for S3StorageConfig

serialize

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where
    __S: Serializer,