Monitors
Monitors are saved searches that trigger delivery to a destination — either a webhook or an email address — when new SEC filings match the query. Use monitors for inbox-grade alerting on portfolio events: 8-K material events, 13F holdings changes, insider transactions, AAERs, auditor changes, and any keyword search the filing search supports.Lifecycle
- Create a monitor with
POST /v1/monitors. Providename,query, and optionallyfilters(e.g.,{ ticker, form, date_from, date_to }) plus a delivery destination (webhook or email). - Inspect recent matches on demand with
GET /v1/monitors/{monitor_id}/matches. - List your org’s monitors with
GET /v1/monitors. - Deactivate a monitor with
DELETE /v1/monitors/{monitor_id}(idempotent; setsis_active=false). - Replace the delivery destination on an existing monitor with
POST /v1/monitors/{monitor_id}/delivery.
Destination types
A monitor has exactly one delivery destination in v1. To send the same query to multiple channels, create one monitor per channel.Webhook (legacy single-URL path)
ThewebhookUrl field on a monitor sends matches to a signed webhook endpoint. Webhook delivery uses the same signing protocol as POST /v1/webhook_endpoints — see Webhook and stream workflows for the full lifecycle and signature verification details.
List-Unsubscribe header for one-click client integrations. The delivery object in the request body is a discriminated union; future channels (Slack, etc.) extend the type field.
delivery block describing the destination:
delivery.status cycles through active → unsubscribed (one-click from email) or bounced (set by future bounce-webhook handling). When status is anything other than active, the email channel does not fire.
Email behavior
Every email includes a signed unsubscribe link in the body and theList-Unsubscribe header. Modern mail clients can use one-click unsubscribe, and recipients can re-enable delivery by updating the monitor destination.
SEC API retries transient email failures with exponential backoff and exposes delivery state through monitor and webhook delivery APIs. Worst-case latency from filing publication to email arrival is approximately 7.5 minutes.
Daily summary
For each org that hits the rate limit on any monitor in a 24-hour window, SEC API sends one rolled-up summary email per (org, recipient) at 23:55 UTC. The summary lists every monitor that hit the cap with the total match count for the day; the body is plain text + HTML, both Outlook-safe. The summary is idempotent per (org, recipient, UTC date) — re-running the daily-summary asset on the same UTC date is a no-op. Customers who’d like to disable the summary entirely can unsubscribe via theList-Unsubscribe header on any monitor email, which flips delivery.status to unsubscribed (the dispatcher then skips that monitor entirely until the customer re-enables via POST /v1/monitors/{monitor_id}/delivery).
Limits
- Search modes: only
keywordis supported in monitor execution at this time. Semantic search support will land in a future release. - One destination per monitor: v1 supports a single delivery destination per monitor row. Use multiple monitors to fan out to multiple channels for now.
- Quota: email delivery is metered as
email_delivery(180 sends per minute by default per org). Adjust via the standard plan policy override env. - Legacy
webhookUrl: new monitors should usedelivery.type='email'or subscribe an organization-level webhook endpoint to themonitor.matchevent type.
Related
- Webhook and stream workflows
- Events API — full event-type reference
- Build a filing monitor