Financial Modeling Prep Analyst Estimates API

Consensus analyst estimates for revenue, EPS, and other forecast figures, together with analyst price targets and stock grades / rating changes, queried by ticker with annual or quarterly periods.

OpenAPI Specification

financialmodelingprep-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Financial Modeling Prep API
  description: >-
    Financial Modeling Prep (FMP) provides real-time and historical financial
    data through more than 100 REST endpoints served from the stable base
    https://financialmodelingprep.com/stable. Coverage includes company financial
    statements (income statement, balance sheet, cash flow), real-time and
    historical quotes for stocks, forex, crypto, and commodities, SEC filings,
    analyst estimates, company fundamentals (profile, key metrics, ratios), and
    macroeconomic indicators. All requests are authenticated with an API key
    passed as the `apikey` query parameter. Responses default to JSON and most
    endpoints also support CSV via the `datatype` parameter. This document models
    a representative subset of the stable endpoints; see the FMP developer docs
    for the full catalog. FMP also exposes a real-time WebSocket surface, modeled
    separately in asyncapi/financialmodelingprep-asyncapi.yml.
  version: 'stable'
  contact:
    name: Financial Modeling Prep
    url: https://site.financialmodelingprep.com
  termsOfService: https://site.financialmodelingprep.com/terms-of-service
servers:
  - url: https://financialmodelingprep.com/stable
    description: FMP stable REST base
  - url: https://financialmodelingprep.com/api/v3
    description: FMP legacy v3 REST base
security:
  - apiKeyQuery: []
tags:
  - name: Financial Statements
    description: Income statement, balance sheet, and cash-flow statement data.
  - name: Quotes and Prices
    description: Real-time quotes and historical end-of-day prices.
  - name: SEC Filings
    description: Latest and searchable SEC filings for public companies.
  - name: Fundamentals
    description: Company profile plus derived key metrics and ratios.
  - name: Analyst Estimates
    description: Consensus estimates, price targets, and rating grades.
  - name: Economic Data
    description: Macroeconomic indicators, treasury rates, and economic calendar.
paths:
  /income-statement:
    get:
      operationId: getIncomeStatement
      tags:
        - Financial Statements
      summary: Income statement
      description: >-
        Returns annual or quarterly income statements for a company, identified
        by ticker symbol.
      parameters:
        - $ref: '#/components/parameters/symbol'
        - $ref: '#/components/parameters/period'
        - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: A list of income statement periods.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /balance-sheet-statement:
    get:
      operationId: getBalanceSheetStatement
      tags:
        - Financial Statements
      summary: Balance sheet statement
      description: >-
        Returns annual or quarterly balance sheet statements for a company,
        identified by ticker symbol.
      parameters:
        - $ref: '#/components/parameters/symbol'
        - $ref: '#/components/parameters/period'
        - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: A list of balance sheet periods.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /cash-flow-statement:
    get:
      operationId: getCashFlowStatement
      tags:
        - Financial Statements
      summary: Cash flow statement
      description: >-
        Returns annual or quarterly cash-flow statements for a company,
        identified by ticker symbol.
      parameters:
        - $ref: '#/components/parameters/symbol'
        - $ref: '#/components/parameters/period'
        - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: A list of cash-flow statement periods.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /quote:
    get:
      operationId: getQuote
      tags:
        - Quotes and Prices
      summary: Full quote
      description: >-
        Returns a real-time full quote for a stock, ETF, index, forex pair,
        crypto pair, or commodity, identified by symbol.
      parameters:
        - $ref: '#/components/parameters/symbol'
      responses:
        '200':
          description: The current quote for the symbol.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /historical-price-eod/full:
    get:
      operationId: getHistoricalPriceEodFull
      tags:
        - Quotes and Prices
      summary: Historical end-of-day prices
      description: >-
        Returns historical daily (end-of-day) open/high/low/close and volume for
        a symbol, optionally bounded by a from/to date range. Up to 30 years of
        history is available.
      parameters:
        - $ref: '#/components/parameters/symbol'
        - name: from
          in: query
          required: false
          description: Start date (YYYY-MM-DD).
          schema:
            type: string
            format: date
        - name: to
          in: query
          required: false
          description: End date (YYYY-MM-DD).
          schema:
            type: string
            format: date
      responses:
        '200':
          description: Historical end-of-day price bars.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /sec-filings-search/symbol:
    get:
      operationId: getSecFilingsBySymbol
      tags:
        - SEC Filings
      summary: SEC filings by symbol
      description: >-
        Searches SEC filings for a company by ticker symbol within a date range,
        returning filing metadata and links to the source EDGAR documents.
      parameters:
        - $ref: '#/components/parameters/symbol'
        - name: from
          in: query
          required: false
          description: Start date (YYYY-MM-DD).
          schema:
            type: string
            format: date
        - name: to
          in: query
          required: false
          description: End date (YYYY-MM-DD).
          schema:
            type: string
            format: date
        - $ref: '#/components/parameters/page'
        - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: A list of matching SEC filings.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /sec-filings-search/cik:
    get:
      operationId: getSecFilingsByCik
      tags:
        - SEC Filings
      summary: SEC filings by CIK
      description: >-
        Searches SEC filings for a company by its SEC Central Index Key (CIK)
        within a date range.
      parameters:
        - name: cik
          in: query
          required: true
          description: SEC Central Index Key, e.g. 0000320193 for Apple.
          schema:
            type: string
        - name: from
          in: query
          required: false
          description: Start date (YYYY-MM-DD).
          schema:
            type: string
            format: date
        - name: to
          in: query
          required: false
          description: End date (YYYY-MM-DD).
          schema:
            type: string
            format: date
        - $ref: '#/components/parameters/page'
        - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: A list of matching SEC filings.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /financials-latest:
    get:
      operationId: getLatestFinancialFilings
      tags:
        - SEC Filings
      summary: Latest SEC filings
      description: >-
        Returns the most recent SEC filings submitted across public companies,
        for real-time monitoring of new disclosures.
      parameters:
        - $ref: '#/components/parameters/page'
        - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: The latest filings feed.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /profile:
    get:
      operationId: getCompanyProfile
      tags:
        - Fundamentals
      summary: Company profile
      description: >-
        Returns a company profile - sector, industry, description, market cap,
        exchange, executives, and identifiers - for a ticker symbol.
      parameters:
        - $ref: '#/components/parameters/symbol'
      responses:
        '200':
          description: The company profile.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /key-metrics:
    get:
      operationId: getKeyMetrics
      tags:
        - Fundamentals
      summary: Key metrics
      description: >-
        Returns per-period key financial metrics (per-share values, margins,
        returns, and other derived measures) for a ticker symbol.
      parameters:
        - $ref: '#/components/parameters/symbol'
        - $ref: '#/components/parameters/period'
        - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: A list of key-metric periods.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /ratios:
    get:
      operationId: getFinancialRatios
      tags:
        - Fundamentals
      summary: Financial ratios
      description: >-
        Returns per-period financial ratios (liquidity, profitability, leverage,
        and valuation) for a ticker symbol.
      parameters:
        - $ref: '#/components/parameters/symbol'
        - $ref: '#/components/parameters/period'
        - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: A list of ratio periods.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /analyst-estimates:
    get:
      operationId: getAnalystEstimates
      tags:
        - Analyst Estimates
      summary: Analyst estimates
      description: >-
        Returns consensus analyst estimates - projected revenue, EPS, EBITDA,
        and net income - for a ticker symbol, by annual or quarterly period.
      parameters:
        - $ref: '#/components/parameters/symbol'
        - $ref: '#/components/parameters/period'
        - $ref: '#/components/parameters/page'
        - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: A list of analyst estimate periods.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /financial-estimates:
    get:
      operationId: getFinancialEstimates
      tags:
        - Analyst Estimates
      summary: Financial estimates
      description: >-
        Returns forward-looking financial estimates for a ticker symbol as
        forecast by analysts.
      parameters:
        - $ref: '#/components/parameters/symbol'
        - $ref: '#/components/parameters/period'
        - $ref: '#/components/parameters/page'
        - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: A list of financial estimate periods.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /economic-indicators:
    get:
      operationId: getEconomicIndicators
      tags:
        - Economic Data
      summary: Economic indicators
      description: >-
        Returns time-series values for a named macroeconomic indicator such as
        GDP, CPI, or unemployment rate.
      parameters:
        - name: name
          in: query
          required: true
          description: Indicator name, e.g. GDP, CPI, unemploymentRate.
          schema:
            type: string
        - name: from
          in: query
          required: false
          description: Start date (YYYY-MM-DD).
          schema:
            type: string
            format: date
        - name: to
          in: query
          required: false
          description: End date (YYYY-MM-DD).
          schema:
            type: string
            format: date
      responses:
        '200':
          description: A macroeconomic indicator time series.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /treasury-rates:
    get:
      operationId: getTreasuryRates
      tags:
        - Economic Data
      summary: Treasury rates
      description: >-
        Returns U.S. treasury rates across standard maturities for a date range.
      parameters:
        - name: from
          in: query
          required: false
          description: Start date (YYYY-MM-DD).
          schema:
            type: string
            format: date
        - name: to
          in: query
          required: false
          description: End date (YYYY-MM-DD).
          schema:
            type: string
            format: date
      responses:
        '200':
          description: Treasury rates by maturity.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
  /economic-calendar:
    get:
      operationId: getEconomicCalendar
      tags:
        - Economic Data
      summary: Economic calendar
      description: >-
        Returns scheduled macroeconomic events and releases within a date range.
      parameters:
        - name: from
          in: query
          required: false
          description: Start date (YYYY-MM-DD).
          schema:
            type: string
            format: date
        - name: to
          in: query
          required: false
          description: End date (YYYY-MM-DD).
          schema:
            type: string
            format: date
      responses:
        '200':
          description: A list of economic calendar events.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
components:
  parameters:
    symbol:
      name: symbol
      in: query
      required: true
      description: Ticker symbol, e.g. AAPL. Some endpoints accept forex (EURUSD) or crypto (BTCUSD) symbols.
      schema:
        type: string
    period:
      name: period
      in: query
      required: false
      description: Reporting period.
      schema:
        type: string
        enum:
          - annual
          - quarter
        default: annual
    limit:
      name: limit
      in: query
      required: false
      description: Maximum number of records to return.
      schema:
        type: integer
        default: 100
    page:
      name: page
      in: query
      required: false
      description: Zero-based page number for paginated results.
      schema:
        type: integer
        default: 0
  securitySchemes:
    apiKeyQuery:
      type: apiKey
      in: query
      name: apikey
      description: >-
        FMP API key passed as the `apikey` query parameter on every request,
        e.g. ?apikey=YOUR_API_KEY. Obtain a key from the FMP dashboard.