Skip to main content

Crate elizaos_plugin_s3_storage

Crate elizaos_plugin_s3_storage 

Source
Expand description

§S3 Storage Plugin

A Rust plugin for uploading and managing files in Amazon S3 or S3-compatible storage services. This plugin provides a high-level API for common storage operations including file uploads, byte uploads, JSON uploads, and signed URL generation.

§Features

  • File upload from local paths
  • Direct byte data upload
  • JSON serialization and upload
  • Pre-signed URL generation for secure access
  • Support for custom S3-compatible endpoints

§Example

use elizaos_plugin_s3_storage::{S3StoragePlugin, S3StorageConfig};

async fn example() -> Result<(), Box<dyn std::error::Error>> {
    let config = S3StorageConfig::new(
        "access_key",
        "secret_key",
        "us-east-1",
        "my-bucket"
    );
    let plugin = S3StoragePlugin::new(config).await?;
    Ok(())
}

Re-exports§

pub use client::S3StorageClient;
pub use error::Result;
pub use error::S3StorageError;
pub use service::AwsS3Service;
pub use types::*;

Modules§

client
error
service
types

Structs§

S3StoragePlugin
High-level S3 storage plugin for file and data management.

Functions§

get_s3_storage_plugin
Creates an S3 storage plugin using environment variables for configuration.