Twitter/𝕏 Keyword Alerts [TEMPLATE]

Get custom notifications when you, your company, or anything you care about is mentioned on Twitter/X, even if they don't tag you directly.

This template will help you:

  1. Search for specific mentions on Twitter/X using customizable keywords.
  2. Deliver notifications wherever you'd like (email, Discord, Slack, Telegram, etc).

Example

This val tracks mentions of "Val Town" and related terms, excluding noise like retweets and irrelevant accounts. Notifications are sent to a Discord webhook but can be easily reconfigured for other platforms. To see exactly how we use this template at Val Town: https://www.val.town/x/stevekrouse/twitterAlert

Set Up

1. Fork this Val

To use this template, fork this val on the top right corner of this page. Screenshot 2025-01-10 at 1.22.10 PM.png

2. View Source Code

The CODE box shows you the the full source code of this val, you may need to scroll down to see it. image.png

3. Customize Query

Define what you want to search for by modifying query:

const query = "\"val.town\" OR \"val.run\" OR \"val town\" -_ValTown_ -is:retweet -from:valenzuelacity -from:val__run";

Refer to Twitter's search operators to fine-tune your query.

4. Test API call

Set isProd = false in the code if you are testing, to ensure there are enough tweets to display.
Toggle it back to true when you're ready to run this cron job in production and actuall send notifications.

5. Choose Notification Method

This template uses a Discord webhook for notifications, but you can update this to your preferred platform by replacing the discordWebhook call with a call to Slack, @std/email, etc.

Create a Discord webhook following this guide.

Save your Discord Webhook URL in your Environment Variables (you can find this on the left sidebar):

  • Key: mentionsDiscord
  • Value: Your Discord webhook URL. Notifications will be sent using this function:
await discordWebhook({ url: Deno.env.get("mentionsDiscord"), content, });

🎉 Congrats! You now have a val running that ensures you never miss another Twitter/X mention. 🎉

NOTE: Usage Limits

This val uses the SocialData API for Twitter data: