# Distressed Companies for Sale — Bankruptcy, Dissolved, UCC Lien (`dominvo/distressed-business-ai-scraper`) Actor

Find distressed US businesses (dissolved, revoked, tax-liened, or bankrupt) — fused per company, scored for distress, and skip-traced to the owner's direct phone & email. Free public records (Socrata SOS + RECAP/CourtListener, never paid PACER). B2B prospecting only, not FCRA.

- **URL**: https://apify.com/dominvo/distressed-business-ai-scraper.md
- **Developed by:** [Domin Vo](https://apify.com/dominvo) (community)
- **Categories:** Business, Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $60.00 / 1,000 enriched leads

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 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

## Distressed Companies for Sale — UCC Lien, Bankruptcy & M&A Deal Sourcing

**Find distressed companies for sale — dissolved, revoked, bankrupt, or hit with a UCC or tax lien — with the owner's direct phone + email for M&A deal sourcing.**

This Actor finds **distressed US businesses** — administratively dissolved, revoked, delinquent, tax-liened, with a **UCC lien**, or in **bankruptcy** — **fuses every signal onto one company** (by business name + state), scores how urgently the owner is in trouble, and skip-traces the principal to a **direct phone + email**. It's a built-in **business bankruptcy search**, **UCC lien search**, and **dissolved-companies list** in one run. It pulls only **free public records** (state Secretary-of-State registries via Socrata, RECAP/CourtListener bankruptcy — **never paid PACER**), fresh daily.

Built for **M&A advisors, business brokers, search funds / ETA acquirers, liquidators, and debt-resolution / factoring firms** doing deal sourcing. AI-first: the input schema *is* the MCP tool schema, so an AI agent can pick and call the right mode.

> **Do not** use this for a plain business-registry dump (use a KYB scraper), or for any credit, employment, insurance, or tenant decision (see the FCRA notice below).

---

### What you get

One uniform row (`Record`) per result, with a stable `sha256` for change detection. The highest-value shape — `enriched_lead` — looks like:

```json
{
  "mode": "enriched_lead",
  "payload": {
    "entity_name": "ACME WIDGETS LLC",
    "state": "CO",
    "signal_types": ["dissolution_status", "bankruptcy_filings"],
    "signal_count": 2,
    "distress_score": 53,
    "match_confidence": 1.0,
    "principal_name": "John Smith",
    "direct_phone": ["3035550100", "3035550101"],
    "email": ["john.smith@example.com"],
    "mailing": "123 Main St, Denver, CO 80202",
    "source_urls": ["https://data.colorado.gov/resource/4ykn-tg5h.json", "..."],
    "enriched": true
  }
}
````

### Modes

Pick one `mode`. Each reads a subset of the inputs.

| Mode | What it returns | Status (v1) |
|---|---|---|
| `dissolution_status` | SOS entities dissolved / revoked / delinquent / withdrawn (the clean spine) | **Live** — Colorado, New York, Connecticut (Socrata) |
| `bankruptcy_filings` | Chapter 7 / 11 / 12 / 13 dockets from free RECAP/CourtListener (never PACER) | **Live** |
| `distress_match` | One company with ≥2 stacked signals + a 0–100 distress score (**the fusion moat**) | **Live** |
| `enriched_lead` | A scored match + owner/principal name, mailing, **direct phone + email** (**the lead we sell**) | **Live** |
| `check_for_changes` | Stateful monitor (**default**): only NEW distress events since the last run | **Live** |
| `reset_baseline` | Re-baseline the monitor silently | **Live** |
| `tax_lien` | State tax liens against a business | Scaffold — phased in after v1 (source fragmentation) |
| `ucc_lien` | UCC-1 secured-debt filings | Scaffold — phased in after v1 |
| `sec_bankruptcy` | Public-company bankruptcy via SEC EDGAR 8-K Item 1.03 | Scaffold — optional, post-v1 |
| `principal_lookup` | Officer + registered-agent from the SOS record (pre-skip-trace owner row) | Scaffold — needs the per-state officer feed |

Scaffold modes register and route correctly but **yield nothing** until their (fragmented) sources are wired — v1 ships the two clean signals fully, plus fusion, enrichment, and the monitor.

### Example input

Find distressed Colorado businesses, fused and enriched to the owner's direct line:

```json
{
  "mode": "enriched_lead",
  "states": ["CO"],
  "min_signals": 2,
  "skiptrace_actor_id": "one-api/skip-trace",
  "max_results": 100
}
```

Just the clean spine signal, last 7 days, no enrichment:

```json
{ "mode": "dissolution_status", "states": ["CO"], "date_from": "2026-06-08" }
```

Monitor for new dissolutions/bankruptcies since the last run:

```json
{ "mode": "check_for_changes", "states": ["CO", "NY"] }
```

### How the distress score works

The score (0–100) is the **count + weight of stacked DISTINCT signals** on one company. Financial-default signals (bankruptcy, tax lien) are weighted highest; registration-status signals (dissolved / revoked) next; a named principal acts as a multiplier. A company with **revoked SOS status + a fresh tax lien + a recent Chapter 11** ranks at the top. The moat is the fusion: there is **no clean shared key** across SOS / bankruptcy / lien sources — they share only **business name + state** — so the Actor normalizes the name (strips LLC/INC/CORP/LP suffixes, casefolds, collapses whitespace), prefixes the state, and fuzzy-matches to collapse spelling drift onto one company.

### Pricing (Pay-per-event)

The first **20 raw signal rows per run are free** (the sample), **except `enriched_lead`, which bills from the first row** (each lead chains a publisher-paid skip-trace).

| Event | Price | What it prices |
|---|---|---|
| `signal_record` | $0.002 | one raw distress-signal row |
| `owner_attribute` | $0.003 | one derived owner-state row (officer / registered agent) |
| `distress_match` | $0.02 | one scored company with ≥2 stacked signals |
| `enriched_lead` | **$0.06** | one scored match + owner direct phone + email |

Skip-trace is **publisher-billed** (resale) — the buyer pays only the flat `enriched_lead` price; a no-match returns 0 items = $0.

### Sources (all free)

- **State SOS entity status** via Socrata SODA — Colorado `4ykn-tg5h`, New York `63wc-4exh`, Connecticut `n7gp-d28j`. Add a state = one config entry.
- **Bankruptcy** via the free **RECAP archive / CourtListener REST v4** (`courtlistener.com/api/rest/`). A free CourtListener token (optional) raises the throttle ceiling.

**PACER-free:** bankruptcy data comes only from the free RECAP mirror. This Actor **never queries paid PACER** ($0.10/page) — that would break the zero-cost model.

### Proxy & rate limits

Apify Proxy (US) is **on by default** — several portals and CourtListener block non-US / datacenter egress. Switch country or add residential groups per run if a source still blocks you. Identifying User-Agent on every request: `distressed-business-ai-scraper tech-hub02@primecommerce.asia`.

***

### Legal — FCRA boundary (B2B only)

Bankruptcy, lien, and dissolution records are lawful public records, resellable as **B2B business leads** for **prospecting, acquisition, and business development**. They are **NOT** a consumer report. Do **NOT** use this data for **credit, employment, insurance, or tenant decisions** — those uses are regulated by the Fair Credit Reporting Act (FCRA) and are out of scope. The owner contact is a **business-development contact**, not a consumer-screening signal. By running this Actor you agree to use its output for permissible B2B purposes only.

# Actor input Schema

## `mode` (type: `string`):

Which mode to run. Each mode reads a subset of the fields below — see each field's note.

## `states` (type: `array`):

US state abbreviations to scan (e.g. CO, NY, CT). Used by every signal mode, distress\_match, enriched\_lead, and the monitor modes. For dissolution\_status, leave empty to pull all verified states (Colorado, New York, Connecticut). For bankruptcy\_filings, a state expands to that state's bankruptcy court codes.

## `court` (type: `string`):

Explicit CourtListener bankruptcy court code (e.g. nysb, casb, txsb). Overrides `states` for bankruptcy\_filings. Used by bankruptcy\_filings.

## `chapter` (type: `string`):

Optional bankruptcy chapter filter: 7, 11, 12, or 13. Used by bankruptcy\_filings.

## `signals` (type: `array`):

Subset of Tier 1 signal modes to fuse (distress\_match) or monitor (check\_for\_changes / reset\_baseline). Omit to use the defaults. Used by distress\_match and the monitor modes.

## `signal_types` (type: `array`):

Subset of Tier 1 signal modes to fuse before enrichment. Omit to fuse all available signals. Used by enriched\_lead.

## `min_signals` (type: `integer`):

Minimum distinct signals on one company to qualify as a distress match. Used by distress\_match and enriched\_lead.

## `fuzz_threshold` (type: `integer`):

rapidfuzz token-sort-ratio (0–100) at/above which two business names fuse as the same company. 90 is a safe default; 100 disables fuzzy merging (exact normalized names only). Used by distress\_match and enriched\_lead.

## `entity_name` (type: `string`):

Optional business-name substring for a targeted officer / registered-agent lookup. Used by principal\_lookup.

## `tickers` (type: `array`):

Optional ticker / company filters for SEC EDGAR 8-K bankruptcy disclosures. Used by sec\_bankruptcy (scaffold).

## `date_from` (type: `string`):

Earliest signal date (YYYY-MM-DD). Optional incremental floor. Used by all signal modes, distress\_match, enriched\_lead, and the monitor modes.

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

Cap on rows pulled per source. Default 100. Used by every signal mode and the monitor modes.

## `max_signals_per_source` (type: `integer`):

Caps raw signals scanned per Tier 1 source before fusion, bounding cost and compute. Each child signal mode fetches at most this many rows. Used by distress\_match and enriched\_lead.

## `courtlistener_token` (type: `string`):

Optional free CourtListener API token (register at courtlistener.com) — raises the bankruptcy throttle ceiling. Used by bankruptcy\_filings, distress\_match, enriched\_lead, and the monitor modes.

## `socrata_app_token` (type: `string`):

Optional Socrata app token (raises the SODA throttle ceiling). If omitted, the actor reads APIFY\_SOCRATA\_APP\_TOKEN from env. Used by dissolution\_status.

## `skiptrace_actor_id` (type: `string`):

Apify Actor ID to chain for skip-trace enrichment. Paid (~$0.007/result); billed to the actor publisher via DOMIN\_APIFY\_TOKEN resale token, NOT to the buyer. No match = 0 items = $0. Override with any Actor accepting street\_citystatezip input. Used by enriched\_lead.

## `skiptrace_api_key` (type: `string`):

Optional paid skip-trace API key. Alternative to chaining an Apify Actor. Used by enriched\_lead.

## `output_format` (type: `string`):

json streams to the default dataset. ndjson/csv/xlsx flush to the key-value store at end of run.

## `proxyConfiguration` (type: `object`):

Proxy settings. Defaults to Apify Proxy (US) — several open-data portals and CourtListener block non-US or datacenter egress IPs, so US routing keeps runs reliable. Switch country or add residential groups if a source still blocks you.

## Actor input object example

```json
{
  "mode": "dissolution_status",
  "states": [
    "CO"
  ],
  "signals": [],
  "signal_types": [],
  "min_signals": 2,
  "fuzz_threshold": 90,
  "tickers": [],
  "max_results": 100,
  "max_signals_per_source": 2000,
  "skiptrace_actor_id": "one-api/skip-trace",
  "output_format": "json",
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyCountry": "US"
  }
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# 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 = {
    "mode": "dissolution_status",
    "states": [
        "CO"
    ],
    "max_results": 100,
    "skiptrace_actor_id": "one-api/skip-trace"
};

// Run the Actor and wait for it to finish
const run = await client.actor("dominvo/distressed-business-ai-scraper").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 = {
    "mode": "dissolution_status",
    "states": ["CO"],
    "max_results": 100,
    "skiptrace_actor_id": "one-api/skip-trace",
}

# Run the Actor and wait for it to finish
run = client.actor("dominvo/distressed-business-ai-scraper").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 '{
  "mode": "dissolution_status",
  "states": [
    "CO"
  ],
  "max_results": 100,
  "skiptrace_actor_id": "one-api/skip-trace"
}' |
apify call dominvo/distressed-business-ai-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=dominvo/distressed-business-ai-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Distressed Companies for Sale — Bankruptcy, Dissolved, UCC Lien",
        "description": "Find distressed US businesses (dissolved, revoked, tax-liened, or bankrupt) — fused per company, scored for distress, and skip-traced to the owner's direct phone & email. Free public records (Socrata SOS + RECAP/CourtListener, never paid PACER). B2B prospecting only, not FCRA.",
        "version": "0.0",
        "x-build-id": "1i6KgvKyATW7qtHCk"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/dominvo~distressed-business-ai-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-dominvo-distressed-business-ai-scraper",
                "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/dominvo~distressed-business-ai-scraper/runs": {
            "post": {
                "operationId": "runs-sync-dominvo-distressed-business-ai-scraper",
                "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/dominvo~distressed-business-ai-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-dominvo-distressed-business-ai-scraper",
                "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": [
                    "mode"
                ],
                "properties": {
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "dissolution_status",
                            "bankruptcy_filings",
                            "tax_lien",
                            "ucc_lien",
                            "sec_bankruptcy",
                            "principal_lookup",
                            "distress_match",
                            "enriched_lead",
                            "check_for_changes",
                            "reset_baseline"
                        ],
                        "type": "string",
                        "description": "Which mode to run. Each mode reads a subset of the fields below — see each field's note.",
                        "default": "check_for_changes"
                    },
                    "states": {
                        "title": "States",
                        "type": "array",
                        "description": "US state abbreviations to scan (e.g. CO, NY, CT). Used by every signal mode, distress_match, enriched_lead, and the monitor modes. For dissolution_status, leave empty to pull all verified states (Colorado, New York, Connecticut). For bankruptcy_filings, a state expands to that state's bankruptcy court codes.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "court": {
                        "title": "Court code (bankruptcy_filings)",
                        "type": "string",
                        "description": "Explicit CourtListener bankruptcy court code (e.g. nysb, casb, txsb). Overrides `states` for bankruptcy_filings. Used by bankruptcy_filings."
                    },
                    "chapter": {
                        "title": "Bankruptcy chapter (bankruptcy_filings)",
                        "enum": [
                            "7",
                            "11",
                            "12",
                            "13"
                        ],
                        "type": "string",
                        "description": "Optional bankruptcy chapter filter: 7, 11, 12, or 13. Used by bankruptcy_filings."
                    },
                    "signals": {
                        "title": "Signals to fuse / monitor",
                        "type": "array",
                        "description": "Subset of Tier 1 signal modes to fuse (distress_match) or monitor (check_for_changes / reset_baseline). Omit to use the defaults. Used by distress_match and the monitor modes.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "signal_types": {
                        "title": "Signal types (enriched_lead)",
                        "type": "array",
                        "description": "Subset of Tier 1 signal modes to fuse before enrichment. Omit to fuse all available signals. Used by enriched_lead.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "min_signals": {
                        "title": "Min stacked signals (distress_match / enriched_lead)",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Minimum distinct signals on one company to qualify as a distress match. Used by distress_match and enriched_lead.",
                        "default": 2
                    },
                    "fuzz_threshold": {
                        "title": "Fuzzy name threshold (distress_match / enriched_lead)",
                        "minimum": 0,
                        "maximum": 100,
                        "type": "integer",
                        "description": "rapidfuzz token-sort-ratio (0–100) at/above which two business names fuse as the same company. 90 is a safe default; 100 disables fuzzy merging (exact normalized names only). Used by distress_match and enriched_lead.",
                        "default": 90
                    },
                    "entity_name": {
                        "title": "Business name filter (principal_lookup)",
                        "type": "string",
                        "description": "Optional business-name substring for a targeted officer / registered-agent lookup. Used by principal_lookup."
                    },
                    "tickers": {
                        "title": "Tickers (sec_bankruptcy)",
                        "type": "array",
                        "description": "Optional ticker / company filters for SEC EDGAR 8-K bankruptcy disclosures. Used by sec_bankruptcy (scaffold).",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "date_from": {
                        "title": "From date",
                        "type": "string",
                        "description": "Earliest signal date (YYYY-MM-DD). Optional incremental floor. Used by all signal modes, distress_match, enriched_lead, and the monitor modes."
                    },
                    "max_results": {
                        "title": "Max rows",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Cap on rows pulled per source. Default 100. Used by every signal mode and the monitor modes.",
                        "default": 100
                    },
                    "max_signals_per_source": {
                        "title": "Max signals per source (distress_match / enriched_lead)",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Caps raw signals scanned per Tier 1 source before fusion, bounding cost and compute. Each child signal mode fetches at most this many rows. Used by distress_match and enriched_lead.",
                        "default": 2000
                    },
                    "courtlistener_token": {
                        "title": "CourtListener API token",
                        "type": "string",
                        "description": "Optional free CourtListener API token (register at courtlistener.com) — raises the bankruptcy throttle ceiling. Used by bankruptcy_filings, distress_match, enriched_lead, and the monitor modes."
                    },
                    "socrata_app_token": {
                        "title": "Socrata app token",
                        "type": "string",
                        "description": "Optional Socrata app token (raises the SODA throttle ceiling). If omitted, the actor reads APIFY_SOCRATA_APP_TOKEN from env. Used by dissolution_status."
                    },
                    "skiptrace_actor_id": {
                        "title": "Skip-trace Actor ID (enriched_lead)",
                        "type": "string",
                        "description": "Apify Actor ID to chain for skip-trace enrichment. Paid (~$0.007/result); billed to the actor publisher via DOMIN_APIFY_TOKEN resale token, NOT to the buyer. No match = 0 items = $0. Override with any Actor accepting street_citystatezip input. Used by enriched_lead.",
                        "default": "one-api/skip-trace"
                    },
                    "skiptrace_api_key": {
                        "title": "Skip-trace API key (enriched_lead)",
                        "type": "string",
                        "description": "Optional paid skip-trace API key. Alternative to chaining an Apify Actor. Used by enriched_lead."
                    },
                    "output_format": {
                        "title": "Output format",
                        "enum": [
                            "json",
                            "ndjson",
                            "csv",
                            "xlsx"
                        ],
                        "type": "string",
                        "description": "json streams to the default dataset. ndjson/csv/xlsx flush to the key-value store at end of run.",
                        "default": "json"
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Proxy settings. Defaults to Apify Proxy (US) — several open-data portals and CourtListener block non-US or datacenter egress IPs, so US routing keeps runs reliable. Switch country or add residential groups if a source still blocks you.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyCountry": "US"
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
