tavily 2.1.0

A tiny tool for calling Tavily's REST API in the simplest way!
Documentation
# Tavily Rust SDK

Unofficial (for now 🫠) Rust SDK for the
[Tavily Search API](https://tavily.com) - the AI-powered search engine for LLM
applications 🚀

> [!NOTE]
> Requires an API key. You can get one by signing up at
> [Tavily]https://app.tavily.com/home. The API key should be kept secure and
> not shared publicly.

## Installation

```bash
cargo add tavily
```

or add it to your `Cargo.toml`:

```toml
[dependencies]
tavily = "^2.0.0"
```

## Quick Start

```rust
use tavily::{Tavily, SearchRequest, Result};

#[tokio::main]
async fn main() -> Result<()> {
    let tavily = Tavily::builder("tvly-your-api-key")
        .timeout(Duration::from_secs(60))
        .max_retries(5)
        .build()?;
    
    // Simple search
    let results = tavily.search("Latest AI developments").await?;

    // Advanced search with customization
    let mut request = SearchRequest::new("tvly-your-api-key", "Breaking tech news");
    request
        .search_depth("advanced")
        .topic("news")
        .include_answer(true)
        .max_results(10);
    
    let results = tavily.call(&request).await?;

    // Extract content from URLs
    let urls = vec![
        "https://tavily.com/",
        "https://github.com/PierreLouisLetoquart",
        "https://www.google.com/",
    ];
    let results = tavily.extract(urls).await?;

    Ok(())
}
```

## Features

- **Simple Search**: Quick search queries with minimal configuration
- **Answer Mode**: Get AI-generated answers along with search results
- **Advanced Customization**: Control search depth, topics, time range, and more
- **Domain Filtering**: Include or exclude specific domains
- **Rich Content**: Optional image results and descriptions

## Documentation

For detailed examples and API documentation, check out:

- [Examples Directory]./examples
- [API Documentation]https://docs.tavily.com/docs/
- [Error Codes]https://docs.tavily.com/docs/rest-api/api-reference#error-codes

## License

[MIT](./LICENSE)