Template id: x/health · Trigger: Schedule, every day at 08:00 (flow timezone) · Flow timeout: 30 minutes
𝕏 changes its page from time to time, and the 𝕏 nodes find things on the page with selectors. 𝕏 Selector Health signs in every morning, checks that everything the 𝕏 nodes need is still on the page, and notifies you when something is missing, before your other 𝕏 flows start failing.
What you need
- A Dataset › Account with platform X.
- Publish the flow: schedules run the published version.
The flow
flowchart LR
schedule[Every morning] --> signin[Sign in] --> health[Check 𝕏 selectors]
health -- broken --> notify[Tell me]
| Id | Node | Type | Key values |
|---|---|---|---|
schedule | Every morning | trigger/schedule | every: 1, unit: "days", at: "08:00" |
signin | Sign in | x/signin | on error ask a human, timeout 10 min |
health | Check 𝕏 selectors | x/health | timeout 2 min |
notify | Tell me | human/notify | channel: "app", level: "error" |
The ok dot of Check 𝕏 selectors isn't connected: when everything is fine, the run just ends.
The notification
𝕏 changed its page
Missing: replyButton, text. Signed in: true. The 𝕏 nodes may fail until they're updated.
It comes from:
Missing: {{ nodes.health.output.missing | join:", " }}. Signed in: {{ nodes.health.output.signedIn }}. The 𝕏 nodes may fail until they're updated.
What it checks
timeline, column (the main column), on the first post text, author, link, stats, reply, then on a post page composer and replyButton. Output:
{
"ok": false,
"signedIn": true,
"checks": [{ "name": "timeline", "ok": true }, { "name": "replyButton", "ok": false }],
"missing": ["replyButton"],
"url": "https://x.com/home"
}
Make it yours
| You want | Change |
|---|---|
| Discord or Slack instead of the bell | Tell me › channel and url (the webhook URL). |
| Another time | Every morning › at (and the flow's timezone in Settings). |
| A message when it's fine too | Connect ok to another Notify node. |
FAQ
Does it post anything?
No. It only reads the page.
Why didn't it run this morning?
Schedules run the published version. Publish the flow, and check the flow's timezone in Settings.