Be the first to know when your site goes down.
External monitoring for websites, APIs, servers, SSL certificates and domains. RintUp checks every minute and tells you when something breaks, before your customers notice.
You’ll create your account in the next step.
Oct 1, 03:12
The payments API stopped responding. 41 seconds later, an SMS landed on your phone.
89 of the last 90 days went without a hitch. On the one that didn’t, you knew before your customers did.
- HTTP(S)Websites and APIs
- KeywordText on the page
- TCPPorts and services
- ICMPPing and latency
- DNSRecord validation
- TLSSSL certificates
- WHOISDomain expiry
Teams that monitor their critical services with RintUp
- [Customer logo]
- [Customer logo]
- [Customer logo]
- [Customer logo]
- [Customer logo]
- [Customer logo]
Your whole infrastructure on one screen.
Outages at the top, healthy services below. Every row shows the last 30 days, response time and the last check. Click a row to open the full incident timeline.
- Monitors
- Incidents
- Status pages
- Notifications
- Team
- Settings
Monitors
6 monitors, last updated 14:05| Monitor | Status | Response | Uptime | Last 30 days | Last check |
|---|---|---|---|---|---|
Marketing site https://www.ornek.com | Down | — | 98.41% | 14:04 | |
Authentication https://auth.ornek.com/status | Slow | 2,410 ms | 99.62% | 14:05 | |
Reporting database tcp://10.0.4.12:5432 | Maintenance | — | 99.91% | 14:00 | |
Payments API https://api.ornek.com/health | Up | 182 ms | 99.98% | 14:05 | |
Static files (CDN) https://cdn.ornek.com/ping.txt | Up | 38 ms | 100.00% | 14:05 | |
Legacy dashboard https://legacy.ornek.com | Paused | — | 99.12% | 2 days ago |
Watches everything that has to stay up.
One account, one dashboard. Uptime, response time, certificates, domains and server health in one place, under the same alert rules.
Uptime and response time
Checks your HTTP and HTTPS endpoints every minute and verifies the status code, the response time and the text that should be on the page. If the site is up but slow, you’ll know that too.
- Status code and keyword checks
- A “Slow” threshold for response time
- Redirect, header and body checks
SSL certificates and domains
Tracks the expiry dates of your certificates and domains and warns you weeks ahead. You see the browser’s security warning coming, not your customers.
- Expiry, chain and hostname checks
- Wildcard certificates
- Domain registration tracking via WHOIS
Server health
A small agent watches CPU, memory and disk usage. When a threshold you set is crossed, you hear about it before the server falls over.
- CPU, RAM, disk and network metrics
- Custom thresholds per server
- Linux and Docker support
Black line: warning threshold, 85%
Status page
Before calling support, your customers check the state of your systems on a page under your own domain. During an incident you post updates from one place.
- Your own domain and logo
- Scheduled maintenance notices
- Incident subscriptions by email
Oct 1: 47-minute outage on the payments API. Resolved.
One check, six regions.
Every check runs from several continents at once. If one region sees an error the others retry right away; nobody gets paged until the outage is confirmed from at least two regions.
- No false alarms, no pointless wake-ups
- Regional outages show up on their own
- Latency is recorded per region
- FRAFrankfurt42 ms200 OK
- ISTIstanbul18 ms200 OK
- LHRLondon51 ms200 OK
- IADVirginia118 ms200 OK
- SINSingapore196 ms200 OK
- GRUSão Paulo211 ms200 OK
Wherever your team is, the alert is there.
To whoever is on call, on whichever channel they use. Pick channels per monitor and write separate rules for day and night.
- EmailNotification
- SMSNotification
- Phone callNotification
- SlackChat
- Microsoft TeamsChat
- DiscordChat
- TelegramChat
- PagerDutyOn-call
- OpsgenieOn-call
- WebhookYour own system
Manage it from the UI or from code.
One request creates a monitor: only the type and the address are required, everything else has a sensible default. Every list is paged the same way and updates are PATCH. If your infrastructure is code, your monitoring should be too.
- REST API and API keys
- Terraform providerComing soon
- Signed webhook requests
Full API reference
Connect your AI assistant (MCP)
# 1) Create a monitor: only the type and the URL are required curl -X POST https://rintup.com/api/v1/monitors \ -H "Authorization: Bearer rup_live_..." \ -H "Content-Type: application/json" \ -d '{"type":"http","http":{"url":"https://example.com"}}' # 201 Created: the full record (id, name, intervalSeconds, locations…) # 2) List: { "data": [...], "nextCursor": "..." } curl "https://rintup.com/api/v1/monitors?limit=50" \ -H "Authorization: Bearer rup_live_..." # Next page: ?cursor=<nextCursor> (null on the last page) # 3) Pause (resume with /resume) curl -X POST https://rintup.com/api/v1/monitors/<id>/pause \ -H "Authorization: Bearer rup_live_..."
const api = "https://rintup.com/api/v1"; const headers = { Authorization: "Bearer rup_live_...", "Content-Type": "application/json" }; // 1) Create a monitor: only the type and the URL are required const monitor = await (await fetch(`${api}/monitors`, { method: "POST", headers, body: JSON.stringify({ type: "http", http: { url: "https://example.com" } }), })).json(); // 2) List: { "data": [...], "nextCursor": "..." } let cursor = null; do { const url = new URL(`${api}/monitors?limit=50`); if (cursor) url.searchParams.set("cursor", cursor); const page = await (await fetch(url, { headers })).json(); page.data.forEach((m) => console.log(m.name, m.status)); cursor = page.nextCursor; } while (cursor); // 3) Pause (resume with /resume) await fetch(`${api}/monitors/${monitor.id}/pause`, { method: "POST", headers });
import requests api = "https://rintup.com/api/v1" s = requests.Session() s.headers["Authorization"] = "Bearer rup_live_..." # 1) Create a monitor: only the type and the URL are required monitor = s.post(f"{api}/monitors", json={"type": "http", "http": {"url": "https://example.com"}}).json() # 2) List: { "data": [...], "nextCursor": "..." } params = {"limit": 50} while True: page = s.get(f"{api}/monitors", params=params).json() for m in page["data"]: print(m["name"], m["status"]) if not page["nextCursor"]: break params["cursor"] = page["nextCursor"] # 3) Pause (resume with /resume) s.post(f"{api}/monitors/{monitor['id']}/pause")
codex mcp add rintup --url https://mcp.rintup.com/mcp codex mcp login rintup # Sign in with RintUp in your browser and approve
Start small, grow as you go.
Every plan gets the same checking infrastructure and the same regions. What changes is the number of monitors, the check frequency and the team tools.
Free
Personal projects and your first site.
₺0 / month
Start for free- Uptime monitors
- SSL and domain tracking
- Email notifications
Pro
Small products with customers, and freelancers.
—
Try Pro- Uptime monitors
- Multi-region confirmation
- SMS and Slack notifications
- Public status page
TeamRecommended
Growing teams, agencies and DevOps.
—
Try the Team plan- Uptime monitors
- Server monitors
- All integrations
- On-call and team managementComing soon
- API and TerraformComing soon
Enterprise
Many teams, contracts and security reviews.
Get a quote
Talk to sales- Limits tailored to you
- Dedicated check regions
- Single sign-on (SSO)Coming soon
- SLA and invoice billing
- Priority support
Frequently asked questions
What does RintUp monitor?
Websites and APIs (HTTP/HTTPS, keyword), TCP ports, ping (ICMP) and DNS records, plus the expiry dates of SSL certificates and domains. When something breaks, it tells you on the channels you choose.
Do I need a credit card for the free plan?
No. You can start right away on the free plan; payment details are only requested when you move to a paid plan.
Where do the checks run from?
Checks run from our servers in several regions. The current list of regions and the outbound IP addresses to allow in your firewall are on the check regions page.
How do you avoid false alarms?
If one region sees an error, the check is immediately repeated from other regions. No alert goes out until the outage is confirmed, so a single network blip won’t wake you up at night.
Which channels can I get alerts on?
Email, SMS, Slack, Microsoft Teams, Discord, Telegram and webhooks. You can pick channels per monitor and organise people into groups.
Can I host my status page on my own domain?
Yes. You can publish your status page on your own domain, such as status.yourcompany.com; once the domain is verified its certificate is issued automatically.
How do you process my personal data?
We process personal data in line with Turkey’s data protection law (KVKK, Law No. 6698). The details are in our KVKK privacy notice.
Can I change or cancel my plan?
Yes, at any time from the billing settings in the dashboard. If you cancel, your plan keeps working until the end of the period you’ve paid for.
Be the first to know when your site goes down.
Type in an address and the first check starts right away.