# Website Down Alert Workflow > n8n mein site check karo, kharab nikle to Telegram pe turant alert: step by step Free guide by bloopcommits (@bloopcommits) · https://bloopcommits.pages.dev/ping/ Tumhari website raat ko down ho gayi aur kisi ne bataya nahi? Is guide mein ek chhota n8n workflow hai: har five minute mein tumhari site ko ek request jaati hai, aur agar jawab kharab aaye (status code 400 ya usse zyada, ya status code mile hi nahi), to Telegram bot tumhe turant message bhejta hai. Sab theek ho to koi message nahi aata. Na baar baar site kholke dekhna, na kisi ke batane ka wait. > **Ye workflow kya karta hai** > > - Schedule Trigger har five minute mein workflow shuru karta hai (interval tum badal sakte ho). > - HTTP Request tumhari site ko GET request bhejta hai aur status code samet poora response wapas laata hai. Never Error on hai, to 2xx na aaye tab bhi node error nahi deta. > - If node dekhta hai: status code 400 ya usse zyada? Ya status code hai hi nahi? Dono mein se koi ek mile to true. > - True: Telegram Send Message tumhe 'Site down: status ...' bhejta hai. > - False: All Good (No Operation) kuch nahi karta. Flow yahin rukta hai, koi message nahi. ![n8n ke official preview mein poora workflow: Every 5 Minutes > Check Site > Site Down? > Send Alert > All Good](https://bloopcommits.pages.dev/ping/workflow.png) _Poora workflow, n8n ke official preview mein (workflow hamara, screen n8n ka)._ Reel mein jo alert card ('Site down: status 503') dikha, wo banaya hua example hai; hamne ye workflow kisi account par chalaya nahi hai. Ye starter workflow hai, n8n ke official preview mein dikhaya gaya. Credentials khud jodne padte hain, aur chalu karne se pehle ek test se check karo. ## Node by node (n8n ke official docs ke hisaab se) | Node (canvas par naam) | n8n node | Kya karta hai | Tumhe kya set karna hai | | --- | --- | --- | --- | | Every 5 Minutes | Schedule Trigger | Workflow ko tay interval par shuru karta hai. Minutes interval mein 'Minutes Between Triggers' = kitne minute baad dobara. Docs: workflow save aur publish karna zaroori hai. | Trigger Interval: Minutes. Minutes Between Triggers: 5 (ya apni marzi se zyada). | | Check Site | HTTP Request | Site ko request bhejta hai. Options: 'Include Response Headers and Status' on = headers aur status code bhi milte hain; 'Never Error' on = 2xx na ho tab bhi success; 'Timeout' milliseconds mein. | Method GET, URL = apni site. Options: Include Response Headers and Status on, Never Error on, Timeout 10000 (10 second). Node Settings mein On Error: Continue. | | Site Down? | If | Conditions: Number 'is greater than or equal to' 400 OR 'does not exist' (status code hi nahi). OR ka matlab: koi ek mile to true. Do output: true aur false. | Do conditions starter JSON mein pehle se hain; value status code wala expression hai. | | Send Alert | Telegram, Send Message | True branch: chat mein message bhejta hai. Text ki limit 4096 characters. | Telegram credential (Access Token), Chat ID, Text. 'Append n8n Attribution' starter mein off hai. | | All Good | No Operation, do nothing | Kuch nahi karta. Docs: ye node workflow ko padhne mein aasan banata hai aur dikhata hai ki data ka flow yahan rukta hai. | Kuch nahi. | ## Kya chahiye - n8n: apne server par self-host (Community Edition) ya n8n Cloud (free trial). Kharche ka section neeche hai. - Telegram bot ka Access Token: Telegram par BotFather se chat shuru karo, /newbot likho, naam aur username do (username 'bot' par khatam hona chahiye), aur jo token mile use n8n mein Access Token ki jagah daalo. - Telegram Chat ID: kahan alert aana chahiye, uska id. Tareeke neeche 'Chat ID kaise nikaalein' mein hain. - Apni site ka URL. Sirf apni site (ya jis site ke owner ne ijazat di ho). - n8n chalu rehna chahiye: Schedule Trigger tabhi chalta hai jab workflow publish ho aur n8n chal raha ho. ## Chat ID kaise nikaalein (n8n docs ke hisaab se) n8n ke Telegram docs 'Get the Chat ID' mein ye tareeke dete hain: 1. Telegram Trigger node: apne workflow mein Telegram Trigger lagao. Docs ke hisaab se ye node kamyaab execution par Chat ID wapas deta hai. Bot ko ek message bhejo aur trigger ke output mein chat ka id dekho. 2. Web browser: Telegram ko browser mein kholo aur group chat kholo. Docs: group ka Chat ID us 'g' akshar ke baad ke digits hain. n8n mein daalte waqt group Chat ID ke aage '-' lagao. 3. RawDataBot: docs ke hisaab se Telegram ke @RawDataBot ko group mein invite karo; wo ek JSON bhejta hai jisme 'chat' object ka 'id' hi group ka Chat ID hai. Ye third-party bot hai, sirf apne group mein aur samajhdari se use karo. ## Step by step 1. n8n kholo (Cloud trial ya apna self-host) aur ek naya workflow banao. 2. Neeche wala starter workflow Import from File se laao, ya JSON copy karke canvas par paste karo. 3. Check Site node mein URL ki jagah apni site ka URL daalo. 4. Send Alert node mein Telegram credential chuno (ya naya banao: BotFather ka token) aur apna Chat ID daalo. 5. Check Site mein options dekho: Include Response Headers and Status on, Never Error on, Timeout. Node Settings mein On Error: Continue. 6. Site Down? (If) mein dono conditions dekho: status code >= 400, aur status code does not exist. 7. Test ke liye: Check Site ka URL kuch der ke liye apni hi site ke aise link par kar do jo galat page hota hai (jaise koi nakli path), taaki 400 ya usse zyada status aaye. Execute Workflow chalao aur dekho Telegram par alert aaya ya nahi. Dhyan: kuch sites galat link par bhi 200 deti hain, tab ye test alert nahi dega. 8. URL wapas asli site ka karo. 9. Test theek lage, tab workflow ko publish karo. Schedule Trigger ke liye docs kehte hain: save aur publish zaroor karo. 10. Interval halka rakho. Shuru mein five minute theek hai; zarurat na ho to zyada rakho. [Workflow file download karo](https://bloopcommits.pages.dev/ping/bloopcommits-ping-workflow.json) - .json file · n8n mein Import from File · download na ho to neeche Copy dabao **starter workflow: n8n mein Import from File / paste karo, URL aur Chat ID khud bharo, credentials khud jodo, ek test se check karo** ``` { "name": "Website Down Alert Starter", "nodes": [ {"id":"1","name":"Every 5 Minutes","type":"n8n-nodes-base.scheduleTrigger","typeVersion":1.2,"position":[0,0],"parameters":{"rule":{"interval":[{"field":"minutes","minutesInterval":5}]}}}, {"id":"2","name":"Check Site","type":"n8n-nodes-base.httpRequest","typeVersion":4.2,"position":[300,0],"onError":"continueRegularOutput","parameters":{"method":"GET","url":"https://your-own-site.example","options":{"response":{"response":{"fullResponse":true,"neverError":true}},"timeout":10000}}}, {"id":"3","name":"Site Down?","type":"n8n-nodes-base.if","typeVersion":2.2,"position":[600,0],"parameters":{"conditions":{"options":{"caseSensitive":true,"typeValidation":"loose","version":2},"combinator":"or","conditions":[{"id":"c1","leftValue":"={{ $json.statusCode }}","rightValue":400,"operator":{"type":"number","operation":"gte"}},{"id":"c2","leftValue":"={{ $json.statusCode }}","rightValue":"","operator":{"type":"number","operation":"notExists","singleValue":true}}]},"options":{}}}, {"id":"4","name":"Send Alert","type":"n8n-nodes-base.telegram","typeVersion":1.2,"position":[900,0],"parameters":{"chatId":"","text":"=Site down: status {{ $json.statusCode || 'no reply' }}","additionalFields":{"appendAttribution":false}}}, {"id":"5","name":"All Good","type":"n8n-nodes-base.noOp","typeVersion":1,"position":[900,230],"parameters":{}} ], "connections": {"Every 5 Minutes":{"main":[[{"node":"Check Site","type":"main","index":0}]]},"Check Site":{"main":[[{"node":"Site Down?","type":"main","index":0}]]},"Site Down?":{"main":[[{"node":"Send Alert","type":"main","index":0}],[{"node":"All Good","type":"main","index":0}]]}} } ``` Is JSON mein credentials nahi hain. URL ki jagah 'your-own-site.example' ek placeholder hai, aur Chat ID khali hai: dono tumhe khud bharne hain. Status code ka expression ({{ $json.statusCode }}) HTTP Request ke full response se aata hai: pehle test se dekh lo ki tumhare n8n mein field isi naam se aa raha hai. > **Banaya hua example** > > - Site theek hai: HTTP Request status 200 laata hai, If false deta hai, All Good par flow rukta hai, koi message nahi. > - Site kharab hai: status 503 aata hai, If true deta hai, Telegram par aata hai: Site down: status 503 > - Site bilkul na khule (poori failure): ho sakta hai status code hi na mile. Aise mein If ki doosri condition ('status code does not exist') use bhi down maanti hai, aur message aata hai: Site down: status no reply ## Baar baar alert aa raha hai? Ek idea (try karke dekho, tested recipe nahi) Jab tak site down rahegi, har interval par workflow dobara chalega aur har baar Telegram message jayega. Kyunki Schedule Trigger har interval par chalta hai aur true branch par har run ek message bhejta hai. Ek idea: workflow ko yaad rakhne do ki alert pehle hi ja chuka hai, aur sirf pehli baar bhejo. Ye hamari idea hai, tested recipe nahi: apne n8n mein khud try karke dekho. 1. Send Alert se pehle (true branch par) ek Code node (JavaScript) lagao jisme neeche wala 'alert once' code ho. 2. All Good (No Operation) ki jagah ek Code node lagao jisme neeche wala 'reset' code ho, taaki site theek hone par flag saaf ho jaye. 3. n8n docs ke hisaab se workflow static data Code node (JavaScript) mein $getWorkflowStaticData('global') se milta hai, par ye experimental feature hai: testing mein available nahi hota, workflow publish hona chahiye aur trigger se chalna chahiye. Isliye ise manual test run mein nahi, publish karke dekhna padega. 4. Alternative: docs kehte hain ki Data Table node data ko test run mein bhi rakhta hai. Wahan 'last status' ek row mein rakh sakte ho. Ye bhi idea hai, tested recipe nahi. 5. Chaho to site wapas theek hone par ek 'site wapas up' message bhi bhejo: ye bhi idea hai. **IDEA (tested recipe nahi): Code node, true branch par, Send Alert se pehle** ``` // IDEA: pehle check karo ki alert pehle hi ja chuka hai ya nahi const state = $getWorkflowStaticData('global'); if (state.alerted) { return []; // pichhle run mein alert gaya tha: is baar chup raho } state.alerted = true; // pehli baar down mila: alert jaane do return $input.all(); ``` **IDEA (tested recipe nahi): Code node, All Good ki jagah** ``` // IDEA: site theek hai, to yaad rakhne wala flag saaf karo const state = $getWorkflowStaticData('global'); state.alerted = false; return $input.all(); ``` ## Aam galtiyan - Workflow publish nahi kiya. Schedule Trigger ke docs: save aur publish zaroor karo, warna schedule par kuch nahi chalega. - n8n band hai. Docs ke hisaab se instance band ho to us time ka run miss ho jaata hai, aur default in-memory scheduler missed runs baad mein nahi chalata. Isliye server chalu rakho. - Never Error ya Include Response Headers and Status off hai. Tab ya to HTTP Request error deta hai, ya If ko status code milta hi nahi. - Timeout bahut chhota hai. Tumhari site dheere khulti hai to false alarm aa sakta hai: Timeout badha do. - Chat ID khali ya galat hai, ya Telegram credential ka token galat hai. - Interval bahut chhota rakh diya. Health check halka rakho. - Doosre ki site ko bina ijazat check karna. Sirf apni site ya owner ki ijazat se. - Test kiye bina workflow publish kar dena. Pehle ek test se check karo. > **Safety aur zimmedari** > > - Sirf apni site monitor karo, ya jiske owner ne ijazat di ho. Interval halka rakho. Ye health check hai, scraping nahi. > - Bot token aur Chat ID kisi ko share mat karo. > - Site down rahi to alert baar baar aayega: upar wala idea dekho. > - Ye starter workflow hai. Ek test se check karo, phir publish karo. > - Ye advice hai, guarantee nahi. ## Kharcha (plans badalte rehte hain, official page dekho) | Option | n8n ke official pages ke hisaab se | | --- | --- | | Self-host (Community Edition) | Free Community edition, almost complete feature set. Infrastructure tum khud provide aur manage karte ho: server chalu rakhna tumhari zimmedari. | | n8n Cloud | n8n khud host karta hai. Free trial milta hai (trial ke liye credit card nahi chahiye, n8n.io/pricing ke hisaab se). Uske baad paid plans: plans aur daam official pricing page par dekho. | > **Yaad rakho** > > - Schedule Trigger -> HTTP Request -> If (status 400+ ya status nahi) -> true: Telegram Send Message, false: All Good. > - Workflow publish karo aur n8n chalu rakho: band instance par check chhoot jaata hai. > - Sirf apni site, halka interval, health check hai scraping nahi. > - Baar baar alert ka idea upar hai (tested recipe nahi). > - Starter workflow hai: accounts aur credentials khud jodo, ek test se check karo. ## Official links - [n8n docs: Schedule Trigger](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/) - [n8n docs: HTTP Request](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/) - [n8n docs: If](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.if/) - [n8n docs: No Operation, do nothing](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.noop/) - [n8n docs: Telegram (Send Message)](https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.telegram/message-operations/) - [n8n docs: Telegram common issues (Get the Chat ID)](https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.telegram/common-issues/) - [n8n docs: Telegram credentials](https://docs.n8n.io/integrations/builtin/credentials/telegram/) - [n8n docs: node settings (On Error)](https://docs.n8n.io/build/understand-workflows/workflow-components/work-with-nodes/) - [n8n docs: workflow static data](https://docs.n8n.io/code/cookbook/builtin/get-workflow-static-data/) - [n8n docs: choose how to use n8n](https://docs.n8n.io/choose-how-to-use-n8n/) - [n8n: pricing](https://n8n.io/pricing) --- More free guides: https://bloopcommits.pages.dev/