openapi: 3.1.0 info: title: SEC EDGAR Submissions & Company Facts XBRL API description: The SEC EDGAR data APIs provide free, authenticated-free access to company filing metadata, XBRL financial data, and full-text search across all SEC submissions. APIs are hosted at data.sec.gov and efts.sec.gov and require a descriptive User-Agent header per SEC fair-access policy. version: 1.0.0 contact: name: SEC Developer Resources url: https://www.sec.gov/developer license: name: Public Domain (U.S. Government Work) url: https://www.sec.gov/privacy.htm servers: - url: https://data.sec.gov description: SEC EDGAR Data API - url: https://efts.sec.gov description: SEC EDGAR Full-Text Search tags: - name: XBRL description: Structured XBRL financial data paths: /api/xbrl/companyfacts/CIK{cik}.json: get: operationId: getCompanyFacts summary: Get all XBRL facts for a company description: Returns all structured financial data reported in XBRL-tagged SEC filings for a company. Covers all US-GAAP and DEI taxonomy concepts across all filings. Data is organized by concept with historical values per period. tags: - XBRL parameters: - name: cik in: path required: true description: 10-digit CIK with leading zeros schema: type: string pattern: ^\d{10}$ example: 0000320193 responses: '200': description: All XBRL company facts content: application/json: schema: $ref: '#/components/schemas/CompanyFacts' '404': description: Company not found /api/xbrl/companyconcept/CIK{cik}/{taxonomy}/{concept}.json: get: operationId: getCompanyConcept summary: Get a single XBRL concept for a company description: Returns all historical values reported for a specific XBRL concept by a company. For example, retrieve all reported values of AccountsPayableCurrent from the us-gaap taxonomy across all filings. tags: - XBRL parameters: - name: cik in: path required: true schema: type: string pattern: ^\d{10}$ example: 0000320193 - name: taxonomy in: path required: true description: XBRL taxonomy namespace schema: type: string enum: - us-gaap - ifrs-full - dei - srt example: us-gaap - name: concept in: path required: true description: XBRL concept name (camelCase) schema: type: string example: AccountsPayableCurrent responses: '200': description: Historical values for the specified concept content: application/json: schema: $ref: '#/components/schemas/CompanyConcept' '404': description: Company or concept not found /api/xbrl/frames/{taxonomy}/{concept}/{unit}/{period}.json: get: operationId: getXBRLFrames summary: Get all company values for a concept in a period description: Returns values for a given XBRL concept across all companies for a specific period. Useful for cross-company financial data comparisons and benchmarking. tags: - XBRL parameters: - name: taxonomy in: path required: true schema: type: string enum: - us-gaap - ifrs-full - dei - srt example: us-gaap - name: concept in: path required: true schema: type: string example: AccountsPayableCurrent - name: unit in: path required: true description: Unit of measure (USD, shares, pure) schema: type: string example: USD - name: period in: path required: true description: 'Period identifier. For annual instant: CY{year}Q{quarter}I. For annual duration: CY{year}.' schema: type: string example: CY2023Q4I responses: '200': description: Cross-company values for the concept content: application/json: schema: $ref: '#/components/schemas/XBRLFrames' components: schemas: CompanyFacts: type: object properties: cik: type: integer entityName: type: string facts: type: object description: Nested object of taxonomy > concept > unit > data additionalProperties: type: object description: Taxonomy namespace (e.g., us-gaap, dei) additionalProperties: type: object description: XBRL concept properties: label: type: string description: type: string units: type: object additionalProperties: type: array items: $ref: '#/components/schemas/XBRLFact' CompanyConcept: type: object properties: cik: type: integer taxonomy: type: string tag: type: string label: type: string description: type: string entityName: type: string units: type: object additionalProperties: type: array items: $ref: '#/components/schemas/XBRLFact' XBRLFact: type: object properties: end: type: string format: date description: Period end date for duration facts; instant date for point-in-time facts val: type: number description: Reported value accn: type: string description: Accession number of filing fy: type: integer description: Fiscal year fp: type: string description: Fiscal period (FY, Q1, Q2, Q3, Q4) form: type: string description: Form type filed: type: string format: date frame: type: string description: XBRL frame identifier start: type: string format: date description: Period start date (for duration facts) XBRLFrames: type: object properties: taxonomy: type: string tag: type: string ccp: type: string description: Concept-currency-period identifier uom: type: string description: Unit of measure label: type: string description: type: string pts: type: integer description: Number of data points data: type: array items: type: object properties: accn: type: string cik: type: integer entityName: type: string loc: type: string description: Country/state code end: type: string format: date val: type: number