# Florida UCC Lien Search - Debtors & Secured Parties (`scrapers_lat/florida-ucc-liens-scraper`) Actor

Search Florida UCC-1 lien filings: every debtor and secured party with full address, filed/lapsed status, filing and expiration dates, the UCC-3 amendment chain (continuation, termination, assignment) and document images. Filter by state, city, ZIP, lender and dates. JSON, CSV, Excel.

- **URL**: https://apify.com/scrapers\_lat/florida-ucc-liens-scraper.md
- **Developed by:** [Scrapers Lat](https://apify.com/scrapers_lat) (community)
- **Categories:** Lead generation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $13.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.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## Florida UCC Lien Search — Debtors, Secured Parties & Amendments

Pull structured UCC lien records from the Florida Secured Transaction Registry: who borrowed, who lent, when the lien was filed, when it lapses, and everything that has happened to it since.

A UCC-1 financing statement is filed whenever a lender takes a security interest in a business's assets. That makes this register one of the cleanest public signals of **who is financing whom** — equipment loans, working-capital lines, solar installs, factoring, floor-plan finance, SBA lending and M\&A security interests all leave a record here.

### What you get

Every record is one UCC filing with the complete party list attached:

**The lien**

- UCC filing number, original UCC-1 number, form type (UCC1 / UCC3)
- Status — Filed (on the record) or Lapsed
- Filed date, expiration date, days to expiration, "expiring within a year" flag
- Transmitting-utility flag (railroad, pipeline, telecom, power — these never lapse on the ordinary five-year clock)
- Page counts and a direct link to the scanned filing form, which carries the collateral description

**Every debtor** — not just the one you searched

- Full name, street address, city, state, ZIP
- Organisation-vs-individual flag
- Debtor count, and the complete list of names on the filing. Large filings routinely map an entire group of related companies to one address, which is how you find corporate families that are not linked anywhere else.

**Every secured party (the lender)**

- Name, street address, city, state, ZIP
- Contact emails, pulled out of the filing where filers embedded them
- Secured party count and the full list — assignments and syndicates show up here

**The amendment chain**

- Every UCC-3 against the filing: document number, type, date, pages
- Actions taken — continuation, termination, assignment, party add/remove
- Party changes with the old and new entity resolved in full (name, address, city, state, ZIP)
- Derived flags: terminated, continued, assigned, amended, continuation count, last amendment date

Without the amendment chain a live lien and a terminated one look identical. This actor reads it, so `isTerminated` is answered rather than guessed.

### Three ways to search

| Mode | What it does |
| --- | --- |
| **By debtor name** | Look up liens against a company or a person. Nearby matching also surfaces variant spellings and mis-keyed names; exact matching returns only the precise name. |
| **By UCC document number** | Pull specific filings you already have numbers for. |
| **Index sweep** | Walk the register's alphabetical debtor index from any position — the route to bulk coverage. The run prints the next position when it stops, so follow-up runs resume exactly where the last one ended. |

The register indexes roughly **7.3 million debtor names** (filed and lapsed) and about **1.8 million** currently-filed ones. Out-of-state debtors are indexed too — plenty of Delaware, California and New York borrowers file here.

### Filters

Narrow before you pay for anything. Every filter is applied before a record is charged.

- **Lien status** — filed only, lapsed only, or the full historic index
- **Debtor type** — organisations, individuals, or both
- **Debtor location** — state, city, or ZIP prefix (`331` for Miami, no need to name every city)
- **Debtor name contains** — pull one industry out of a sweep
- **Secured party contains** — filter by lender. The registry has no lender search of its own; this reads the secured party off every filing, so you can isolate one bank's, lessor's or fintech's whole Florida book.
- **Filed from / to** — new-lien monitoring
- **Expires from / to** — isolate liens coming up for lapse or continuation. This is the refinancing window: a lien expiring in the next twelve months is a borrower whose lender has to act.
- **Minimum debtors on the filing** — surface multi-entity corporate groups
- **Only filings with an email**
- **Exclude terminated liens**
- **Only transmitting utilities**
- **Document type**

### Typical uses

- **Commercial lending & equipment finance** — find businesses whose liens lapse soon, or map a competitor's entire borrower book by secured-party name.
- **KYB and credit risk** — see what is already pledged against a counterparty before you extend terms, and whether those liens are live or terminated.
- **M\&A and diligence** — enumerate encumbrances on a target and the group companies sharing its address.
- **Debt buyers and restructuring** — track terminations, continuations and assignments as they happen.
- **Sales prospecting** — a fresh UCC-1 marks a business that just financed equipment or growth capital.

### Output

JSON, CSV, Excel, XML or HTML table via the Apify dataset, plus the API. The default dataset view lays out filing number, status, dates, debtor, lender and termination state as a flat table; nested debtor, secured-party and amendment arrays are in the full record.

### Notes

- Records reflect the register's own "complete through" date, which is returned on every record as `registerCompletedThrough`.
- Document image links are issued by the registry with a time limit — download them during the run.
- Individuals are indexed as `LAST FIRST MIDDLE`, e.g. `GARCIA MARIA`.
- Collateral text lives in the scanned form rather than in the register's structured data; enable the document image link to reach it.
- Free Apify plans are capped at 10 records per run.

### Pricing

Pay per result. You are charged once per unique filing returned — a filing indexed under twenty debtor names is still one charge — and never for a failed run.

# Actor input Schema

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

Debtor name: look up liens filed against a company or person. Document numbers: pull specific UCC filings you already know. Index sweep: walk the register's alphabetical debtor index from any position - the route to bulk coverage of all ~7.3 million indexed debtor names.

## `debtorName` (type: `string`):

Company or person the lien is filed against. Individuals are indexed LAST FIRST MIDDLE, e.g. "GARCIA MARIA".

## `debtorNames` (type: `array`):

Search several debtors in one run. Combined with the single Debtor name field above.

## `documentNumbers` (type: `array`):

Exact UCC filing numbers, e.g. 202500210713. Used when Search mode is "By UCC document number(s)".

## `startRowNumber` (type: `integer`):

Where to start the index sweep. The run prints the next position when it finishes, so a follow-up run resumes exactly where this one stopped. Positions run 1 to about 7,300,000 for filed+lapsed, 1 to about 1,825,000 for filed only.

## `debtorType` (type: `string`):

Organisations only, individuals only, or both. "Both" walks the combined index and is the right choice for sweeps.

## `lienStatus` (type: `string`):

Filed = liens still on the record. Lapsed = liens past their expiration date. Both searches the full historic index.

## `nameMatch` (type: `string`):

Nearby: seek to the name and keep reading forward through the index, which also returns close variants and misspellings. Exact: return only the filings whose indexed debtor name matches exactly. Exact is available for organisation searches.

## `maxRecords` (type: `integer`):

How many filings to return. Each unique filing is charged once, no matter how many debtor names it is indexed under. Free Apify plans are capped at 10 per run.

## `includeFilingHistory` (type: `boolean`):

Fetch the UCC-3 chain hanging off each filing: continuations, terminations, assignments and party changes, plus the flags derived from them. Needed to tell a live lien from a terminated one.

## `includeDocumentImageUrl` (type: `boolean`):

Add a direct link to the scanned filing form, which carries the collateral description. Links are time-limited by the registry, so download them during the run.

## `debtorStates` (type: `array`):

Keep only filings with a debtor in these states, e.g. FL, CA. Florida indexes out-of-state debtors too.

## `debtorCityContains` (type: `string`):

Keep only filings with a debtor whose city contains this text, e.g. MIAMI.

## `debtorZipPrefixes` (type: `array`):

Keep only filings with a debtor ZIP starting with one of these, e.g. 331 for Miami. Targets a metro without naming every city.

## `debtorNameContains` (type: `string`):

Keep only filings where some debtor's name contains this text. Useful on a sweep to pull one industry out of the index.

## `securedPartyContains` (type: `string`):

Keep only filings whose secured party name contains this text, e.g. a bank or equipment lessor. The registry has no lender search of its own - this filter reads the lender off every filing.

## `documentTypes` (type: `array`):

Keep only these form types, e.g. UCC1, UCC3.

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

Keep only filings recorded on or after this date (YYYY-MM-DD).

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

Keep only filings recorded on or before this date (YYYY-MM-DD).

## `expiresFrom` (type: `string`):

Keep only filings expiring on or after this date (YYYY-MM-DD). Combined with Expires to, this isolates liens coming up for lapse or continuation.

## `expiresTo` (type: `string`):

Keep only filings expiring on or before this date (YYYY-MM-DD).

## `minDebtors` (type: `integer`):

Keep only filings naming at least this many debtors. Filings with many debtors typically map a whole group of related companies to one address.

## `onlyWithEmail` (type: `boolean`):

Keep only filings where a contact email appears on a debtor or secured party record.

## `excludeTerminated` (type: `boolean`):

Drop filings that a later UCC-3 terminated. Reads the amendment chain, so it turns amendment history on.

## `onlyTransmittingUtility` (type: `boolean`):

Keep only transmitting-utility filings (railroads, pipelines, telecom and power utilities), which never lapse on the normal five-year clock.

## `maxConcurrency` (type: `integer`):

How many filings to fetch in parallel. Lower it if the registry starts refusing requests.

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

Optional. The registry is reachable without a proxy; add one only if you are running at high volume.

## Actor input object example

```json
{
  "searchMode": "debtorName",
  "debtorName": "TESLA",
  "debtorNames": [],
  "documentNumbers": [],
  "startRowNumber": 1,
  "debtorType": "any",
  "lienStatus": "both",
  "nameMatch": "nearby",
  "maxRecords": 10,
  "includeFilingHistory": true,
  "includeDocumentImageUrl": false,
  "debtorStates": [],
  "debtorZipPrefixes": [],
  "documentTypes": [],
  "onlyWithEmail": false,
  "excludeTerminated": false,
  "onlyTransmittingUtility": false,
  "maxConcurrency": 5,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# 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 = {
    "debtorName": "TESLA"
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapers_lat/florida-ucc-liens-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 = { "debtorName": "TESLA" }

# Run the Actor and wait for it to finish
run = client.actor("scrapers_lat/florida-ucc-liens-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 '{
  "debtorName": "TESLA"
}' |
apify call scrapers_lat/florida-ucc-liens-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,scrapers_lat/florida-ucc-liens-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/H0a7Tb1yctRauv6qp/builds/VUxCaQVxbNaAlvdIz/openapi.json
