pub struct Institutional { /* private fields */ }Expand description
Institutional API endpoints
Implementations§
Source§impl Institutional
impl Institutional
Sourcepub async fn get_institutional_holders(
&self,
symbol: &str,
) -> Result<Vec<InstitutionalHolder>>
pub async fn get_institutional_holders( &self, symbol: &str, ) -> Result<Vec<InstitutionalHolder>>
Get institutional holders for a symbol
§Arguments
symbol- Stock symbol (e.g., “AAPL”)
§Example
use fmp_rs::FmpClient;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = FmpClient::new()?;
let holders = client.institutional().get_institutional_holders("AAPL").await?;
println!("Top institutional holders:");
for holder in holders.iter().take(10) {
println!(" {}: {} shares", holder.holder, holder.shares);
}
Ok(())
}Sourcepub async fn get_portfolio_composition(
&self,
cik: &str,
date: Option<&str>,
) -> Result<Vec<InstitutionalPortfolioComposition>>
pub async fn get_portfolio_composition( &self, cik: &str, date: Option<&str>, ) -> Result<Vec<InstitutionalPortfolioComposition>>
Get portfolio composition by CIK
§Arguments
cik- CIK number (e.g., “0001067983” for Berkshire Hathaway)date- Optional date in YYYY-MM-DD format
§Example
use fmp_rs::FmpClient;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = FmpClient::new()?;
// Berkshire Hathaway's portfolio
let portfolio = client.institutional()
.get_portfolio_composition("0001067983", None).await?;
println!("Portfolio holdings:");
for holding in portfolio.iter().take(10) {
println!(" {}: {} shares (${:.2}B)",
holding.symbol, holding.shares,
holding.value / 1_000_000_000.0);
}
Ok(())
}Sourcepub async fn get_portfolio_holdings(
&self,
symbol: &str,
include_current_quarter: Option<bool>,
) -> Result<Vec<InstitutionalPortfolioComposition>>
pub async fn get_portfolio_holdings( &self, symbol: &str, include_current_quarter: Option<bool>, ) -> Result<Vec<InstitutionalPortfolioComposition>>
Get institutional portfolio holdings summary
§Arguments
symbol- Stock symbol (e.g., “AAPL”)include_current_quarter- Whether to include current quarter data
§Example
use fmp_rs::FmpClient;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = FmpClient::new()?;
let holdings = client.institutional()
.get_portfolio_holdings("AAPL", Some(true)).await?;
for holding in &holdings {
println!("CIK {}: {} shares", holding.cik, holding.shares);
}
Ok(())
}Sourcepub async fn get_institutional_holdings_rss(
&self,
) -> Result<Vec<InstitutionalPortfolioDate>>
pub async fn get_institutional_holdings_rss( &self, ) -> Result<Vec<InstitutionalPortfolioDate>>
Get institutional holdings RSS feed (available dates)
§Example
use fmp_rs::FmpClient;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = FmpClient::new()?;
let dates = client.institutional()
.get_institutional_holdings_rss().await?;
println!("Available filing dates:");
for date in dates.iter().take(10) {
println!(" CIK {}: Q{} {}", date.cik, date.quarter, date.year);
}
Ok(())
}Sourcepub async fn get_fail_to_deliver(
&self,
symbol: &str,
) -> Result<Vec<FailToDeliver>>
pub async fn get_fail_to_deliver( &self, symbol: &str, ) -> Result<Vec<FailToDeliver>>
Get fail to deliver (FTD) data for a symbol
§Arguments
symbol- Stock symbol (e.g., “AAPL”)
§Example
use fmp_rs::FmpClient;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = FmpClient::new()?;
let ftd = client.institutional().get_fail_to_deliver("GME").await?;
println!("Fail to deliver data:");
for record in ftd.iter().take(10) {
println!(" {}: {} shares at ${:.2}",
record.date, record.quantity, record.price);
}
Ok(())
}Sourcepub async fn get_cik_mapper(&self, name: Option<&str>) -> Result<Vec<CikMapper>>
pub async fn get_cik_mapper(&self, name: Option<&str>) -> Result<Vec<CikMapper>>
Get CIK mapper (CIK to company name mapping)
§Arguments
name- Optional company name to search
§Example
use fmp_rs::FmpClient;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = FmpClient::new()?;
let mappings = client.institutional().get_cik_mapper(Some("Apple")).await?;
for mapping in &mappings {
println!("{}: {}", mapping.cik, mapping.name);
}
Ok(())
}Auto Trait Implementations§
impl Freeze for Institutional
impl !RefUnwindSafe for Institutional
impl Send for Institutional
impl Sync for Institutional
impl Unpin for Institutional
impl !UnwindSafe for Institutional
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more