Expand description
CrossRef API Integration
This module provides an async client for fetching scholarly publications from CrossRef.org, converting responses to SemanticVector format for RuVector discovery.
§CrossRef API Details
- Base URL: https://api.crossref.org
- Free access, no authentication required
- Returns JSON responses
- Rate limit: ~50 requests/second with polite pool
- Polite pool: Include email in User-Agent or Mailto header for better rate limits
§Example
ⓘ
use ruvector_data_framework::crossref_client::CrossRefClient;
let client = CrossRefClient::new(Some("your-email@example.com".to_string()));
// Search publications by keywords
let vectors = client.search_works("machine learning", 20).await?;
// Get work by DOI
let work = client.get_work("10.1038/nature12373").await?;
// Search by funder
let funded = client.search_by_funder("10.13039/100000001", 10).await?;
// Find recent publications
let recent = client.search_recent("quantum computing", "2024-01-01").await?;Structs§
- Cross
RefClient - Client for CrossRef.org scholarly publication API