openapi: 3.2.0 info: title: Tiingo Fundamentals API version: 1.0.0 description: 'Tiingo''s REST API for financial market data: end-of-day equity prices, IEX intraday, BOATS overnight equity data, consolidated equity realtime snapshots, crypto, crypto yield, forex, fundamentals, mutual fund and ETF fees, corporate actions, curated news, and asset search. Most endpoints return JSON by default and support CSV via the format parameter. Generated by API Evangelist from Tiingo''s published documentation (https://www.tiingo.com/documentation/) - Tiingo does not publish an OpenAPI itself.' termsOfService: https://www.tiingo.com/about/terms contact: name: Tiingo Support url: https://www.tiingo.com/support email: support@tiingo.com x-apievangelist: generated: '2026-07-22' method: generated source: https://apimedia.tiingo.com/dist/src_app_api_documentation_documentation_module_ts-es2015.f5eea3d64917e26bb724.js servers: - url: https://api.tiingo.com security: - apiTokenHeader: [] - apiTokenQuery: [] tags: - name: Fundamentals paths: /tiingo/fundamentals/definitions: get: operationId: getFundamentalsDefinitions summary: Get definitions of available fundamentals fields tags: - Fundamentals externalDocs: url: https://www.tiingo.com/documentation/fundamentals responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/FundamentalsDefinition' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/fundamentals/meta: get: operationId: getFundamentalsMeta summary: Get fundamentals metadata for tickers tags: - Fundamentals externalDocs: url: https://www.tiingo.com/documentation/fundamentals parameters: - name: tickers in: query required: false description: Specific tickers to return meta data for. If no string passed, will return meta data for all available tickers. Can either be a single ticker, a comma-separated list of tickers, or an array of strings (string[]). schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/FundamentalsMeta' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/fundamentals/{ticker}/statements: get: operationId: getFundamentalsStatements summary: Get financial statement history for a ticker tags: - Fundamentals externalDocs: url: https://www.tiingo.com/documentation/fundamentals parameters: - name: ticker in: path required: true description: Required. Use the ticker for active symbols, or Tiingo PermaTicker (stable identifier) for delisted/recycled symbols. schema: type: string - name: asReported in: query required: false description: When false (default), the endpoint will return the most recent data, including any revisions for the reporting period. The dates will correspond to the fiscal end of the quarter or year. When true, the endpoint will return the data as it was reported on the release date. Similarly, the date will correspond to the date the filings were posted on the SEC. schema: type: boolean - name: startDate in: query required: false description: This filter limits metrics to on or after the startDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endDate in: query required: false description: This filter limits metrics to on or before the endDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: sort in: query required: false description: 'This field allows you to specify the sort direct and which column to sort by. Prepend "-" if you want descending order, otherwise it will be ascending. E.g. sort=date will sort by date in ascending order. sort=-date will sort by date in descending order. NOTE: For Fundamentals statement only the "date" field may be sorted upon' schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/FundamentalsStatement' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' /tiingo/fundamentals/{ticker}/daily: get: operationId: getFundamentalsDaily summary: Get daily fundamentals metrics for a ticker tags: - Fundamentals externalDocs: url: https://www.tiingo.com/documentation/fundamentals parameters: - name: ticker in: path required: true description: Required. Use the ticker for active symbols, or Tiingo PermaTicker (stable identifier) for delisted/recycled symbols. schema: type: string - name: startDate in: query required: false description: This filter limits metrics to on or after the startDate (>=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: endDate in: query required: false description: This filter limits metrics to on or before the endDate (<=). Parameter must be in YYYY-MM-DD format. schema: type: string format: date - name: sort in: query required: false description: This field allows you to specify the sort direct and which column to sort by. Prepend "-" if you want descending order, otherwise it will be ascending. E.g. sort=date will sort by date in ascending order. sort=-date will sort by date in descending order. schema: type: string responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/FundamentalsDaily' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' components: schemas: FundamentalsDaily: type: object properties: date: type: string format: date-time description: The date the daily data corresponds to. marketCap: type: number description: The value of the field corresponding to the market capitalization. enterpriseVal: type: number description: The value of the field corresponding to the enterprise value. peRatio: type: number description: The value of the field corresponding to the price/earnings ratio. pbRatio: type: number description: The value of the field corresponding to the price/book ratio. trailingPEG1Y: type: number description: The value of the field corresponding to the trailing 1 year PEG Ratio. FundamentalsDefinition: type: object properties: dataCode: type: string description: An identifier representing the fundamentals field the value belongs to. For example, "peRatio." name: type: string description: A human-friendly readable name of the field. description: type: string description: A description of the field. statementType: type: string description: One of four values ("balanceSheet", "incomeStatement", "cashFlow", "overview"), representing which statement this value belongs to. For example, "netIncome" would belong to "incomeStatement". units: type: string description: The unit the field value is in. Value is either "$", "%" or blank. If blank, value may either be an integer (like shares outstanding), or a ratio. FundamentalsStatement: type: object properties: date: type: string format: date-time description: The date the statement data was released to the public. quarter: type: integer description: An integer corresponding to the fiscal quarter reported. A value of "0" means this is an Annual Report. A value of "1" through "4" corresponds to the respective fiscal quarter. year: type: integer description: An integer corresponding to the fiscal year reported. statementData: allOf: - $ref: '#/components/schemas/FundamentalsStatementData' description: 'Statement data that is broken out by four different fields in a JSON object. Each fields corresponds to a statement. The four fields are: balanceSheet : Balance sheet data incomeStatement : Income Statement Data cashFlow : Cash flow statement data overview : Metrics and ratios that may be a combination of the fields from various statements Each field will return an array of "dataCode" and "value" pairs that are described in the "Statement Data Table" below.' FundamentalsStatementData: type: object properties: dataCode: type: string description: An identifier representing the fundamentals field the value belongs to. For example, "peRatio." value: type: number description: The value of the field corresponding to the dataCode FundamentalsMeta: type: object properties: permaTicker: type: string description: Permanent Tiingo Ticker mapping to the security. Can be used as a primary key. ticker: type: string description: Ticker related to the asset. name: type: string description: Full-length name of the asset. isActive: type: boolean description: Boolean describing whether or not the ticker is still actively traded. If false, this ticker is delisted. isADR: type: boolean description: Boolean describing whether or not the ticker is an ADR. Value is true if listed ticker is an ADR. sector: type: string description: Sector information that is derived from sicSector and is meant to approximate GICS. industry: type: string description: Sector information that is derived from sicIndustry and is meant to approximate GICS. sicCode: type: integer description: SIC Code that represents company's business activities. sicSector: type: string description: Sector as determined by the SIC Code. sicIndustry: type: string description: Industry as determined by the SIC Code. reportingCurrency: type: string description: The currency the company reports their SEC statement filings in. location: type: string description: Location/domicile of the company. States are included for U.S. companies, otherwise countries for non-US companies. companyWebsite: type: string description: The website of the company when available. secFilingWebsite: type: string description: A URL to where you can find the company's SEC filings directly on the SEC website. statementLastUpdated: type: string format: date-time description: The timestamp the statement data/endpoint was last updated for the ticker. dailyLastUpdated: type: string format: date-time description: The timestamp the daily data/endpoint was last updated for the ticker. responses: Unauthorized: description: Missing or invalid API token. TooManyRequests: description: Usage limit exceeded. Tiingo limits by hourly requests (reset every hour), daily requests (reset at midnight EST), and monthly bandwidth (reset the first of every month at midnight EST); there is no per-minute or per-second rate limit. securitySchemes: apiTokenHeader: type: apiKey in: header name: Authorization description: 'Pass your API token in the Authorization header as: Authorization: Token .' apiTokenQuery: type: apiKey in: query name: token description: Pass your API token directly in the request URL via the token query parameter. externalDocs: description: Tiingo API documentation url: https://www.tiingo.com/documentation/general/overview