| Crates.io | tavily2 |
| lib.rs | tavily2 |
| version | 0.1.0 |
| created_at | 2025-11-08 16:51:22.62367+00 |
| updated_at | 2025-11-10 07:21:36.453375+00 |
| description | A tiny tool for calling Tavily's REST API in the simplest way! |
| homepage | |
| repository | https://github.com/launcher-rs/tavily-rs |
| max_upload_size | |
| id | 1923054 |
| size | 59,003 |
Unofficial (for now 🫠) Rust SDK for the Tavily Search API - the AI-powered search engine for LLM applications 🚀
[!NOTE] Requires an API key. You can get one by signing up at Tavily. The API key should be kept secure and not shared publicly.
cargo add tavily2
use std::time::Duration;
use tavily2::{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 request = SearchRequest::new("tvly-your-api-key", "Breaking tech news")
.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(())
}
For detailed examples and API documentation, check out: