# New Business Filings by State: Daily LLC & Corporation Feed (`quaky_ozone/new-business-filings-feed`) Actor

New LLCs, corporations, partnerships and nonprofits registered in New York, Colorado, Connecticut and Oregon, from official state open data. Company rows only: no officer, member, filer or agent person names.

- **URL**: https://apify.com/quaky_ozone/new-business-filings-feed.md
- **Developed by:** [Z J](https://apify.com/quaky_ozone) (community)
- **Categories:** Lead generation, Business
- **Security:** Limited permissions
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 results

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

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

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

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

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## New Business Filings by State: Daily LLC & Corporation Feed (No Personal Data)

Get the LLCs, corporations, partnerships and nonprofits newly registered in **New York, Colorado, Connecticut and Oregon**, pulled from each state's official open-data portal. Rows describe the **company only**: no organiser, member, officer, filer or individual agent names, and no personal e-mail addresses.

### What you get

| Field | Meaning |
|---|---|
| `companyName`, `entityType`, `state`, `formationDate`, `status` | The new entity; type normalised to `llc`, `corporation`, `lp`, `llp`, `nonprofit` or `other` |
| `address`, `city`, `region`, `postalCode`, `addressType` | The entity's address of record. `addressType` says which: `principal`, `business`, `mailing`, or `service of process` (New York, shown only when the service company is a firm) |
| `county` | County of the principal office (New York) |
| `jurisdictionOfFormation` | Where it was formed; anything other than the registering state is a foreign registration |
| `naics` | Industry code and title (Connecticut only) |
| `registeredAgentOrg` | The registered agent or service-of-process company, only when it is an organisation |
| `registryNumber`, `filingType` | The state's id and the filing or type code as published |
| `changeType` | `new`, or `changed` when a company you already received changed name, status, address or agent |
| `sourceDataset`, `sourceUrl`, `sourceFreshness`, `retrievedAt` | Where the row came from, the newest formation date that source had, and when you pulled it |

### Who it's for

- **B2B vendors** selling to brand-new companies: payroll, insurance, banking, accounting, web and telecom.
- **Banks and fintechs** building new-business account-opening lists.
- **Market researchers** tracking formation volume by state, type and industry.

### Input

| Field | Default | Notes |
|---|---|---|
| `states` | all four | `NY`, `CO`, `CT`, `OR` |
| `daysBack` | 7 | 1-30, counted back from today |
| `sinceDate` | none | `YYYY-MM-DD`; overrides `daysBack` (never more than 30 days back) |
| `entityTypes` | all | `llc`, `corporation`, `lp` (includes LLPs), `nonprofit`, `foreign` |
| `cities` | all | Exact city names, case-insensitive |
| `zipPrefix` | none | e.g. `100` for Manhattan ZIP codes |
| `nameContains` | none | e.g. `DENTAL` |
| `naicsPrefix` | none | e.g. `722` for restaurants. Only Connecticut publishes NAICS, so this keeps Connecticut rows only |
| `onlyNewSinceLastRun` | `true` | See "Repeat runs" below |
| `maxResultsPerState` | 500 | 1-10,000 per state, newest first |

Daily feed of new LLCs in three states:

```json
{ "states": ["NY", "CO", "CT"], "daysBack": 7, "entityTypes": ["llc"], "onlyNewSinceLastRun": true }
```

New Connecticut restaurants and bars:

```json
{ "states": ["CT"], "daysBack": 30, "naicsPrefix": "722" }
```

Foreign companies registering to do business in New York:

```json
{ "states": ["NY"], "entityTypes": ["foreign"], "daysBack": 14 }
```

### Output example

Values below are illustrative; real rows have the same shape.

```json
[
  { "companyName": "EXAMPLE DATA LLC", "entityType": "llc", "state": "CO", "formationDate": "2026-10-18", "status": "Good Standing",
    "address": "1 Main St", "city": "Denver", "region": "CO", "postalCode": "80202", "addressType": "principal", "county": null,
    "jurisdictionOfFormation": "CO", "naics": null, "registeredAgentOrg": "EXAMPLE REGISTERED AGENTS INC",
    "registryNumber": "20260000001", "filingType": "DLLC", "changeType": "new", "sourceDataset": "4ykn-tg5h",
    "sourceUrl": "https://data.colorado.gov/resource/4ykn-tg5h.json?entityid=20260000001",
    "sourceFreshness": "2026-10-18", "retrievedAt": "2026-10-19T12:00:00+00:00" },
  { "companyName": "EXAMPLE PIER LLC", "entityType": "llc", "state": "NY", "formationDate": "2026-10-16", "status": "filed",
    "address": "418 BROADWAY", "city": "ALBANY", "region": "NY", "postalCode": "12207", "addressType": "service of process",
    "county": "Kings", "jurisdictionOfFormation": "NY", "registeredAgentOrg": "EXAMPLE AGENT SERVICES LLC",
    "registryNumber": "8000001", "filingType": "ARTICLES OF ORGANIZATION", "changeType": "new", "sourceDataset": "k4vb-judh" },
  { "companyName": "EXAMPLE PROPERTY MANAGERS LLC", "entityType": "llc", "state": "CT", "formationDate": "2026-10-10",
    "status": "Active", "city": "Groton", "region": "CT", "addressType": "business",
    "naics": "Residential Property Managers (531311)", "registryNumber": "3500001", "changeType": "new", "sourceDataset": "n7gp-d28j" }
]
```

### Pricing

Pay per result: **$0.003 per company row** ($3 per 1,000 rows), charged once per row returned. Apify also charges its standard actor-start event (default $0.00005, i.e. $0.05 per 1,000 runs) once per run. The run summary and any errors go to the run's key-value store (`OUTPUT`) and are never charged. A run stops cleanly at the spending limit you set.

**Repeat runs.** With `onlyNewSinceLastRun` on (the default), the actor remembers which companies this exact input already returned, in a storage that stays in your account, and only returns companies that are new or that changed. The memory forgets a company it has not seen for 45 days (or 3 × `daysBack`, if longer), so `sinceDate` runs spaced further apart than that return and charge those companies again as new. Rows are only deduplicated between runs that follow one another: two runs of the same input that overlap in time, or a run interrupted after it delivered rows but before it saved its memory, can return and charge some rows again.

Free-plan users can try it within Apify's monthly free usage credit.

### Freshness, stated honestly

| State | Source cadence | What that means |
|---|---|---|
| New York | Daily, rolling 30 days | Filings usually appear one to two business days after the filing date; only the last 30 days are published |
| Colorado | Daily | Usually the next day |
| Connecticut | Daily | Usually the next day; rejected filings are excluded |
| Oregon | Monthly | The state publishes last month's registrations once a month; the whole file is read and changes-only mode returns it once. Assumed business names are skipped |

For a daily schedule use `daysBack` of about 7: New York's lag is covered and changes-only mode makes the overlap free. Each run's `OUTPUT` record lists every source's status, row count and newest date; one state failing never stops the others.

### Data sources and licenses

- New York Department of State, Daily Corporation and Other Entity Filing Data, dataset `k4vb-judh` on data.ny.gov. Open NY terms: "So long as you are not doing anything malicious with NYS data, you may use it as you wish", with no attribution or pre-approval requirement; the same terms describe the license as non-exclusive and revocable.
- Colorado Business Entities, dataset `4ykn-tg5h` on data.colorado.gov (license: Public Domain)
- Connecticut Business Registry - Business Master, dataset `n7gp-d28j` on data.ct.gov (license: Public Domain)
- Oregon New Businesses Registered Last Month, dataset `esjy-u4fc` on data.oregon.gov (license: Public Domain U.S. Government, USGOV_WORKS)

Only the official Socrata open-data API is used, one request at a time with more than a second between requests.

### Privacy

- Only company-level columns are requested. Organiser, member, officer and filer name columns, personal e-mail addresses and owner-demographic flags are never downloaded. The New York service-of-process name is read only to decide whether it is a firm.
- A registered agent or service company is shown only when it is an organisation; when it is a person, its name and address are both left out. A New York service name with a c/o, attn or "as ..." part ('ACME LLC c/o Jane Doe') is treated the same way, because the address then belongs to that other party. In every name, text after c/o, attn, dba, aka or an unclosed bracket is cut, and a name that pairs a person with a company is dropped.
- A company name is returned only with positive proof it is an organisation: a legal form at the end (LLC, INC, CORP, LTD, LP, LLP, PLLC, PC, CO.) or a word such as COMPANY, CORPORATION, FOUNDATION, ASSOCIATION or BANK. Anything else, and anything that looks like a personal trust, estate or custodial account, is dropped.
- No scraping of web pages, no skip tracing and no contact enrichment.

### Use with AI agents (MCP)

Limited permissions, exactly one charge per returned row plus the tiny per-run start event, and a fixed column set described by the dataset schema, so agents can call it through the Apify MCP server and budget exactly.

### FAQ

**Why is a name blank?** A name that pairs a person with a company, such as 'JANE DOE & ACME LLC' or 'ACME LLC AND JANE DOE', is withheld because part of it names a private person. One firm name joined by '&' or AND, such as 'DEERE & COMPANY' or 'WALKER & DUNLOP, LLC', is returned when the whole name proves it is an organisation.

**Why do some rows have no address?** In New York the only address on file is often the service-of-process address. When that belongs to a person it is withheld, so the row has no address.

**Why are Oregon rows a month old?** Oregon publishes its new-business file monthly. The actor reads it as soon as it changes.

**How do I export CSV or Excel?** Open the run's dataset and choose the format, or call the dataset items API with `format=csv`.

### Related actors

- UCC Lien Filings Feed: New Liens by State (Entity-only)
- NYC LLC & Corporate Property Deals: ACRIS Deeds with Parcel Data

# Actor input Schema

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

Registries to read.

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

Formation-date window counted back from today (New York keeps a rolling 30 days). Oregon publishes a monthly file and is read whole.

## `sinceDate` (type: `string`):

Optional start date (YYYY-MM-DD); overrides Days back.

## `entityTypes` (type: `array`):

Keep only these kinds. Foreign means formed outside the registering state. Empty keeps all.

## `cities` (type: `array`):

Keep only these cities (exact, case-insensitive).

## `zipPrefix` (type: `string`):

Keep only postal codes starting with these digits, e.g. 100.

## `nameContains` (type: `string`):

Keep only companies whose name contains this text.

## `naicsPrefix` (type: `string`):

Industry code prefix, e.g. 722. Only Connecticut publishes NAICS, so this keeps Connecticut rows only.

## `onlyNewSinceLastRun` (type: `boolean`):

Remembers what this input already returned and skips it, so scheduled runs never pay twice for the same company.

## `maxResultsPerState` (type: `integer`):

Upper bound per state (newest first).

## Actor input object example

```json
{
  "states": [
    "NY",
    "CO",
    "CT"
  ],
  "daysBack": 2,
  "entityTypes": [
    "llc"
  ],
  "onlyNewSinceLastRun": true,
  "maxResultsPerState": 200
}
```

# Actor output Schema

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

One entity-only row per record, in the Overview column order.

## `summary` (type: `string`):

Per-source status, freshness, row counts and stop reason (never charged).

# 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 = {
    "states": [
        "NY",
        "CO",
        "CT"
    ],
    "daysBack": 2,
    "entityTypes": [
        "llc"
    ],
    "onlyNewSinceLastRun": true,
    "maxResultsPerState": 200
};

// Run the Actor and wait for it to finish
const run = await client.actor("quaky_ozone/new-business-filings-feed").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 = {
    "states": [
        "NY",
        "CO",
        "CT",
    ],
    "daysBack": 2,
    "entityTypes": ["llc"],
    "onlyNewSinceLastRun": True,
    "maxResultsPerState": 200,
}

# Run the Actor and wait for it to finish
run = client.actor("quaky_ozone/new-business-filings-feed").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 '{
  "states": [
    "NY",
    "CO",
    "CT"
  ],
  "daysBack": 2,
  "entityTypes": [
    "llc"
  ],
  "onlyNewSinceLastRun": true,
  "maxResultsPerState": 200
}' |
apify call quaky_ozone/new-business-filings-feed --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,quaky_ozone/new-business-filings-feed"
        }
    }
}
```

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/jHwT2pLJVUasMe8bi/builds/DvCs7h3Wr2ppDgt3D/openapi.json
