Zapier + Apify · Government and public records

Get New PACER Docket Entries in Slack with Zapier

The PACER Docket Monitor reads the free public RSS feeds of federal courts and, in monitor mode, returns only docket entries it has not returned before. Save it as an Apify task, schedule it hourly, and a Zap built on Apify's official Zapier app posts each new entry to Slack with the case title, the docket text and a link to the docket. No PACER account and no code.

Open the Actor on Apify Store

PACER RSS Docket Monitor — New Federal Court Filings. Pay per result; see the Store page for current pricing.

What you build

An Apify schedule runs a saved task every hour. The task watches the Southern and Eastern Districts of New York for new complaints whose case title contains a name you choose. When a run finishes, the Zap's Apify trigger fires, the Zap fetches that run's dataset, and Slack gets one message per new docket entry.

Swap the filters and the same Zap covers other alerts: Chapter 11 petitions in Delaware (bankruptcyChapters), every new motion and order in a case you follow (caseNumbers), or patent complaints in Texas. The PACER RSS docket monitor guide lists every filter.

Before you start

  • An Apify account. The Actor is billed per result to that account; the Store page lists the current prices. To cap what one run can cost, set a maximum total charge in the task's run options.
  • A Zapier account with Slack connected. The Zap has more than two steps, so check that your Zapier plan allows multi-step Zaps.
  • The court codes to watch. PACER RSS feeds by court lists all 203 courts and whether each feed was live at the last probe.

Step 1: Save the input as an Apify task

Open the Actor in Apify Console from its Store page. On the Input tab, switch to the JSON editor, paste this input, replace Acme with the names you watch, and click Save as a new task:

{
  "courts": [
    "nysd",
    "nyed"
  ],
  "partyKeywords": [
    "Acme"
  ],
  "entryTypes": [
    "complaint"
  ],
  "newCasesOnly": true,
  "maxResults": 200,
  "onlyNewSinceLastRun": true,
  "stateStoreName": "zapier-slack-ny-complaints"
}

onlyNewSinceLastRun with a stateStoreName of its own makes every run return only entries that earlier runs of this task have not returned, so Slack never gets the same filing twice. On the first run nothing has been seen yet, so it returns every matching entry in the current feeds (the trailing 24 hours). Run the task once from Console now, so Zapier has a finished run to test with.

Then open Schedules in Console, create a schedule that runs hourly, and add the task to it. Courts regenerate their feeds every 30 to 60 minutes and each feed covers only the last 24 hours, so hourly catches every entry; daily is the minimum.

Step 2: Build the Zap

1. Trigger: Apify, Finished task run

Create a Zap and choose Apify as the trigger app with the Finished task run event. Connect your Apify account (Zapier opens an Apify sign-in window; click Allow Access), pick the task you saved, and click Test Trigger. Zapier fills the test from the run you just made.

2. Search: Apify, Fetch dataset items

Add an Apify step with the Fetch dataset items search and map the dataset ID to the default dataset of the run from the trigger step. Test the step: it returns the docket entries of that run.

3. Loop over the items

Add Looping by Zapier and loop over the fetched items, so each docket entry runs through the next steps on its own. Map caseTitle, courtName, entryText, docketUrl and error into the loop.

4. Filter out error items

Inside the loop, add Filter by Zapier: continue only if error does not exist. A court whose feed is down produces one item with an error code instead of failing the run, and you probably do not want that in the channel.

5. Action: Slack, Send Channel Message

Add Slack with Send Channel Message, pick the channel, and build the text from the mapped fields (insert each one with Zapier's field picker; the braces below stand for those fields), for example:

New filing in {courtName}: {caseTitle}
{entryText}
Docket: {docketUrl}

Test the step, then publish the Zap. From now on, the new entries of each scheduled run are posted to Slack.

Fields to map

Each dataset item is one docket entry. These fields make a useful Slack message:

FieldUse it for
caseTitleThe lead parties, for example Acme Corp v. Example LLC
courtName, courtCourt name and CM/ECF code
caseNumberCase number as the court publishes it
entryText, entryCategoryDocket text and a heuristic category (complaint, motion, order …)
docketUrl, documentUrlLinks to the docket and the document on PACER (opening them is subject to PACER fees)
filedAtFiling time, ISO 8601
errorPresent only on error items; use it to filter them out

All fields are described in the PACER RSS docket monitor guide.

Costs and limits

  • Apify bills the Actor per feed checked and per matching entry, at the prices on its Store page. An hourly schedule on two courts is 48 feed checks a day plus the entries that match.
  • Zapier counts the steps a Zap runs against your Zapier plan's task allowance; with a loop, each entry adds its own filter and Slack steps.
  • The trigger fires when a run finishes. A schedule that runs hourly therefore posts at most once an hour per batch of entries.
  • Feeds cover only the trailing 24 hours and carry the lead parties, not every party. The docket monitor guide covers the other source limits.
  • Case titles name individuals. Not a consumer report. Not for employment, credit, insurance, housing or tenant-screening decisions.

FAQ

Why a task and a trigger, and not the Run Actor action?

Zapier's Apify app can also start a run with Run Actor, but Apify's Zapier documentation gives synchronous runs a hard 30-second timeout. Feed checks across several courts can take longer, so the scheduled task with the Finished task run trigger is the dependable pattern.

Can I skip Zapier entirely?

For a plain "a run finished" notice, yes: the task's Integrations tab in Apify Console has a Slack integration. To post the entries themselves without Zapier, set the Actor's webhookUrl to an endpoint you control; the POST body carries the run summary and up to 1,000 emitted entries.

Do I need a PACER account?

No. The RSS feeds are public. Only opening a linked document on PACER is subject to PACER's own fees.

How do I watch other courts or a single case?

Edit the task input: change courts, or replace partyKeywords with caseNumbers. Keep a separate stateStoreName for each task so their memories of seen entries stay apart.

Is this affiliated with Zapier or Apify?

No. owlabee is an independent developer on Apify Store; the Zapier app used here is Apify's own. Not affiliated with or endorsed by Zapier, Slack, Apify or the federal courts.