See llms.txt for all machine-readable content.

Back to Templates

Triage Federal Register FAR, DFARS and SBA rules with Apify, Slack and Gmail

Quick overview

This workflow runs every weekday morning to monitor new Federal Register FAR/DFARS and SBA-related documents via an Apify Actor, dedupes and prioritizes them by urgency, then sends deadline alerts and a daily digest to Slack or Gmail.

How it works

  1. Runs on a weekday schedule at 07:00.
  2. Validates the watch configuration (watch packs/filters, limits, regex patterns, and Slack/email routing) and stops with an error before any Apify charge if settings are invalid.
  3. Starts the Apify Actor cce_partners/federal-register-govcon-watch, polls until it finishes (or polling limit is reached), and fetches the run dataset of new documents.
  4. Dedupes documents by document number, persists “seen” state and open comment deadlines in workflow static data, and creates reminders when previously seen items enter the urgent window.
  5. Classifies each document (final rule, proposed rule, RFI-like notice, or other) and assigns priority based on comment deadlines, effective dates, contract clause parts, and priority agencies.
  6. Sends an urgent alert for items with comment deadlines within the configured urgent window, and compiles the remaining items into a single run digest with categorized sections and run/cost stats.
  7. Delivers alerts/digests to Slack or Gmail based on the configured channels, and sends failure/crash notifications to the configured alert destination if Apify calls or the workflow execution fails.

Setup

  1. Add an Apify API token as an HTTP Header Auth credential (header Authorization: Bearer <token>) and select it in the Apify HTTP request steps.
  2. Connect Slack credentials (for Slack delivery) and/or Gmail credentials (for email delivery) depending on which channels you choose.
  3. Update the Config values for what to monitor (watch packs, agencies/CFR/keywords, lookback and item limits) and set alertChannel/alertTo and digestChannel/digestTo to your real Slack channel names or email addresses.
  4. Activate the workflow to persist dedupe and deadline-tracking state across scheduled runs (manual test runs do not persist static data).

Requirements

  • Your own Apify account and API token. The Actor cce_partners/federal-register-govcon-watch is paid per result row: $0.01 per run start + $0.002 per document (pricing: https://apify.com/cce_partners/federal-register-govcon-watch/pricing)
  • Your own Slack and/or Gmail credentials
  • n8n with the core nodes only (no community nodes)
  • No Federal Register API key needed

Customization

  • Custom watch: set watchPack to [] and use agencies (slug or full name), cfrTitle + cfrParts and keywords. Keywords don't narrow a pack.
  • rfiPattern and lowPriorityPattern are regular expressions that control the RFI branch and which notices count as routine.
  • Edit the four branch Set nodes to change each digest section's action line, or attach a Sheets/Notion/Jira node to any branch.

Additional info

Tested on n8n 2.44.5: live Actor runs (new documents, an empty run, a failed run caused by an unknown agency), the polling loop including the give-up path, the HTTP error output after retries, Config fail-fast, and the Error Trigger firing for an active workflow. No credentials are embedded. The only external ID is the public Apify Actor ID.