The Filings API provides access to SEC filings including 10-K, 10-Q, 8-K, and other regulatory documents.
Get Recent Filings
Retrieve recent filings for a company.
const filings = await axion.filings.filings('AAPL', {
limit: 20,
form: '10-K'
});
Number of filings to retrieve
Filter by specific form type (e.g., ‘10-K’, ‘10-Q’, ‘8-K’)
Array of recent filings with metadata and links
Retrieve filings for a specific form type.
const tenKs = await axion.filings.forms('AAPL', '10-K', {
year: '2024',
quarter: 'Q1',
limit: 5
});
The form type to retrieve (e.g., ‘10-K’, ‘10-Q’, ‘8-K’, ‘DEF 14A’)
Filter by year (e.g., ‘2024’)
Filter by quarter (e.g., ‘Q1’, ‘Q2’, ‘Q3’, ‘Q4’)
Number of filings to retrieve
Array of filings for the specified form type
Retrieve descriptions of available SEC form types.
const formDescriptions = await axion.filings.descForms();
Dictionary of form types and their descriptions
Search Filings
Search for filings by year, quarter, and other criteria.
const searchResults = await axion.filings.search({
year: '2024',
quarter: 'Q1',
form: '10-Q',
ticker: 'AAPL'
});
The year to search (e.g., ‘2024’)
The quarter to search (e.g., ‘Q1’, ‘Q2’, ‘Q3’, ‘Q4’)
Filter by form type (e.g., ‘10-K’, ‘10-Q’, ‘8-K’)
Array of filings matching the search criteria
Example Usage
Here’s a complete example showing how to work with SEC filings:
import { Axion } from 'axion-sdk';
const axion = new Axion('your-api-key');
async function analyzeSECFilings(ticker: string) {
try {
// Get all recent filings
const recentFilings = await axion.filings.filings(ticker, { limit: 10 });
console.log('Recent Filings:', recentFilings.data);
// Get all 10-K annual reports
const annualReports = await axion.filings.forms(ticker, '10-K', { limit: 5 });
console.log('Annual Reports (10-K):', annualReports.data);
// Get all 10-Q quarterly reports
const quarterlyReports = await axion.filings.forms(ticker, '10-Q', { limit: 10 });
console.log('Quarterly Reports (10-Q):', quarterlyReports.data);
// Get 8-K current reports
const currentReports = await axion.filings.forms(ticker, '8-K', { limit: 20 });
console.log('Current Reports (8-K):', currentReports.data);
// Search for specific quarter filings
const q1Filings = await axion.filings.search({
year: '2024',
quarter: 'Q1',
ticker: ticker
});
console.log('Q1 2024 Filings:', q1Filings.data);
} catch (error) {
console.error('Error fetching filings:', error);
}
}
analyzeSECFilings('AAPL');
Get information about different SEC form types:
async function exploreFormTypes() {
try {
const descriptions = await axion.filings.descForms();
console.log('Available Form Types:', descriptions.data);
// Common form types:
// 10-K: Annual report
// 10-Q: Quarterly report
// 8-K: Current report (material events)
// DEF 14A: Proxy statement
// S-1: Registration statement for IPO
// 13F: Institutional investment manager holdings
} catch (error) {
console.error('Error fetching form descriptions:', error);
}
}
exploreFormTypes();
Monitoring Recent Filings
Monitor the most recent filings across multiple companies:
async function monitorRecentFilings(tickers: string[]) {
for (const ticker of tickers) {
try {
const filings = await axion.filings.filings(ticker, { limit: 5 });
console.log(`\nRecent filings for ${ticker}:`);
filings.data.forEach((filing: any) => {
console.log(`- ${filing.formType}: ${filing.filingDate}`);
});
} catch (error) {
console.error(`Error fetching filings for ${ticker}:`, error);
}
}
}
monitorRecentFilings(['AAPL', 'MSFT', 'GOOGL']);