snm-brightdata-client 0.1.0

Bright Data MCP Client implemented in Rust with Actix Web
Documentation

snm-brightdata-client

A modern, async Rust client for interacting with the Bright Data (formerly Luminati) API, including search, scraping, and browser automation capabilities. Built for flexibility and reliability in production environments.

πŸš€ Features

  • βœ… Easy-to-use async client
  • πŸ” Secure API token-based authentication
  • πŸ” Supports Bright Data’s SERP & Web Unlocker APIs
  • βš™οΈ Configurable request options (timeouts, retries, engines)
  • πŸ›‘οΈ Robust error handling with anyhow and typed errors
  • πŸ“¦ Lightweight dependencies and fully async with reqwest

πŸ“¦ Installation

Add this to your Cargo.toml:

snm-brightdata-client = "0.1.0"

Or use:

cargo add snm-brightdata-client

⚑ Usage Example

use snm_brightdata_client::{BrightDataClient, ClientConfig, SearchRequest};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let config = ClientConfig::builder()
        .api_token("your-api-token")
        .build()?;

    let client = BrightDataClient::new(config).await?;

    let search = SearchRequest {
        query: "Rust async client".into(),
        engine: Some("google".into()),
        ..Default::default()
    };

    let result = client.search(search).await?;
    println!("{:#?}", result);

    Ok(())
}

πŸ“š Documentation

πŸ›  Development

cargo build
cargo test

πŸ“„ License

MIT Β© 2025 SNM Maurya