I am still a noob on n8n and trying to build a SSL alert treatment using UptimeRobot API. As UptimeRobot do not offer what I need using standard nodes, I built this to alert me regarding SSL expiring dates:
The problem is:
I am failing to pull the information per monitor, so a request gives me all monitors separated by $json.monitors[0], $json.monitors[1]… Please, how can I deal with these [0], [1], [2] on my nodes to run the node on entire input?
Thanks a lot and regards
Information on your n8n setup
n8n version: 1.59.4
Database (default: SQLite): SQLite
n8n EXECUTIONS_PROCESS setting (default: own, main): main
Running n8n via (Docker, npm, n8n cloud, desktop app): Docker
Solved using json instead of pagination, for some reason the API accepts “monitors” value on json but do not accept it using fields, just now looking for a way to get more than 50 monitor IDs because the API have this limitation of 50 results
Here’s my final solution to get more than 50 results, solve pagination array and report SSL expiration date if expires in 6 days or less. I am doing this using n8n because UptimeRobot alerts SSL expiration before 15 days to expire and my webservers (CloudPanel) only renews it automatically before 7 days to expire
Explaining API json:
{
"limit": "50", # pulls max allowed results, it's 50
"offset": "0", # get required page index (0, 50, 100...)
"statuses": "2", # only get online monitors, offline monitors do not have SSL to test
"types": "1", # only get HTTP(S) monitors, other monitors do not checl SSL
"ssl": "1" # request SSL information, it's not provided by default
}