sec-edgar XBRL API

Structured XBRL financial data

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/sec-edgar-xbrl-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

sec-edgar-xbrl-api-openapi.yml Raw ↑
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