Weekly Slack digest of new statutory company filings
Track a watchlist of companies in a spreadsheet and get one Slack message every Monday with the new public filings from the past week.
Every Monday at 7am, build me a digest of new statutory filings for the companies on our watchlist.
Start by reading the watchlist from Google Sheets using Get Values. The watchlist tab has one row per company, and each row already holds an exact jurisdiction code (for example gb or us_de), the company number, and the company name I want shown in the digest. Because the sheet stores the jurisdiction code and company number directly, there is no name matching or company search step required: OpenCorporates identifies a company by that pair, not by a single id.
For each row in the watchlist, call OpenCorporates List Company Filings using that row's jurisdiction code and company number. Keep only the filings whose filing date falls within the last 7 days, counting back from the day the workflow runs, and discard everything older.
Group the surviving filings by company. For each company that has at least one new filing, show the company name followed by its filings, and for every filing show the filing date, the filing type and the filing title. Sort each company's filings newest first.
Post the whole digest as a single Slack message to our monitoring channel using Send a Message. It should be one message covering every company, not one message per company.
Then append each new filing as its own row to a history tab in the same Google Sheets spreadsheet using Append Values, so we can see what changed over time. Each history row should record the run date, company name, jurisdiction code, company number, filing date, filing type and filing title.
Two anti-noise rules matter here. Companies with no filings in the last 7 days must be left out of the Slack message entirely, rather than listed with a 'no updates' line. And if no company on the watchlist has a new filing that week, skip posting altogether rather than sending an empty digest.
If a jurisdiction code and company number pair cannot be found in OpenCorporates, skip that row and carry on with the rest of the watchlist rather than failing the whole run.
Example output
What does this prompt do?
- Reads your watchlist of companies from a Google Sheet, so you control exactly who is monitored just by editing a spreadsheet.
- Checks each company for new public filings recorded in the last seven days.
- Posts a single Slack message every Monday morning, grouped by company, showing the date, type and title of each new filing.
- Logs every new filing to a history tab in the same spreadsheet, so you build a running record of what changed over time.
What do I need to use this?
- A Google account with a spreadsheet holding your watchlist, one row per company.
- For each company, its registry code (the country or state it is registered in) and its official company number, both of which appear on the company's public registry listing.
- An OpenCorporates account on a plan that allows automated lookups.
- A Slack workspace and the channel you want the digest posted to.
How can I customize it?
- Change the timing: keep it on Monday mornings, move it to a different hour, or run it daily if you want faster warning.
- Change the window: the digest covers the last seven days by default, but you can widen it to a fortnight or narrow it to a single day.
- Change the destination: post to a different Slack channel, or add extra columns to the history tab so it feeds your own reporting.
FAQs
How do I add or remove a company from the watchlist?
What happens in a quiet week when nothing is filed?
Which countries does this cover?
Do I need to get company names exactly right?
Will this use up my OpenCorporates allowance?
Related templates
When your flight moves, your calendar times get corrected automatically and you get a Slack note naming the meetings you're about to miss.
Every 15 minutes, forwarded phishing reports get traced back to the server that really sent them, with a verdict in Slack and the worst senders reported.
Every Monday, check every S3 bucket for public exposure, missing encryption and weak backup settings, then get the risks ranked in Slack.
Every weekday at 7am, sign in to the tender portals you track, filter new notices against your bid criteria, and open a deal for the ones worth chasing.
Every weekday at 4pm, spot the threads that went quiet, stage a ready-to-send nudge in your mailbox, and get a ranked Slack recap.
Every Monday, rank the week's matches by expected demand, put the big ones on your venue calendar, and post a rota-ready summary to Slack.
Stop checking company registries by hand.
Put your watchlist in a spreadsheet and let the filings come to you every Monday morning.