Skip to main content

Crate kagiapi

Crate kagiapi 

Source
Expand description

Rust client library for Kagi Search and Universal Summarizer APIs

This crate provides a simple, async client for interacting with Kagi’s APIs:

  • Search API for web search results
  • Universal Summarizer API for content summarization

References:

§Example

use kagiapi::{KagiClient, SummaryType, SummarizerEngine};

#[tokio::main]
async fn main() -> Result<(), kagiapi::Error> {
    let client = KagiClient::new("your-api-key");

    // Search the web
    let results = client.search("rust programming", Some(10)).await?;
    for result in results.data {
        if result.result_type == 0 {
            let title = result.title.as_deref().unwrap_or("No title");
            let url = result.url.as_deref().unwrap_or("No URL");
            println!("{}: {}", title, url);
        }
    }

    // Summarize content
    let summary = client.summarize(
        "https://example.com/article",
        Some(SummarizerEngine::Cecil),
        Some(SummaryType::Summary),
        None
    ).await?;
    println!("Summary: {}", summary.output);

    Ok(())
}

Structs§

EnrichResponse
FastGptData
FastGptMeta
FastGptReference
FastGptResponse
KagiClient
SearchMeta
SearchResponse
SearchResult
SummaryData
SummaryMeta
SummaryResponse
Thumbnail

Enums§

EnrichType
Error
SummarizerEngine
SummaryType

Constants§

API_BASE_URL_PREFIX

Type Aliases§

Result