SecFilings

Struct SecFilings 

Source
pub struct SecFilings { /* private fields */ }
Expand description

SEC Filings API endpoints

Implementations§

Source§

impl SecFilings

Source

pub async fn get_sec_filings( &self, symbol: &str, limit: Option<u32>, ) -> Result<Vec<SecFiling>>

Get SEC filings for a symbol

Returns SEC filings (10-K, 10-Q, 8-K, etc.) for a given stock symbol.

§Arguments
  • symbol - Stock symbol (e.g., “AAPL”)
  • limit - Maximum number of filings to return (optional)
§Example
let client = FmpClient::new()?;
let filings = client.sec_filings().get_sec_filings("AAPL", Some(10)).await?;
for filing in filings {
    println!("{}: {} on {}",
        filing.symbol,
        filing.filing_type.unwrap_or_default(),
        filing.filing_date.unwrap_or_default());
}
Source

pub async fn get_sec_rss_feed( &self, limit: Option<u32>, ) -> Result<Vec<SecFilingRss>>

Get SEC filings RSS feed

Returns recent SEC filings from the RSS feed with optional filtering.

§Arguments
  • limit - Maximum number of filings to return (optional)
§Example
let client = FmpClient::new()?;
let rss = client.sec_filings().get_sec_rss_feed(Some(20)).await?;
for item in rss.iter().take(10) {
    println!("{}: {} - {}",
        item.symbol.as_deref().unwrap_or("N/A"),
        item.form_type.as_deref().unwrap_or("N/A"),
        item.title.as_deref().unwrap_or("N/A"));
}
Source

pub async fn get_form_13f( &self, cik: &str, date: Option<&str>, ) -> Result<Vec<Form13F>>

Get Form 13F filings

Returns institutional holdings from Form 13F filings.

§Arguments
  • cik - CIK number of the institution
  • date - Filing date (optional, format: YYYY-MM-DD)
§Example
let client = FmpClient::new()?;
let holdings = client.sec_filings().get_form_13f("0001067983", None).await?;
for holding in holdings.iter().take(10) {
    println!("{}: {} shares valued at ${}",
        holding.name_of_issuer.as_deref().unwrap_or("N/A"),
        holding.shares.unwrap_or(0),
        holding.market_value.unwrap_or(0.0));
}
Source

pub async fn get_cusip_mapper(&self, cusip: &str) -> Result<Vec<CikSearch>>

Get cusip mapper (CUSIP to company info)

Returns company information for a given CUSIP.

§Arguments
  • cusip - CUSIP identifier
§Example
let client = FmpClient::new()?;
let info = client.sec_filings().get_cusip_mapper("037833100").await?;
for item in info {
    println!("{}: {}", item.cik, item.name.unwrap_or_default());
}
Source

pub async fn search_cik(&self, name: &str) -> Result<Vec<CikSearch>>

Search for CIK by company name

Returns CIK numbers for companies matching the search query.

§Arguments
  • name - Company name to search for
§Example
let client = FmpClient::new()?;
let results = client.sec_filings().search_cik("Apple").await?;
for result in results {
    println!("CIK {}: {}", result.cik, result.name.unwrap_or_default());
}
Source

pub async fn get_company_name_by_cik( &self, cik: &str, ) -> Result<Vec<CompanyName>>

Get company name by CIK

Returns the company name for a given CIK number.

§Arguments
  • cik - CIK number
§Example
let client = FmpClient::new()?;
let company = client.sec_filings().get_company_name_by_cik("0000320193").await?;
for c in company {
    println!("CIK {}: {}", c.cik, c.name);
}
Source

pub async fn get_form_4( &self, symbol: &str, limit: Option<u32>, ) -> Result<Vec<Form4>>

Get Form 4 filings (insider ownership changes)

Returns Form 4 filings showing changes in beneficial ownership by insiders.

§Arguments
  • symbol - Stock symbol (e.g., “AAPL”)
  • limit - Maximum number of filings to return (optional)
§Example
let client = FmpClient::new()?;
let form4 = client.sec_filings().get_form_4("AAPL", Some(20)).await?;
for filing in form4 {
    println!("{}: {} - {} shares at ${}",
        filing.reporting_name.as_deref().unwrap_or("N/A"),
        filing.transaction_type.as_deref().unwrap_or("N/A"),
        filing.securities_transacted.unwrap_or(0.0),
        filing.price.unwrap_or(0.0));
}
Source

pub async fn get_insider_ownership( &self, symbol: &str, limit: Option<u32>, ) -> Result<Vec<InsiderOwnership>>

Get insider ownership summary

Returns a summary of insider ownership from Forms 3, 4, and 5.

§Arguments
  • symbol - Stock symbol (e.g., “AAPL”)
  • limit - Maximum number of records to return (optional)
§Example
let client = FmpClient::new()?;
let ownership = client.sec_filings().get_insider_ownership("AAPL", Some(10)).await?;
for record in ownership {
    println!("{}: owns {} shares",
        record.reporting_name.as_deref().unwrap_or("N/A"),
        record.securities_owned.unwrap_or(0));
}

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,