# SEC EDGAR Full-Text Search - Filings, 10-K, 10-Q & 8-K (`themineworks/sec-edgar-fulltext-search`) Actor

Affordable SEC EDGAR full-text search: filings by keyword & form. $3/1,000 results, 25 free, pay-per-result, no subscription. Works in Claude, ChatGPT & any MCP-compatible AI agent.

- **URL**: https://apify.com/themineworks/sec-edgar-fulltext-search.md
- **Developed by:** [The Mine Works](https://apify.com/themineworks) (community)
- **Categories:** Business, Developer tools, MCP servers
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use 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 Search — Find Any Phrase in Any Filing

Search the **full text of every SEC EDGAR filing since 2001** for any word or exact phrase — across all companies at once — and get clean, structured JSON back. Find every 10-K that mentions "climate risk," every 8-K naming a specific executive, every S-1 with a given risk factor. Filter by form type and date. Built for **equity research, fintech, legal/compliance, and AI/RAG pipelines**. No API key.

**Keywords:** SEC full-text search API, EDGAR full text, search SEC filings, 10-K phrase search, risk factor search, fintech data, financial research API.

---

### Why this actor

EDGAR's full-text search is powerful but its endpoint returns raw Elasticsearch JSON with cryptic fields, parallel arrays, and offset pagination — and it has no official client. This actor wraps it into one clean record per matching filing, with the company, form, dates, filing location, SIC, and a click-ready URL to the document.

It complements our [SEC EDGAR Filings actor](https://apify.com/themineworks/sec-edgar-filings): that one pulls a *specific company's* filings; this one searches *across all companies* for a phrase.

- **Full text, all companies** — every filing since 2001, searched in one call.
- **Exact-phrase or keyword** — quote a phrase for exact matching.
- **Form + date filters** — narrow to 10-Ks in 2025, or 8-Ks last quarter.
- **Clean output** — company, CIK, form, file date, period, accession, location, SIC, filing URL.
- **No API key** — official SEC endpoint; fair-access User-Agent only.

---

### What you can build

- **Thematic research** — find every company disclosing exposure to a topic (AI, tariffs, a supplier, a regulation).
- **Risk-factor monitoring** — track how a specific risk spreads across filers over time.
- **Event detection** — surface 8-Ks mentioning a person, deal, or product.
- **AI/RAG corpora** — assemble a topic-specific filing set, then pull full text with our SEC EDGAR Filings actor.
- **Competitive & legal intel** — who said what, in which filing, when.

---

### Input

| Field | Type | Default | Description |
|---|---|---|---|
| `query` | string | `"climate risk"` | Word or quoted exact phrase. |
| `formTypes` | string[] | `["10-K"]` | Form types to include (empty = all). |
| `dateFrom` / `dateTo` | string | — | Filing-date window `YYYY-MM-DD` (covers 2001 onward). |
| `maxResults` | integer | 200 | Max hits, newest first. |
| `contactEmail` | string | — | Your email for SEC fair-access. |

#### Example

```json
{ "query": "\"artificial intelligence\"", "formTypes": ["10-K", "10-Q"], "dateFrom": "2025-01-01", "maxResults": 500 }
````

***

### Output

```json
{
  "company": "CONOCOPHILLIPS (COP) (CIK 0001163165)",
  "ciks": ["0001163165"],
  "form": "10-K",
  "file_date": "2025-02-18",
  "period_ending": "2024-12-31",
  "accession_number": "0001163165-25-000012",
  "sic": "2911",
  "biz_location": "Houston, TX",
  "inc_state": "DE",
  "filing_url": "https://www.sec.gov/Archives/edgar/data/1163165/000116316525000012/cop-20241231.htm",
  "scraped_at": "2026-06-12T00:00:00.000Z"
}
```

A final `{"_type":"summary"}` record reports total matches and how many were returned.

***

### Pricing

**First 25 hits free per account**, then **$0.003 per hit**. Zero charge on empty searches. No API key, no monthly rental.

***

### FAQ

**Do I need a key?** No — official SEC endpoint; just a contact email in the User-Agent.

**How far back?** Full-text coverage is 2001 to present.

**Difference from the SEC EDGAR Filings actor?** This searches *across all companies* for a phrase; that one pulls a *specific company's* filing history (with financials/text). Use them together.

**Exact phrases?** Yes — wrap the phrase in quotes.

# Actor input Schema

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

Word or exact phrase (use quotes for an exact phrase, e.g. "climate risk"). Searches the full text of all EDGAR filings since 2001.

## `formTypes` (type: `array`):

Filter to specific form types (e.g. 10-K, 10-Q, 8-K, S-1). Empty = all forms.

## `dateFrom` (type: `string`):

Only filings filed on or after this date (YYYY-MM-DD). Full-text search covers 2001 onward.

## `dateTo` (type: `string`):

Only filings filed on or before this date (YYYY-MM-DD).

## `maxResults` (type: `integer`):

Maximum number of filing hits to return (newest first).

## `contactEmail` (type: `string`):

SEC fair-access requires a contact email in the User-Agent. Your own email is recommended; a default is used if blank.

## Actor input object example

```json
{
  "query": "\"climate risk\"",
  "formTypes": [
    "10-K"
  ],
  "maxResults": 25,
  "contactEmail": "contact@example.com"
}
```

# 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": "\"climate risk\"",
    "formTypes": [
        "10-K"
    ],
    "maxResults": 25
};

// Run the Actor and wait for it to finish
const run = await client.actor("themineworks/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": "\"climate risk\"",
    "formTypes": ["10-K"],
    "maxResults": 25,
}

# Run the Actor and wait for it to finish
run = client.actor("themineworks/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": "\\"climate risk\\"",
  "formTypes": [
    "10-K"
  ],
  "maxResults": 25
}' |
apify call themineworks/sec-edgar-fulltext-search --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "SEC EDGAR Full-Text Search - Filings, 10-K, 10-Q & 8-K",
        "description": "Affordable SEC EDGAR full-text search: filings by keyword & form. $3/1,000 results, 25 free, pay-per-result, no subscription. Works in Claude, ChatGPT & any MCP-compatible AI agent.",
        "version": "0.1",
        "x-build-id": "Vh4CohU8WEW2v67pC"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/themineworks~sec-edgar-fulltext-search/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-themineworks-sec-edgar-fulltext-search",
                "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/themineworks~sec-edgar-fulltext-search/runs": {
            "post": {
                "operationId": "runs-sync-themineworks-sec-edgar-fulltext-search",
                "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/themineworks~sec-edgar-fulltext-search/run-sync": {
            "post": {
                "operationId": "run-sync-themineworks-sec-edgar-fulltext-search",
                "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",
                "required": [
                    "query"
                ],
                "properties": {
                    "query": {
                        "title": "Search query",
                        "type": "string",
                        "description": "Word or exact phrase (use quotes for an exact phrase, e.g. \"climate risk\"). Searches the full text of all EDGAR filings since 2001."
                    },
                    "formTypes": {
                        "title": "Form types",
                        "type": "array",
                        "description": "Filter to specific form types (e.g. 10-K, 10-Q, 8-K, S-1). Empty = all forms.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "dateFrom": {
                        "title": "Filed on/after (YYYY-MM-DD)",
                        "type": "string",
                        "description": "Only filings filed on or after this date (YYYY-MM-DD). Full-text search covers 2001 onward."
                    },
                    "dateTo": {
                        "title": "Filed on/before (YYYY-MM-DD)",
                        "type": "string",
                        "description": "Only filings filed on or before this date (YYYY-MM-DD)."
                    },
                    "maxResults": {
                        "title": "Max results",
                        "minimum": 1,
                        "maximum": 10000,
                        "type": "integer",
                        "description": "Maximum number of filing hits to return (newest first).",
                        "default": 200
                    },
                    "contactEmail": {
                        "title": "Contact email (SEC fair-access)",
                        "type": "string",
                        "description": "SEC fair-access requires a contact email in the User-Agent. Your own email is recommended; a default is used if blank.",
                        "default": "contact@example.com"
                    }
                }
            },
            "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
                                    }
                                }
                            },
                            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
