Daily GreyNoise IP reputation sweep in Google Sheets

Every morning, check your tracked IP addresses against GreyNoise and write the latest verdict straight back into your spreadsheet automatically.

Deterministic Code
GreyNoiseGoogle SheetsEngineeringOperationsResearch & MonitoringData Sync
PromptCreate

Build this as a code workflow. Every day at 6am, run a scheduled sweep that reads a list of IP addresses from a Google Sheets tracking sheet, checks them all against GreyNoise in one bulk lookup, and writes the results back into the same rows.

Start with Google Sheets Get Values to read the IP column from a fixed A1 range on the tracking tab (for example firewall blocklist candidates or recently seen source IPs). Treat the first row as a header and collect the IP addresses from the rows below, remembering which spreadsheet row each IP came from so the results land next to the right IP.

Send every IP address in a single GreyNoise Multi IP Lookup request. Multi IP Lookup accepts up to 10,000 IPs per call and returns the same intelligence shape as the single IP Lookup for each one: internet_scanner_intelligence, business_service_intelligence, and a combined classification.

For each IP, build a row of status columns from the response. Include the classification (benign, malicious, suspicious, or unknown); whether the IP is internet background noise, as yes or no from internet_scanner_intelligence.found; the RIOT business-service name if the IP belongs to one, taken from business_service_intelligence (otherwise record 'none'); the last-seen date from the scanner intelligence; and the timestamp of this check, which is the current run time. When GreyNoise has no record of an IP, meaning it is absent from both the scanner and business-service datasets, write 'no data' in the classification column instead of leaving the row blank.

Write everything back with Google Sheets Update Values, overwriting the status columns for every IP on every run so the sheet always reflects GreyNoise's latest verdict. Update the same fixed set of columns each time (classification, internet background noise, business service, last seen, checked at) over the same range. Do not append new rows or shift the existing IP list.

Note on limits: GreyNoise's free Community tier is limited to roughly 50 lookups per week, so sheets with more than a few dozen IPs need a paid GreyNoise plan to cover the daily sweep.

What does this prompt do?

  • Reads a list of IP addresses you keep in a Google Sheet, such as firewall blocklist candidates or recently seen source IPs.
  • Checks every IP against GreyNoise in one bulk lookup to see how it is classified and whether it is harmless internet background noise.
  • Writes the results back into the same rows, filling columns for classification, background-noise status, known business-service name, last-seen date, and the time of the check.
  • Runs on its own every morning and overwrites the status columns so the sheet always shows GreyNoise's latest verdict, marking any unknown IPs as 'no data' instead of leaving gaps.

What do I need to use this?

  • A Google account with the tracking spreadsheet that holds your IP addresses.
  • A GreyNoise account and API key (GreyNoise issues keys only to accounts registered with a business email address).
  • A column of IP addresses in the sheet, with room alongside it for the status columns the workflow fills in.
  • A paid GreyNoise plan if your list is large, since the free Community tier allows only about 50 lookups per week.

How can I customize it?

  • Change the timing or frequency, for example running hourly during an active incident instead of once a day at 6am.
  • Point it at a different spreadsheet, tab, or cell range, or grow the list of IPs it watches.
  • Adjust which result columns get written or the order they appear in.

FAQs

What is internet background noise?
GreyNoise labels IP addresses that constantly scan or probe the whole internet as background noise. These are usually opportunistic and not aimed at you specifically, so you can safely deprioritize them and focus on the IPs that stand out.
Will this work on the free GreyNoise plan?
Yes for small lists, but the free Community tier only allows about 50 lookups per week. If your sheet holds more IPs than that, you will want a paid GreyNoise plan so the daily sweep can check every row.
What happens to IPs GreyNoise has never seen?
Those rows are marked 'no data' so you can tell them apart from IPs that simply have not been checked yet. Nothing is left blank.
Does it overwrite my spreadsheet every run?
It overwrites only the status columns it manages: classification, background noise, business service, last seen, and the check time. Your list of IP addresses stays exactly as you left it.
What is a RIOT business service?
RIOT is GreyNoise's list of common business services such as Google, Microsoft, or Cloudflare. If an IP belongs to one, the workflow records that name so you do not mistake trusted infrastructure for a threat.

Related templates

Weekly Amazon S3 bucket security audit posted to Slack

Every Monday, check every S3 bucket for public exposure, missing encryption and weak backup settings, then get the risks ranked in Slack.

Amazon S3
Slack Bot
Google Sheets
Agentic Task
Turn procurement portal tenders into CRM deals each morning

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.

Anchor Browser
Google Sheets
HubSpot
+1
Agentic Task
Draft polite follow-ups for emails that never got a reply

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.

Aurinko
Google Sheets
Slack Bot
Agentic Task
Flag VIP client emails in Zoho Mail and alert your team

Keep a spreadsheet of your most important senders, and every email from one gets labeled, posted to your team channel, and logged automatically.

Zoho Mail
Google Sheets
Slack Bot
Deterministic Code
Send Yotpo review requests when Shopify orders ship

The moment an order is fulfilled, we register it with Yotpo so the review request is timed off real delivery, and we log every sync so failures never go unnoticed.

Shopify
Yotpo
Google Sheets
Deterministic Code
Reconcile Shopify sales against Zoho Books every night

Every night at 11pm we compare the day's Shopify orders with your Zoho Books invoices and payments, and flag only what does not match.

Zoho Books
Shopify
Google Sheets
+1
Agentic Task

Keep your IP watchlist current without the manual checks.

Let GreyNoise grade every IP in your sheet each morning so your team always sees the latest verdict.