SERFF Rate Filing Monitor — New Filings Daily, No Login avatar

SERFF Rate Filing Monitor — New Filings Daily, No Login

Pricing

from $20.00 / 1,000 new filings

Go to Apify Store
SERFF Rate Filing Monitor — New Filings Daily, No Login

SERFF Rate Filing Monitor — New Filings Daily, No Login

Scheduled monitor for NAIC SERFF Filing Access. Watches one or more states for new insurance rate and form filings and returns only filings not seen on previous runs. Pay only for new filings; optional webhook alerts. No login. MCP-ready for AI agents. $20 per 1,000 new filings.

Pricing

from $20.00 / 1,000 new filings

Rating

0.0

(0)

Developer

Khrystyna Skotte

Khrystyna Skotte

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

SERFF Rate Filing Monitor

Watches NAIC SERFF Filing Access state portals on a schedule and returns only the insurance rate and form filings that are new since the last run. Point it at one or more states, optionally narrow it to a company, product or type of insurance, run it daily, and get a clean feed of new filings (plus an optional webhook alert) instead of re-downloading the same 100,000 rows.

You are charged only for new filings. Filings already reported on an earlier run are free.

What it does

  1. Searches each state's SERFF Filing Access portal for filings submitted in the last lookbackDays days.
  2. Compares every filing against the monitor's memory of filings it has already reported.
  3. Pushes the new filings to the dataset (with firstSeenAt) and remembers them.
  4. Optionally POSTs a JSON summary to your webhookUrl.

Memory lives in a named key-value store serff-monitor-<hash of monitorId> on your Apify account, so it survives between runs and between builds. Use a different monitorId for each independent watch list.

Scheduling (the intended way to use it)

  1. Create a task from this actor with your states/filters.
  2. Run it once with firstRunMode: "baseline". That run records every filing currently in the window and returns nothing. From then on only filings submitted after the baseline are reported.
  3. Add an Apify Schedule (e.g. daily at 07:00) for the task. Every scheduled run returns only what is new.
  4. Keep lookbackDays larger than the schedule interval (7 days for a daily schedule is a safe default), so a missed or failed run cannot lose filings.

If you skip the baseline, the first run reports everything in the window as new (default firstRunMode: "emitAll"), which is also how the actor's default test run behaves.

Input

FieldDefaultDescription
states["TX"]Two-letter codes of the state portals to watch. Each is searched separately. Every state plus DC works except FL and PR, which are not on SERFF Filing Access.
businessTypePP = Property & Casualty, L = Life, Accident/Health, Annuity, Credit.
companyName""Partial company-name match.
companyCode""NAIC company code.
productKeyword""SERFF product-name search.
typeOfInsurance""Keeps filings whose type of insurance code or name contains this text (e.g. 19.0, Personal Auto).
lookbackDays7Submission-date window: today minus N days to today.
includeDetailsfalseOpens each new filing's detail page for dates, statuses and company addresses. Slower.
maxNewFilings10Cap on new filings per run. Filings past the cap are not marked as seen, so they come out on the next run. Raise it for scheduled use.
firstRunModeemitAllbaseline = record existing filings and emit nothing on the first run of this monitorId.
webhookUrl""POST target for the per-run summary.
monitorIddefaultNamespaces the seen-set. One ID per watch list.
proxyConfigurationApify RESIDENTIALSERFF blocks datacenter IPs; keep residential.

Output

One record per new filing:

{
"filingId": "134895644",
"serffTrackingNumber": "FDLY-134895644",
"companyName": "Stillwater Insurance Company",
"naicCompanyCode": "25180",
"productName": "Homeowners",
"typeOfInsuranceCode": "04.0000",
"typeOfInsuranceName": "Homeowners Sub-TOI Combinations",
"filingType": "Specimen Policy",
"filingStatus": "ASIS",
"filingStatusDescription": "Assigned to Intake Staff",
"state": "TX",
"businessType": "Property & Casualty",
"detailUrl": "https://serff-sfa.naic.org/serff/sfa/search/filingSummary.xhtml?filingId=134895644",
"firstSeenAt": "2026-09-28T18:50:28.201Z",
"monitorId": "default",
"source": "NAIC SERFF Filing Access",
"sourceUrl": "https://serff-sfa.naic.org/serff/sfa/home/TX"
}

With includeDetails: true each record also carries typeOfInsurance, submissionDate, serffStatus, dispositionDate, dispositionStatus, stateStatus, stateStatusLastChanged and a companies array (name, NAIC code, address, phone).

The run's key-value store also gets a SUMMARY record with scanned/new counts per state.

Webhook payload

Sent once per run when webhookUrl is set (also when nothing is new, so it doubles as a heartbeat):

{
"monitorId": "default",
"runAt": "2026-09-28T18:50:28.201Z",
"newCount": 1,
"scanned": 94,
"states": { "TX": { "scanned": 94, "new": 1 } },
"filings": [ { "...first 50 new filing records..." } ]
}

Pricing

Pay per event: a small start fee per run plus a per-record fee only for new filings. A daily monitor on a quiet filter costs a few cents a day; nothing is charged for re-seen filings.

Notes

  • The monitor remembers up to 50,000 filing IDs per monitorId and drops the oldest beyond that.
  • Resetting a monitor: delete the serff-monitor-… key-value store (or pick a new monitorId) and run a fresh baseline.
  • For a one-off bulk export instead of a monitor, use the companion SERFF Insurance Rate Filings Scraper.