Importing
Paste what the other service exports, see what it becomes, tick what you want. Under Monitors, Import from another service.
UptimeRobot
Either the CSV export from the dashboard or the JSON the API's getMonitors call returns. HTTP and keyword monitors become HTTP monitors (with the keyword and its must-contain or must-not rule), ping becomes ping, port becomes TCP with the port, and heartbeat becomes a heartbeat with the same period. A heartbeat gets a new ping URL here; the job that pings it has to be pointed at it.
Better Stack
The JSON the monitors API returns ({ data: [...] }). Status, keyword and expected-status monitors become HTTP monitors, ping becomes ping, TCP, UDP, SMTP, POP and IMAP become TCP with the port, DNS becomes an A lookup, and a response-time threshold comes along as the slow threshold. Playwright monitors become plain HTTP checks of their URL, with a note saying so.
Statuspage
Two exports, from the API or the page's own JSON: the components list and the incidents list. Components become components here, in the groups they had, with their current state. Incidents and scheduled maintenance become past incidents on the page, with every update and its time. Impact maps minor to degraded, major to partial and critical to major.
Any CSV
A header row with a URL column is enough; name, type, port and keyword columns are read when present. Commas, semicolons or tabs work as the separator, but a file has to use one of them: a semicolon inside an unquoted comma-separated cell breaks the row, so quote such cells.
After importing
Monitors are added in the order they came, up to the plan's room on the page; components never count. The first checks run within a minute. Nothing is removed from the other service.