#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
use finance_query::{Ticker, finance};
let ticker = Ticker::new("AAPL").await?;
let transcript = finance::earnings_transcript(ticker.symbol(), None, None).await?;
println!(
"Transcript for {} - Q{} {}",
ticker.symbol(),
transcript.quarter(),
transcript.year()
);
for (paragraph, speaker) in transcript.paragraphs_with_speakers() {
if let Some(name) = speaker {
println!("[{:.1}s] {}: {}", paragraph.start, name, paragraph.text);
}
}
let _q1 = finance::earnings_transcript(ticker.symbol(), Some("Q1"), Some(2024)).await?;
let all_transcripts = finance::earnings_transcripts(ticker.symbol(), None).await?;
for meta in &all_transcripts {
println!(
"{} {} - {}",
meta.year.unwrap_or(0),
meta.quarter.as_deref().unwrap_or("?"),
meta.title
);
}
Ok(())
}