Daily SEC filings brief for your watchlist

Every weekday morning, get a one-page executive brief on overnight 10-K, 10-Q, and 8-K filings for tickers you cover, posted to Slack and archived in Notion.

Agentic Task
Financial ResearchNotionSlackFinanceOperationsDaily DigestsAI ReportsResearch & Monitoring

Build an agent-based workflow that runs on a cron trigger every weekday at 7:00 AM America/New_York. The agent should produce an overnight executive brief on new SEC filings for a configurable stock watchlist, post each brief to Slack, and archive it in Notion.

Configurable inputs: the Notion watchlist database id (each row has a Ticker property holding a US stock symbol), the Notion archive database id (the Earnings Briefs database), and the Slack channel id where briefs should be posted.

Agent instructions:

1. Use Notion's Query a Database operation to read every row from the watchlist database and extract the Ticker for each row.

2. For each ticker, call Financial Research Get SEC Filings filtered to types 10-K, 10-Q, and 8-K, with the date range scoped to the prior 24 hours (i.e. anything filed since yesterday's 7:00 AM ET). If a ticker has no new filings in that window, skip it entirely. Do not post a "no news" message.

3. For every ticker that does have at least one new filing, enrich with Financial Research Get Income Statement (most recent quarterly period), Get Cash Flow Statement (most recent quarterly period), and Get Company Profile.

4. Write one executive brief per filing, compressed to about six short bullets: (a) revenue and year-over-year change vs the prior period, (b) EPS and year-over-year change, (c) free cash flow trend, (d) balance-sheet delta covering cash and debt movement, (e) for 8-K filings a plain-English read of what the event is (acquisition, executive change, guidance update, material agreement, etc.), (f) a one-line analyst takeaway.

5. Post each brief to the configured Slack channel using Slack's Send a Message operation. Format using Slack mrkdwn (asterisks for bold, not double asterisks). Lead with the ticker, company name, filing type, and filing date so readers can scan.

6. Also create a new page in the Notion Earnings Briefs archive database using Notion's Create a Page operation, with properties for Ticker, Company, Filing Type, Filing Date, and Brief Date, and the full brief body as the page content. This archive is what makes the workflow useful over time: analysts should be able to search prior briefs by ticker or filing type.

Keep the workflow resilient: if a single ticker errors (missing data, API failure), log it and keep going with the rest of the watchlist rather than aborting the run.

Additional information

What does this prompt do?
  • Reads your watchlist from a Notion database every weekday morning before the market opens.
  • Checks for new 10-K, 10-Q, and 8-K filings from the prior 24 hours for each ticker on the list.
  • Writes a tight executive brief on revenue, earnings per share, free cash flow, balance-sheet changes, and the headline behind any 8-K event.
  • Posts the brief to a Slack channel and saves a searchable copy in your Notion archive, so analysts can grep prior briefs later.
What do I need to use this?
  • A Notion workspace with a database that lists the tickers you cover (one ticker per row).
  • A Notion archive database where past briefs are stored, so each run leaves a searchable record.
  • A Slack workspace and the channel where the morning briefs should land.
How can I customize it?
  • Swap the watchlist by pointing the workflow at a different Notion database.
  • Change the schedule, the Slack channel, or the filing types you actually care about (skip 10-K, only 8-K, etc.).
  • Tighten or expand each brief, from six short bullets to a full one-pager with your own takeaway section.

Frequently asked questions

Does this post anything to Slack when there are no new filings?
No. Tickers with no overnight filings are skipped so the channel only fills up when something actually happened.
How do I add or remove tickers from the watchlist?
Edit your Notion watchlist database. The next morning's run picks up the changes automatically, no code edits needed.
Where is the historical record stored?
Every brief is saved as a new page in your Notion Earnings Briefs database, so analysts can search past briefs by ticker, date, or filing type.
Will this work if my Slack channel is private?
Yes, as long as the connected Slack user is a member of that private channel.
Does it cover international tickers?
Coverage is US public companies and SEC filings. International listings are not included.

Stop scanning EDGAR before market open.

Connect financial data, Slack, and Notion once, and Geni delivers a watchlist brief every weekday morning.