openapi: 3.1.0 info: title: EODHD Financial Data Calendar End-of-Day Data API description: Comprehensive API for retrieving financial data including stock prices, fundamentals, calendar events, news, and more from EOD Historical Data (eodhd.com) version: 2.0.0 contact: name: EODHD Support url: https://eodhd.com email: supportlevel1@eodhistoricaldata.com termsOfService: https://eodhd.com/financial-apis/terms-conditions license: name: Proprietary url: https://eodhd.com/financial-apis/terms-conditions servers: - url: https://eodhd.com/api description: Primary API path - url: https://eodhistoricaldata.com/api description: Alternative API path security: - EODHDQueryKey: [] tags: - name: End-of-Day Data description: Historical and current end-of-day price data paths: /eod/{ticker}: get: summary: Retrieve end-of-day historical price data description: Retrieve end-of-day historical data for a specific company by its ticker symbol, with optional filters for specific data points. operationId: GetEODDataByTicker parameters: - name: ticker in: path required: true description: Ticker symbol of the company schema: type: string - name: api_token in: query required: true description: API token for authentication schema: type: string - name: fmt in: query required: false description: Response format (e.g., 'json') schema: type: string enum: - json - csv - name: from in: query required: false description: Start date for historical data (YYYY-MM-DD) schema: type: string format: date - name: to in: query required: false description: End date for historical data (YYYY-MM-DD) schema: type: string format: date - name: period in: query required: false description: Data period (e.g., 'd' for daily, 'w' for weekly, 'm' for monthly) schema: type: string enum: - d - w - m - name: filter in: query required: false description: Filter for specific last known data points schema: type: string enum: - last_date - last_open - last_high - last_low - last_close - last_volume responses: '200': description: Successful response with EOD historical data or single value for filtered data content: application/json: schema: oneOf: - type: array items: type: object properties: date: type: string format: date open: type: number high: type: number low: type: number close: type: number adjusted_close: type: number volume: type: integer - type: number description: Single value for the specified filter query (e.g., last close price) examples: default: summary: Full historical data array example value: - date: '2022-01-03' open: 177.83 high: 182.88 low: 177.71 close: 182.01 adjusted_close: 179.2736 volume: 104487900 - date: '2022-01-04' open: 182.63 high: 182.94 low: 179.12 close: 179.7 adjusted_close: 176.9984 volume: 99310400 filtered_last_close: summary: Filtered last close price example value: 295.21 '400': description: Invalid request parameters '401': description: Unauthorized '404': description: Company or data not found tags: - End-of-Day Data /eod-bulk-last-day/{exchange}: get: summary: Retrieve bulk EOD, splits, or dividends data description: Retrieve bulk end-of-day data, splits, or dividends for an entire exchange or specific tickers, with an option for extended data. operationId: GetBulkEODData parameters: - name: exchange in: path required: true description: Exchange symbol (e.g., 'VI' for Vienna or 'US' for the U.S.). schema: type: string - name: api_token in: query required: true description: API token for authentication. schema: type: string - name: fmt in: query required: false description: Response format ('json' or 'csv'). schema: type: string enum: - json - csv default: json - name: type in: query required: false description: Data type ('eod' for end-of-day data, 'splits' for stock splits, 'dividends' for dividend information). schema: type: string enum: - eod - splits - dividends default: eod - name: date in: query required: false description: Specific date for historical data (YYYY-MM-DD). Defaults to the last trading day. schema: type: string format: date - name: symbols in: query required: false description: Comma-separated list of specific tickers to retrieve data for (e.g., 'MSFT,AAPL'). Only available for EOD data. schema: type: string - name: filter in: query required: false description: Extended filter for additional data such as company name, EMA, etc. Only available in JSON format. schema: type: string enum: - extended responses: '200': description: Successful response with bulk data. content: application/json: schema: oneOf: - type: array items: type: object properties: code: type: string description: Ticker code. exchange_short_name: type: string description: Exchange symbol. date: type: string format: date description: Data date. open: type: number description: Open price. high: type: number description: High price. low: type: number description: Low price. close: type: number description: Close price. adjusted_close: type: number description: Adjusted close price. volume: type: integer description: Trading volume. required: - exchange_short_name - type: array items: type: object properties: code: type: string description: Ticker code. exchange: type: string description: Exchange symbol. date: type: string format: date description: Date of the split. split: type: string description: Stock split ratio. required: - split description: Bulk splits data. - type: array items: type: object properties: code: type: string description: Ticker code. exchange: type: string description: Exchange symbol. date: type: string format: date description: Date of dividend. dividend: type: number description: Dividend amount. currency: type: string description: Dividend currency. declarationDate: type: - string - 'null' format: date description: Declaration date (if available). recordDate: type: - string - 'null' format: date description: Record date (if available). paymentDate: type: - string - 'null' format: date description: Payment date (if available). period: type: - string - 'null' description: Period type (if available). unadjustedValue: type: number description: Unadjusted dividend value. required: - dividend description: Bulk dividends data. examples: default: summary: Bulk EOD data example value: - code: ABIN exchange_short_name: VI date: '2024-11-05' open: 54.28 high: 54.28 low: 53.96 close: 53.96 adjusted_close: 53.96 volume: 11 extended: summary: Extended EOD data example value: - code: MSFT name: Microsoft Corporation type: Common Stock exchange_short_name: US date: '2024-11-05' MarketCapitalization: 3051053121536 Beta: 0.896 open: 408.33 high: 414.9 low: 408.08 close: 411.46 adjusted_close: 411.46 volume: 17429735 ema_50d: 420.793 ema_200d: 408.962 hi_250d: 466.719 lo_250d: 358.003 prev_close: 408.46 change: 3 change_p: 0.7345 avgvol_14d: 21383411 avgvol_50d: 18974565.08 avgvol_200d: 20144592.27 splits: summary: Bulk splits data example value: - code: AQMS exchange: US date: '2024-11-05' split: 1.000000/20.000000 dividends: summary: Bulk dividends data example value: - code: 18RA exchange: F date: '2024-11-05' dividend: 0.07 currency: USD declarationDate: '' recordDate: '' paymentDate: '' period: '' unadjustedValue: 0.07 '400': description: Invalid request parameters. '401': description: Unauthorized request. '404': description: No data found for the specified exchange or date. tags: - End-of-Day Data components: securitySchemes: EODHDQueryKey: type: apiKey in: query name: api_token description: EODHD API key (stored as a secret in ChatGPT).