I recently learned about [IndexNow](https://indexnow.org/): a simple standard for notifying search engines[^marketshare] that you've got new content they should index. If you only post an average of 5 times a year, it probably makes more sense to use cURL to submit your one URL to their basic API. But I like to automate things, and I'd already written a standards compliant [WebSub](https://www.w3.org/TR/websub/) [Subscriber for AWS Lambda and SNS](https://andrew.jorgensenfamily.us/2022/05/web-subscriber/), so I thought I'd write another little Lambda function to bridge that one to IndexNow. [IndexAtomNow](https://github.com/ajorg/IndexAtomNow) is as simple as I could make it. It processes an SNS notification containing the kind of [Atom](https://datatracker.ietf.org/doc/html/rfc4287) fragment WebSub gives you, extracts the URLs from each `<entry>` element, and submits them to IndexNow. It doesn't have much error handling, or useful logging yet, but it does the job, and at a rate of 5 invocations a year, runs well within Lambda's free tier. When I publish this post to my [static but TLS-enabled site using S3 and CloudFront](https://andrew.jorgensenfamily.us/2020/12/static-sites-on-cloudfront/), I'll also notify my WebSub Hub[^hugo], which will notify my subscribed [WebSubscriber](https://github.com/ajorg/WebSubscriber) instance, which will forward the notice to my IndexAtomNow instance, which will use my configured key to notify IndexNow, like a proper Rube Goldberg machine[^microservices]. [^marketshare]: Not including Google, which has ~90% market share 🤷, but at least including Bing which has like ~4%. [^hugo]: I haven't found a nice way to integrate that into my [Hugo](https://gohugo.io) deployment configuration yet. [^microservices]: _Ahem!_ "Serverless microservices architecture." 😉