{
  "openapi": "3.0.1",
  "info": {
    "title": "SEC EDGAR Financials & Filings API (10-K, 10-Q, 8-K)",
    "description": "Financials and SEC EDGAR filings for US public companies, built for AI agents: one clean row per company and fiscal period (revenue, net income, EPS, assets, cash flow) with a source-filing link, plus filing lists and full-text search. Not affiliated with the SEC. By Harlo.",
    "version": "0.1",
    "x-build-id": "Dn3KXsrbICyobL4wd"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/brightish_ascent~company-financials-sec-filings/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-brightish_ascent-company-financials-sec-filings",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/brightish_ascent~company-financials-sec-filings/runs": {
      "post": {
        "operationId": "runs-sync-brightish_ascent-company-financials-sec-filings",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/brightish_ascent~company-financials-sec-filings/run-sync": {
      "post": {
        "operationId": "run-sync-brightish_ascent-company-financials-sec-filings",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "mode": {
            "title": "Mode",
            "enum": [
              "financials",
              "filings",
              "search"
            ],
            "type": "string",
            "description": "What to return. financials = income statement, balance sheet and cash-flow highlights, one row per company and fiscal period (annual or quarterly) from XBRL data, with prior-year duplicates removed. filings = list of a company's SEC filings (10-K, 10-Q, 8-K, ...) with links, newest first. search = full-text search across SEC filings for a phrase (optionally limited to companies, forms and dates).",
            "default": "financials"
          },
          "companies": {
            "title": "Companies (ticker, CIK or exact name)",
            "type": "array",
            "description": "US-listed companies by stock ticker (AAPL, MSFT, BRK.B), SEC CIK number (320193) or exact registered company name (Apple Inc.). Up to 25. Required for financials and filings mode (if empty there, AAPL is used); optional filter in search mode. Company-level data only: individual filers (insiders) are rejected.",
            "items": {
              "type": "string"
            }
          },
          "periodType": {
            "title": "Period type (financials)",
            "enum": [
              "annual",
              "quarterly"
            ],
            "type": "string",
            "description": "Financials mode only. annual = fiscal-year rows from 10-K, 20-F or 40-F. quarterly = fiscal-quarter rows from 10-Q; fiscal Q4 and year-to-date-only cash flows are derived (full year minus 9 months) and listed in derivedMetrics. Fiscal Q4 EPS (epsBasic, epsDiluted) and weightedAverageDilutedShares are left null unless the company reports the 3-month figure itself, because they are not additive.",
            "default": "annual"
          },
          "periods": {
            "title": "Periods per company (financials)",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "Financials mode only. Number of most recent fiscal periods to return per company, 1-20 (default 4). Each returned row is one charged company-period row.",
            "default": 4
          },
          "forms": {
            "title": "Form types (filings / search)",
            "type": "array",
            "description": "Filings and search mode. Limit to these SEC form types; each also matches its amendment (10-K includes 10-K/A; 424B includes 424B1-424B8). Empty = all supported company forms. Forms 3, 4, 5, 144 and D (insider and private-offering filings with personal data) are permanently excluded and cannot be requested.",
            "items": {
              "type": "string",
              "enum": [
                "10-K",
                "10-Q",
                "8-K",
                "20-F",
                "40-F",
                "6-K",
                "10-KT",
                "10-QT",
                "S-1",
                "S-3",
                "S-4",
                "S-8",
                "F-1",
                "F-3",
                "F-4",
                "424B",
                "DEF 14A",
                "DEFA14A",
                "PRE 14A",
                "11-K",
                "ARS",
                "SD",
                "10-12B",
                "8-A12B",
                "NT 10-K",
                "NT 10-Q",
                "25-NSE"
              ]
            }
          },
          "query": {
            "title": "Search phrase (search mode)",
            "type": "string",
            "description": "Search mode only (required there). Words or an exact phrase in double quotes to find in filing text, e.g. \"share repurchase\", \"going concern\", \"material weakness\", tariffs. Returns one row per matching filing with a link to the matched document."
          },
          "dateFrom": {
            "title": "Filed on or after (YYYY-MM-DD)",
            "pattern": "^$|^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string",
            "description": "Filings and search mode. Earliest filing date, YYYY-MM-DD, e.g. 2026-01-01. Empty = no lower bound (filings: newest first; search: all years since 2001)."
          },
          "dateTo": {
            "title": "Filed on or before (YYYY-MM-DD)",
            "pattern": "^$|^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string",
            "description": "Filings and search mode. Latest filing date, YYYY-MM-DD. Empty = today."
          },
          "maxItems": {
            "title": "Max rows",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Max rows per run, 1-1000 (default 20). In financials mode the cap applies across ALL companies: a run needs companies x periods rows (e.g. 6 x 4 = 24), so raise maxItems or split the call. Cut companies are never dropped silently: OUTPUT truncationNote and the run status name them. You pay per returned row.",
            "default": 20
          },
          "onlyNewSinceLastRun": {
            "title": "Only new since last run",
            "type": "boolean",
            "description": "For scheduled monitoring. If true, returns only rows that appeared since an earlier run with the same companies and filters (new filings, new fiscal periods, new search hits), so you are not charged twice. The first run is a baseline that returns the newest rows. State lives in the key-value store company-financials-sec-filings-state in your account; delete it to reset. Default false.",
            "default": false
          },
          "lookbackHours": {
            "title": "Delta lookback (hours)",
            "minimum": 0,
            "maximum": 720,
            "type": "integer",
            "description": "Only with onlyNewSinceLastRun. Re-checks this many hours before the last watermark for late-indexed filings, de-duplicated against rows already returned (never re-charged). 0-720, default 48.",
            "default": 48
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}