# SEC EDGAR Full-Text Filing Search & Keyword Monitor (`aitoolsempire/sec-edgar-fulltext-search`) Actor

Search every US SEC filing (10-K, 8-K, S-1, 13-D…) by keyword or phrase and get clean, structured results with direct document links. Fast JSON-based, no browser.

- **URL**: https://apify.com/aitoolsempire/sec-edgar-fulltext-search.md
- **Developed by:** [Kenneth Bonnet](https://apify.com/aitoolsempire) (community)
- **Categories:** News, Developer tools, Automation
- **Stats:** 2 total users, 1 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## SEC EDGAR Full-Text Filing Search & Keyword Monitor

Search **every US SEC filing** by keyword or exact phrase and get back clean,
structured records with **direct links to the filing document** — no browser, no
API key, no rate-limit headaches. Built for finance, legal, journalism, and
competitive-intelligence workflows.

> Point it at a phrase like `"material weakness"`, `"going concern"`,
> `"data breach"`, or a competitor's product name, filter by form type and date,
> and get a ready-to-use dataset in seconds.

***

### What it does

This Actor queries the official SEC EDGAR full-text search index
(`efts.sec.gov`) — the same engine behind the EDGAR full-text search website —
and turns the raw results into a tidy dataset. Full-text coverage spans
**2001 to today** across all filers.

Each result row includes:

| Field | Description |
|---|---|
| `form_type` | Filing form (e.g. `10-K`, `8-K`, `S-1`, `10-K/A`) |
| `company` | Filer name |
| `ticker` | Stock ticker (when available) |
| `cik` | SEC Central Index Key |
| `filed_date` | Date the filing was submitted |
| `period_ending` | Reporting period end date |
| `accession_number` | Unique SEC accession number |
| `file_description` | Document description |
| `business_location` | Filer's business location |
| `state_of_incorporation` | State of incorporation |
| `sic_code` | Standard Industrial Classification code |
| `document_url` | **Direct link to the filing document** |
| `filing_index_url` | Link to the filing index page |
| `relevance_score` | EDGAR relevance score for the query |
| `scraped_at` | UTC timestamp of extraction |

### Example use cases

- **Risk monitoring** — track every 10-K that mentions `"material weakness"` or
  `"going concern"` this quarter.
- **M\&A / deal sourcing** — surface 8-Ks referencing a merger, acquisition, or a
  specific counterparty.
- **Competitive intelligence** — find filings that name your competitor or their
  product.
- **Journalism & research** — pull all filings mentioning a person, technology,
  or event, with citable document links.
- **Thematic screening** — every filing mentioning `"artificial intelligence"`,
  `"tariff"`, or `"cybersecurity incident"`.

### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `query` | string | ✅ | Keyword or `"exact phrase"` to search |
| `forms` | array | | Restrict to form types, e.g. `["10-K","8-K"]` |
| `start_date` | string | | Filed on/after `YYYY-MM-DD` |
| `end_date` | string | | Filed on/before `YYYY-MM-DD` |
| `ciks` | array | | Restrict to specific company CIK numbers |
| `max_results` | integer | | Cap on records (EDGAR max 1000/query) |

Example input:

```json
{
  "query": "\"material weakness\"",
  "forms": ["10-K"],
  "start_date": "2026-01-01",
  "end_date": "2026-06-30",
  "max_results": 200
}
```

### Output

A dataset of filing records (see the table above). Export to JSON, CSV, Excel,
or hit the dataset API directly.

### Pricing

**Pay per result** — you are charged only for filing records actually delivered.
No monthly rental, no charge for empty searches.

### Notes & limits

- EDGAR full-text search covers filings from **2001 onward** and caps any single
  query at **1000 results** — narrow with `forms`, `ciks`, or a date range to
  slice larger topics.
- The Actor sends a descriptive `User-Agent` per the SEC's fair-access policy and
  paces requests politely. For very high volumes, set your own `user_agent`.
- Data comes directly from the SEC; this Actor does not add, alter, or interpret
  filing content.

### Disclaimer

This tool retrieves publicly available filings from the U.S. Securities and
Exchange Commission's EDGAR system. It is not affiliated with or endorsed by the
SEC. Filing data is provided for informational purposes only and is not
investment advice.

# Actor input Schema

## `query` (type: `string`):

Keyword or exact phrase to search across all EDGAR filings. Wrap phrases in double quotes for exact match, e.g. "material weakness" or "going concern".

## `forms` (type: `array`):

Restrict to specific SEC form types (e.g. 10-K, 8-K, S-1, 13D, 424B4). Leave empty to search all forms.

## `start_date` (type: `string`):

Only return filings filed on or after this date. EDGAR full-text search covers 2001-present.

## `end_date` (type: `string`):

Only return filings filed on or before this date.

## `ciks` (type: `array`):

Restrict the search to one or more companies by their SEC CIK number (e.g. 0000320193 for Apple). Leave empty to search all companies.

## `max_results` (type: `integer`):

Maximum number of filing records to return (EDGAR caps full-text results at 1000 per query).

## `user_agent` (type: `string`):

SEC fair-access policy requests a descriptive User-Agent with contact info. A sensible default is provided; override with your own 'Company contact@email' if you run high volumes.

## Actor input object example

```json
{
  "query": "\"artificial intelligence\"",
  "forms": [
    "10-K"
  ],
  "start_date": "2026-01-01",
  "end_date": "2026-06-30",
  "max_results": 100
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "query": "\"material weakness\"",
    "forms": [
        "10-K"
    ],
    "max_results": 100
};

// Run the Actor and wait for it to finish
const run = await client.actor("aitoolsempire/sec-edgar-fulltext-search").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "query": "\"material weakness\"",
    "forms": ["10-K"],
    "max_results": 100,
}

# Run the Actor and wait for it to finish
run = client.actor("aitoolsempire/sec-edgar-fulltext-search").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "query": "\\"material weakness\\"",
  "forms": [
    "10-K"
  ],
  "max_results": 100
}' |
apify call aitoolsempire/sec-edgar-fulltext-search --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=aitoolsempire/sec-edgar-fulltext-search",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/HgFkdZ2vE0OAlTdGo/builds/lyLbpHsu00qZowlNT/openapi.json
