← Back to Home

FMP Node API Documentation

Core API Wrapper

Company Endpoints

The Company Endpoints provide access to comprehensive company information including profiles, executive compensation, company notes, employee data, shares float information, and earnings call transcripts.

Available Methods

MethodEndpointDescription
GET/profile/{symbol}Get comprehensive company profile information
GET/governance/executive_compensationGet executive compensation data
GET/company-notesGet company notes and financial statements
GET/historical/employee_countGet historical employee count data
GET/shares_floatGet current shares float information
GET/historical/shares_floatGet historical shares float data
GET/earning_call_transcript/{symbol}Get earnings call transcripts
GET/earning_call_transcriptGet company transcript dates and data

Get Company Profile

Retrieve comprehensive company profile information including financial metrics, company details, and market data.

1const profile = await fmp.company.getCompanyProfile('AAPL');

Parameters

ParameterTypeRequiredDescription
symbolstringYesStock symbol (e.g., "AAPL", "MSFT")

Example Response

1{
2  success: true,
3  data: {
4    symbol: 'AAPL',
5    price: 150.25,
6    beta: 1.28,
7    volAvg: 52345600,
8    mktCap: 2375000000000,
9    lastDiv: 0.24,
10    range: '124.17-198.23',
11    changes: 3.15,
12    companyName: 'Apple Inc.',
13    currency: 'USD',
14    cik: '0000320193',
15    isin: 'US0378331005',
16    cusip: '037833100',
17    exchange: 'NASDAQ',
18    exchangeShortName: 'NASDAQ',
19    industry: 'Consumer Electronics',
20    website: 'https://www.apple.com',
21    description: 'Apple Inc. designs, manufactures, and markets smartphones, personal computers, tablets, wearables, and accessories worldwide.',
22    ceo: 'Timothy D. Cook',
23    sector: 'Technology',
24    country: 'US',
25    fullTimeEmployees: '164000',
26    phone: '1-408-996-1010',
27    address: 'One Apple Park Way',
28    city: 'Cupertino',
29    state: 'CA',
30    zip: '95014',
31    dcfDiff: 0.00,
32    dcf: 0.00,
33    image: 'https://financialmodelingprep.com/image-stock/AAPL.png',
34    ipoDate: '1980-12-12',
35    defaultImage: false,
36    isEtf: false,
37    isActivelyTrading: true,
38    isAdr: false,
39    isFund: false
40  }
41}

Get Executive Compensation

Retrieve detailed executive compensation data including salary, bonuses, stock awards, and total compensation.

1const compensation = await fmp.company.getExecutiveCompensation('AAPL');

Parameters

ParameterTypeRequiredDescription
symbolstringYesStock symbol

Example Response

1{
2  success: true,
3  data: [
4    {
5      cik: '0000320193',
6      symbol: 'AAPL',
7      companyName: 'Apple Inc.',
8      industryTitle: 'Consumer Electronics',
9      acceptedDate: '2024-01-25',
10      filingDate: '2024-01-25',
11      nameAndPosition: 'Timothy D. Cook, Chief Executive Officer',
12      year: 2023,
13      salary: 3000000,
14      bonus: 0,
15      stock_award: 50000000,
16      incentive_plan_compensation: 0,
17      all_other_compensation: 0,
18      total: 53000000,
19      url: 'https://www.sec.gov/Archives/edgar/data/320193/000032019324000006/aap-20231230.htm'
20    }
21  ]
22}

Get Company Notes

Retrieve company notes and financial statement information.

1const notes = await fmp.company.getCompanyNotes('AAPL');

Parameters

ParameterTypeRequiredDescription
symbolstringYesStock symbol

Example Response

1{
2  success: true,
3  data: [
4    {
5      cik: '0000320193',
6      symbol: 'AAPL',
7      title: 'Notes to Consolidated Financial Statements',
8      exchange: 'NASDAQ'
9    }
10  ]
11}

Get Historical Employee Count

Retrieve historical employee count data over time.

1const employeeData = await fmp.company.getHistoricalEmployeeCount('AAPL');

Parameters

ParameterTypeRequiredDescription
symbolstringYesStock symbol

Example Response

1{
2  success: true,
3  data: [
4    {
5      symbol: 'AAPL',
6      cik: '0000320193',
7      acceptanceTime: '2024-01-25T21:30:00.000Z',
8      periodOfReport: '2023-12-30',
9      companyName: 'Apple Inc.',
10      formType: '10-K',
11      filingDate: '2024-01-25',
12      employeeCount: 164000,
13      source: 'SEC Filing'
14    }
15  ]
16}

Get Shares Float

Retrieve current shares float information including free float, float shares, and outstanding shares.

1const sharesFloat = await fmp.company.getSharesFloat('AAPL');

Parameters

ParameterTypeRequiredDescription
symbolstringYesStock symbol

Example Response

1{
2  success: true,
3  data: {
4    symbol: 'AAPL',
5    freeFloat: 0.85,
6    floatShares: 14921252530,
7    outstandingShares: 15800000000,
8    source: 'SEC Filing',
9    date: '2024-01-25'
10  }
11}

Get Historical Shares Float

Retrieve historical shares float data over time.

1const historicalSharesFloat = await fmp.company.getHistoricalSharesFloat('AAPL');

Parameters

ParameterTypeRequiredDescription
symbolstringYesStock symbol

Example Response

1{
2  success: true,
3  data: [
4    {
5      symbol: 'AAPL',
6      freeFloat: 0.85,
7      floatShares: '14921252530',
8      outstandingShares: '15800000000',
9      source: 'SEC Filing',
10      date: '2024-01-25'
11    },
12    {
13      symbol: 'AAPL',
14      freeFloat: 0.84,
15      floatShares: '14850000000',
16      outstandingShares: '15750000000',
17      source: 'SEC Filing',
18      date: '2023-12-31'
19    }
20  ]
21}

Get Earnings Call Transcript

Retrieve earnings call transcripts for specific quarters and years.

1const transcript = await fmp.company.getEarningsCallTranscript({
2  symbol: 'AAPL',
3  year: 2024,
4  quarter: 1
5});

Parameters

ParameterTypeRequiredDescription
symbolstringYesStock symbol
yearnumberYesYear of the earnings call
quarternumberYesQuarter of the earnings call (1-4)

Example Response

1{
2  success: true,
3  data: [
4    {
5      symbol: 'AAPL',
6      quarter: 1,
7      year: 2024,
8      date: '2024-01-25',
9      content: 'Operator: Good day, and welcome to the Apple Inc. Q1 2024 Earnings Conference Call...'
10    }
11  ]
12}

Get Company Transcript Data

Retrieve available transcript dates and data for a company's earnings calls.

1const transcriptData = await fmp.company.getCompanyTranscriptData('AAPL');

Parameters

ParameterTypeRequiredDescription
symbolstringYesStock symbol

Example Response

1{
2  success: true,
3  data: [
4    [2024, 1, '2024-01-25'],
5    [2023, 4, '2023-10-26'],
6    [2023, 3, '2023-07-27'],
7    [2023, 2, '2023-05-04'],
8    [2023, 1, '2023-02-02']
9  ]
10}

Data Types

CompanyProfile

1interface CompanyProfile {
2symbol: string;
3price: number;
4beta: number;
5volAvg: number;
6mktCap: number;
7lastDiv: number;
8range: string;
9changes: number;
10companyName: string;
11currency: string;
12cik: string;
13isin: string;
14cusip: string;
15exchange: string;
16exchangeShortName: string;
17industry: string;
18website: string;
19description: string;
20ceo: string;
21sector: string;
22country: string;
23fullTimeEmployees: string;
24phone: string;
25address: string;
26city: string;
27state: string;
28zip: string;
29dcfDiff: number;
30dcf: number;
31image: string;
32ipoDate: string;
33defaultImage: boolean;
34isEtf: boolean;
35isActivelyTrading: boolean;
36isAdr: boolean;
37isFund: boolean;
38}

ExecutiveCompensation

1interface ExecutiveCompensation {
2cik: string;
3symbol: string;
4companyName: string;
5industryTitle: string;
6acceptedDate: string;
7filingDate: string;
8nameAndPosition: string;
9year: number;
10salary: number;
11bonus: number;
12stock_award: number;
13incentive_plan_compensation: number;
14all_other_compensation: number;
15total: number;
16url: string;
17}

SharesFloat

1interface SharesFloat {
2symbol: string;
3freeFloat: number;
4floatShares: number;
5outstandingShares: number;
6source: string;
7date: string;
8}

HistoricalSharesFloat

1interface HistoricalSharesFloat {
2symbol: string;
3freeFloat: number;
4floatShares: string;
5outstandingShares: string;
6source: string;
7date: string;
8}

CompanyTranscriptData

1type CompanyTranscriptData = [number, number, string];

Note: The CompanyTranscriptData type represents an array where:

  • [0]: Year (number)
  • [1]: Quarter (number, 1-4)
  • [2]: Date (string, ISO format)

Error Handling

All company endpoints return a standardized response format with error handling:

1interface UnwrappedAPIResponse<T> {
2success: boolean;
3data: T | null;
4error?: string;
5}

When an error occurs, the response will include:

  • success: false
  • data: null
  • error: string - Description of the error

Rate Limits

Company endpoints are subject to the same rate limits as other FMP API endpoints. Please refer to your subscription plan for specific limits.

Examples

Complete Company Analysis

1// Get comprehensive company information
2const [profile, compensation, employeeData, sharesFloat, transcriptData] = await Promise.all([
3fmp.company.getCompanyProfile('AAPL'),
4fmp.company.getExecutiveCompensation('AAPL'),
5fmp.company.getHistoricalEmployeeCount('AAPL'),
6fmp.company.getSharesFloat('AAPL'),
7fmp.company.getCompanyTranscriptData('AAPL')
8]);
9
10// Analyze company metrics
11if (profile.success && profile.data) {
12console.log('Company:', profile.data.companyName);
13console.log('Market Cap:', profile.data.mktCap);
14console.log('Industry:', profile.data.industry);
15console.log('Employees:', profile.data.fullTimeEmployees);
16}
17
18// Check available transcripts
19if (transcriptData.success && transcriptData.data) {
20console.log('Available transcripts:', transcriptData.data.length);
21const latestTranscript = transcriptData.data[0];
22console.log('Latest transcript:', `Q${latestTranscript[1]} ${latestTranscript[0]} - ${latestTranscript[2]}`);
23}

Historical Analysis

1// Get historical data for analysis
2const [historicalEmployees, historicalShares] = await Promise.all([
3fmp.company.getHistoricalEmployeeCount('AAPL'),
4fmp.company.getHistoricalSharesFloat('AAPL')
5]);
6
7// Analyze trends
8if (historicalEmployees.success && historicalEmployees.data) {
9const employeeGrowth = historicalEmployees.data
10.sort((a, b) => new Date(b.filingDate).getTime() - new Date(a.filingDate).getTime())
11.slice(0, 5);
12
13console.log('Recent employee count trends:', employeeGrowth);
14}