MikroTik Push Notifications

Updated on September 05, 2026

Send MikroTik RouterOS push notifications with Signalgrid,
including WAN failover and interface down/up events.

MikroTik boxes are great at detecting ugly little network problems before somebody calls you. This page shows two simple RouterOS examples that send a Signalgrid push notification when your WAN fails over or when an interface goes down or comes back up.

The first example uses Netwatch for a clean WAN failover signal. The second uses a small scheduled RouterOS script that watches an interface running state and sends an alert only when the state changes.

Useful for

  • WAN failover alerts
  • Primary internet down notifications
  • Backup uplink active alerts
  • Interface down notifications
  • Interface up recovery alerts
  • Router, switch, and uplink monitoring on your phone

WAN failover with Netwatch

RouterOS Netwatch can run an up-script and down-script when the monitored target changes state. That makes it a good fit for simple WAN failover notifications.

RouterOS
/system script add name="sg-wan-down" source={ /tool fetch keep-result=no http-method=post http-header-field="Content-Type: application/x-www-form-urlencoded" \ http-data="client_key=YOUR_CLIENT_KEY&channel=YOUR_CHANNEL_TOKEN&type=CRIT&critical=true&title=MikroTik%20WAN%20down&body=Primary%20WAN%20probe%20failed.%20Traffic%20may%20be%20on%20the%20backup%20link." \ url="https://api.signalgrid.co/v1/push"; } add name="sg-wan-up" source={ /tool fetch keep-result=no http-method=post http-header-field="Content-Type: application/x-www-form-urlencoded" \ http-data="client_key=YOUR_CLIENT_KEY&channel=YOUR_CHANNEL_TOKEN&type=SUCCESS&critical=false&title=MikroTik%20WAN%20restored&body=Primary%20WAN%20probe%20is%20reachable%20again." \ url="https://api.signalgrid.co/v1/push"; } /tool netwatch add host=1.1.1.1 type=icmp interval=30s down-script="/system script run sg-wan-down" up-script="/system script run sg-wan-up"

Replace YOUR_CLIENT_KEY and YOUR_CHANNEL_TOKEN, then choose a probe target that makes sense for your primary WAN path.

Interface down / up alerts

For interface state changes, a small scheduled RouterOS script is often the simplest option. This example polls ether1 every 30 seconds and only sends a Signalgrid notification when the interface changes from down to up or from up to down.

RouterOS
/system script add name="sg-interface-watch" source={ :global sgInterfaceState; :local ifname "ether1"; :local isRunning [/interface get [find where name=$ifname] running]; :if ([:typeof $sgInterfaceState] = "nothing") do={ :set sgInterfaceState $isRunning; :return; } :if ($isRunning != $sgInterfaceState) do={ :if ($isRunning = true) do={ /tool fetch keep-result=no http-method=post http-header-field="Content-Type: application/x-www-form-urlencoded" \ http-data="client_key=YOUR_CLIENT_KEY&channel=YOUR_CHANNEL_TOKEN&type=SUCCESS&critical=false&title=MikroTik%20interface%20up&body=Interface%20ether1%20is%20running%20again." \ url="https://api.signalgrid.co/v1/push"; } else={ /tool fetch keep-result=no http-method=post http-header-field="Content-Type: application/x-www-form-urlencoded" \ http-data="client_key=YOUR_CLIENT_KEY&channel=YOUR_CHANNEL_TOKEN&type=WARN&critical=false&title=MikroTik%20interface%20down&body=Interface%20ether1%20is%20not%20running." \ url="https://api.signalgrid.co/v1/push"; } :set sgInterfaceState $isRunning; } } /system scheduler add name="sg-interface-watch" interval=30s on-event="/system script run sg-interface-watch"

Change ether1 to the MikroTik interface you actually want to watch, such as a WAN port, an uplink, or another critical Ethernet interface.

Notes

  • Netwatch supports state-based up-script and down-script execution, which is why it is useful for a straightforward WAN failover alert.
  • RouterOS scripting can be triggered by tools like Scheduler and Netwatch, so both examples stay inside native MikroTik automation instead of requiring an external agent.
  • RouterOS exposes a running state on interfaces, which makes simple interface up/down monitoring possible with a scheduled script.
  • If you want less noisy alerts later, you can expand either example with a longer interval, a second confirmation check, or separate warning and critical notification types.