```plantuml participant "api" as ap participant "n8n" as n8 participant "api user" as us participant "redis" as re participant "evercrm" as ev participant "slack" as sl n8 -> ap: hit landing page & hit page builder note right n8n as a cron will hit per 1 min end note alt response code 500+ ap -> n8: return http code 500+ n8 -> re: get data to redis alt return error mode is false n8 <- re: return error mode is false n8 -> re: get retry count alt if not max retry n8 -> sl: send error notif n8 -> re: set max retry +1 n8 <-- re: return note right: max retry is 3 else reach max retry n8 -> re: \ndelete retry state, udpate error mode to true n8 -> us: get user data n8 <- us: return user data\n(phone number) n8 -> ev: get available device loop send requset per batch n8 -> n8: \nbuild request,\nbatch per 20 phone number n8 -> ev: send request blast message; server is down end end else return error mode is true n8 <- re: return error mode is true n8 -> n8: igonre end else response code 200 ap -> n8: return http code 200 n8 -> re: get data to redis alt return error mode is false n8 <- re: \nerror mode is false n8 -> n8: ignore else return error mode is true n8 <- re: \nerror mode is true n8 -> sl: send notif server back to normal n8 -> re: udpate error mode to false n8 -> us: \n\nget user data n8 <- us: return user data\n(phone number) n8 -> ev: get available device loop send requset per batch n8 -> n8: \nbuild request,\nbatch per 20 phone number n8 -> ev: send request blast message; server is normal end end end