# UCC Lien Scraper (`intelscrape/ucc-lien-scraper`) Actor

UCC-1 B2B finance leads from public state records. MCA & equipment-finance. Soft CTA → Skip Trace / TruePeopleSearch for debtor phones.

- **URL**: https://apify.com/intelscrape/ucc-lien-scraper.md
- **Developed by:** [IntelScrape](https://apify.com/intelscrape) (community)
- **Categories:** Lead generation, Real estate, Automation
- **Stats:** 41 total users, 11 monthly users, 89.5% runs succeeded, 2 bookmarks
- **User rating**: No ratings yet

## Pricing

from $20.00 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#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

## UCC Lien Scraper – MCA & Equipment Finance Leads

![Actor Banner](https://api.apify.com/v2/key-value-stores/PyvJzfQg02FD3RYhd/records/ucc-lien-scraper-banner.png)

> 🇨🇳 **中文简介 (Chinese — China & Singapore):**
> 寻找已证明有融资行为的企业债务人？UCC Lien Scraper 从美国各州公开 UCC / SOS 记录提取高意向 MCA 与设备融资线索，重点覆盖佛罗里达与新泽西，并可选用电话 enrichment。按交付线索计费，空行不计费——适合 MCA 经纪、商业贷款与 B2B 销售团队。立即在 Apify 跑一批新立案，把债务人名单交给销售或 AI 外联。

> 🇸🇬 **Ringkasan Melayu (Singapore):**
> Cari perniagaan yang baru memfailkan UCC? Scraper ini ekstrak lead kewangan berhasrat tinggi daripada rekod awam negeri AS (fokus Florida & New Jersey), dengan enrichment telefon pilihan. Bayar hanya untuk lead yang dihantar — baris kosong tidak dicaj. Sesuai untuk broker MCA dan jualan B2B. Jalankan di Apify dan salurkan fail ke pasukan jualan anda di Singapura.

#### 🤖 NEW: Connect This To Your AI!

Want to use IntelScrape actors inside Claude, Cursor, or ChatGPT? Check out the **[Skip Trace MCP Server](https://apify.com/intelscrape/skip--trace)**. Give your AI Model Context Protocol access to UCC / MCA lead agents.

#### 🏆 Featured Bots by IntelScrape

1. **[UCC Lien Scraper](https://apify.com/intelscrape/ucc-lien-scraper)** — Florida & New Jersey Filings
2. **[Skip Trace PRO](https://apify.com/intelscrape/skip-trace-pro)** — Name, Address, Phone & Email People Lookup
3. **[TruePeopleSearch Scraper](https://apify.com/intelscrape/truepeoplesearch-scraper)** — Phone & Email Matches
4. **[TikTok Scraper](https://apify.com/intelscrape/tiktok-scraper)** — Emails & Influencer Leads
5. **[Amazon Product Review Scraper](https://apify.com/intelscrape/amazon-product-review-scraper)** — Deep E-commerce & Review Extraction
6. **[Building Permit Scraper](https://apify.com/intelscrape/building-permit-scraper)** — US Cities Open Data
7. **[Google Maps No-Website Leads](https://apify.com/intelscrape/website-Leads)** — Local Businesses Without a Website
8. **[Skip Trace MCP Server](https://apify.com/intelscrape/skip--trace)** — Use Skip Trace inside Claude, Cursor, ChatGPT

***

⚡ **Use this Actor in n8n — no code**

1. Add the official **Apify** node in n8n.
2. Connect your Apify API token.
3. Run Actor ID: `IntelScrape/ucc-lien-scraper`.

***

![price](https://img.shields.io/badge/price-$20.00_/_1K-e83e8c) ![billing](https://img.shields.io/badge/billing-pay_only_for_leads-2ea44f) ![API key](https://img.shields.io/badge/API_key-not_required-blue) ![coverage](https://img.shields.io/badge/coverage-FL_·_NJ_UCC_+_multi--state_SOS-8a2be2) ![mode](https://img.shields.io/badge/mode-Who_Has_Debt-blue)

**Extract high-intent UCC-1 finance leads from official public state records.** Built for MCA brokers, equipment lenders, commercial finance, and B2B sales teams who need proven borrowers — not stale list-broker dumps.\
**Pay $0.02 per delivered lead. Empty / incomplete rows are not charged.**

> **Honest coverage & billing (read this):** Best UCC debt signal today is **Florida** (direct registry API) and **New Jersey**. SOS / business-entity modes cover additional states in the picker (e.g. CO, CT, NY, TX, ID, VA + wholesale-backed). States behind CAPTCHA / login / paywalls are not bypassed. Billing: **$0.05 actor start** (per GB memory; default 1024 MB = $0.05) + **$0.02 per verified lead** + optional **$0.05 contact enrichment** only when phone/website is found. Leave enrichment OFF on your first run.

***

> 🧭 Built for **MCA brokers, equipment finance, commercial lenders, and B2B refinance / buyout teams.**

> ⭐ **Store rating is driven by daily power users.** Please [leave a review](https://apify.com/intelscrape/ucc-lien-scraper) if this saves you time.

> ⚖️ **Lawful business use only.** Public state registry / UCC publications — **not** a consumer reporting agency / **not** for FCRA decisions. You are liable for unlawful use.

> 📌 *Examples in this README are **fictional** unless stated otherwise.*

***

### 🕵️‍♂️ Why Choose Us vs. "Cheaper" Competitors?

| Feature | UCC Lien Scraper | Thin list dumps |
| :--- | :--- | :--- |
| **Billing** | Pay only for delivered leads | Pay for empty shells |
| **UCC signal** | FL + NJ debt / lapse windows | Vague “nationwide” claims |
| **Enrichment** | Opt-in; charge only on hit | Always-on upsells |
| **CRM** | Optional webhook on finish | Manual CSV only |

***

### Quick start

```json
{
  "targetState": "FL",
  "searchMode": "ucc",
  "maxItems": 25,
  "daysBack": 30,
  "enrichContacts": false,
  "enrichLinkedin": false
}
```

| Field | Use |
| :--- | :--- |
| `targetState` | Two-letter state (`FL` recommended for first UCC run) |
| `searchMode` | `ucc` = Who Has Debt · `sos` = Business Info · `combined` = both |
| `maxItems` | Hard billable cap — start at 25 |
| `daysBack` | UCC freshness window (14–30 for a reliable sample) |
| `states` | Optional multi-state fanout; when set, overrides `targetState`. `maxItems` caps **all** states |
| `filedFrom` / `filedTo` | Optional YYYY-MM-DD window; **filedFrom overrides daysBack** (FL year-granularity) |
| `activeOnly` | Drop lapsed/inactive when status known (default false) |
| `exactMatch` | When `searchQuery` set, name must contain full query (case-insensitive) |
| `enrichContacts` | Optional paid phone/website lookup |
| `webhookUrl` | Optional CRM POST on finish |

**Multi-state / filter sample:**

```json
{
  "states": ["FL"],
  "searchMode": "ucc",
  "maxItems": 5,
  "daysBack": 30,
  "exactMatch": false,
  "activeOnly": false,
  "enrichContacts": false,
  "enrichLinkedin": false
}
```

**Cheap first sample:** FL + Who Has Debt + `maxItems: 25` + enrichment OFF ≈ **$0.50 leads + $0.05 start**.

***

### What a result looks like

```json
{
  "business_name": "Apex Logistics LLC",
  "filing_number": "202601234567",
  "filing_date": "2026-08-12",
  "lapse_date": "2031-08-12",
  "city": "Miami",
  "state": "FL",
  "secured_party": "Example Equipment Finance Inc",
  "source": "Florida Secured Transaction Registry",
  "lead_score": 85,
  "lead_tier": "HOT",
  "data_quality": "VERIFIED_GOVERNMENT_RECORD"
}
```

Export from the **Output** tab to CSV / Excel / JSON / API.

***

### Soft CTA (dataset `softCta` on every lead)

Every lead row includes a `softCta` object pointing to the IntelScrape funnel:

- **Skip Trace PRO** / **TruePeopleSearch** / **Contact Info** / **Maps Email** — phones & emails for debtors
- **MCA Leads** / **Building Permit** — adjacent capital & construction outreach

Honest first run: `targetState=FL` (or `NJ`), `searchMode=ucc`, enrichment **OFF**. Billing stays PPE — empty rows are not charged.

### Pricing (PPE — unchanged)

| Event | Price | When it fires |
| :--- | ---: | :--- |
| Actor start | **$0.05 / GB** | Once per run (default 1024 MB = $0.05) |
| Lead (`apify-default-dataset-item`) | **$0.02** | Each verified lead pushed |
| Contact enrichment (`phone-enrichment`) | **$0.05** | Only when phone, website, **or** LinkedIn enrichment succeeds |

> **Value-add tip:** After a cheap sample with enrichment OFF, flip `enrichContacts: true` for Google Maps phone/website ($0.05 only on hit). Set `enrichLinkedin: true` when you also want owner/CEO LinkedIn — billed as Contact Enrichment today; dedicated `linkedin-enrichment` PPE event goes live **2026-09-19**. Leave both **false** (schema default) for the cheapest first run — Store UI must not force enrich ON.

***

### Legal

Lawful B2B use of public UCC / SOS records only. Not for FCRA consumer decisions.

# Actor input Schema

## `targetState` (type: `string`):

Which state do you want leads from? Every state listed returns REAL verified government records.

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

Optional list of states to scrape in one run. When set (non-empty), overrides single targetState for collection. Cap with maxItems across ALL states. Leave empty to use targetState only.

## `searchMode` (type: `string`):

Who Has Debt (UCC) returns active loans/lenders — best for MCA (FL & NJ). Business Info returns SOS company records. Maximum Intel combines both where available.

## `searchQuery` (type: `string`):

Type a company name to find specific businesses, or leave empty to discover leads across the whole state. Try: 'construction', 'trucking', 'restaurant', 'medical'.

## `targetCity` (type: `string`):

Only want leads from one city? Type it here. Leave empty to get leads from the entire state.

## `captchaKey` (type: `string`):

Required only for highly protected states (Delaware, Indiana, Kansas). Get an API key from 2captcha.com if you want to scrape these specific states.

## `daysBack` (type: `integer`):

How recent should UCC filings be? Use 14–30 for a reliable first sample. Freshness is applied while collecting so maxItems counts deliverable leads.

## `filedFrom` (type: `string`):

Optional inclusive start date for filing/registration freshness. When set, overrides daysBack. FL UCC uses filing-number year granularity.

## `filedTo` (type: `string`):

Optional inclusive end date for filing/registration freshness. Pair with filedFrom. FL UCC uses filing-number year granularity.

## `activeOnly` (type: `boolean`):

When status is known, drop lapsed/inactive/terminated filings. Default OFF (keep all).

## `exactMatch` (type: `boolean`):

When searchQuery is set, keep only rows whose debtor/business name contains the full query (case-insensitive). Default OFF.

## `maxItems` (type: `integer`):

Hard cap on leads delivered (and billed). Start at 25 to validate output shape (~$0.50 + start fee). Raise to 500–5000 once you like the data.

## `csvUrl` (type: `string`):

Provide a link to a raw CSV file (e.g. Google Sheets Export) containing 'Name' or 'Query' headers to process up to 100,000 records automatically.

## `enrichContacts` (type: `boolean`):

Optional. Find phone and/or website via Google Maps when available. Adds $0.05 PPE (event phone-enrichment / Contact Enrichment) only when a contact is actually found. Leave OFF (default) for cheapest first run.

## `enrichLinkedin` (type: `boolean`):

Optional. Find decision-maker or company LinkedIn via Google Search. Until 2026-09-19 successful LinkedIn-only hits bill Contact Enrichment (phone-enrichment $0.05); from 2026-09-19 they bill linkedin-enrichment ($0.05). Adds runtime — leave OFF until leads look good.

## `webhookUrl` (type: `string`):

We will HTTP POST the final enriched records to this URL as soon as the run finishes.

## Actor input object example

```json
{
  "targetState": "FL",
  "states": [],
  "searchMode": "combined",
  "daysBack": 30,
  "activeOnly": false,
  "exactMatch": false,
  "maxItems": 25,
  "enrichContacts": false,
  "enrichLinkedin": false
}
```

# Actor output Schema

## `search_type` (type: `string`):

Type of record: BUSINESS\_ENTITY or UCC\_FILING

## `filing_number` (type: `string`):

UCC Filing Number (UCC mode)

## `filing_date` (type: `string`):

Date the UCC was filed

## `filing_type` (type: `string`):

Type of UCC filing (UCC-1, UCC-3 Amendment, UCC-3 Continuation)

## `filing_status` (type: `string`):

Active, Good Standing, Delinquent, etc.

## `state` (type: `string`):

Filing jurisdiction US state code (always the registry state, not debtor address state)

## `debtor_state` (type: `string`):

Debtor mailing/address state from the filing (may differ from filing jurisdiction)

## `business_name` (type: `string`):

Business or entity name

## `entity_type` (type: `string`):

LLC, Corp, Partnership, etc.

## `entity_id` (type: `string`):

State registration/entity ID number

## `business_address` (type: `string`):

Full business address

## `city` (type: `string`):

City

## `zip_code` (type: `string`):

ZIP/postal code

## `registration_date` (type: `string`):

Date of entity formation/registration

## `registered_agent` (type: `string`):

Registered agent name

## `business_email` (type: `string`):

Business email address (CT data)

## `naics_code` (type: `string`):

NAICS industry classification (CT data)

## `lead_score` (type: `string`):

Algorithmic lead score (0-100)

## `lead_tier` (type: `string`):

HOT, WARM, or COOL

## `data_quality` (type: `string`):

VERIFIED\_GOVERNMENT\_RECORD

## `source` (type: `string`):

Government data source

## `source_url` (type: `string`):

Link to original government record

# 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 = {
    "targetState": "FL",
    "states": [],
    "searchMode": "combined",
    "daysBack": 30,
    "activeOnly": false,
    "exactMatch": false,
    "maxItems": 25,
    "enrichContacts": false,
    "enrichLinkedin": false
};

// Run the Actor and wait for it to finish
const run = await client.actor("intelscrape/ucc-lien-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 = {
    "targetState": "FL",
    "states": [],
    "searchMode": "combined",
    "daysBack": 30,
    "activeOnly": False,
    "exactMatch": False,
    "maxItems": 25,
    "enrichContacts": False,
    "enrichLinkedin": False,
}

# Run the Actor and wait for it to finish
run = client.actor("intelscrape/ucc-lien-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "targetState": "FL",
  "states": [],
  "searchMode": "combined",
  "daysBack": 30,
  "activeOnly": false,
  "exactMatch": false,
  "maxItems": 25,
  "enrichContacts": false,
  "enrichLinkedin": false
}' |
apify call intelscrape/ucc-lien-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,intelscrape/ucc-lien-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

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