Documentation

Everything you need to get started with CaneCron.

1 Quick start

Create an account — click "Start free" above. No credit card needed.

Add a website monitor — from the dashboard, click "+ Add monitor", select "Website / API", enter your URL, and choose a check interval.

Add a cron monitor — select "Cron job" instead. You'll get a unique ping URL. Add it to the end of your cron script.

2 Cron job monitoring

After creating a cron monitor, you'll receive a unique ping URL like:

https://canecron.com/ping/your-unique-token

Add one line to the end of your cron script:

curl -fsS --retry 3 https://canecron.com/ping/your-unique-token

If your script runs successfully, it pings CaneCron. If the ping doesn't arrive on time — you get an alert.

Languages other than bash:

Python: requests.get("https://canecron.com/ping/TOKEN")

Node.js: fetch("https://canecron.com/ping/TOKEN")

PHP: file_get_contents("https://canecron.com/ping/TOKEN")

3 Website & API monitoring

CaneCron checks your URL at the interval you choose (1, 5, 10, 30, or 60 minutes).

UP — your site responds with an HTTP 2xx status code.

DOWN — your site returns an error, times out, or doesn't respond.

When a monitor goes from UP to DOWN, you'll receive an instant email alert.

4 Alerts

Alerts are sent to your account email address when a monitor goes from UP to DOWN. You'll also receive a recovery alert when the monitor returns to UP.

Email (all plans) — sent to your account email by default. You can change the alert email in Settings → Alerts.

Slack (Pro & Business) — connect your Slack workspace and route alerts to a channel. Setup takes about 30 seconds via Slack's OAuth flow.

SMS (Pro & Business) — text messages to your phone for critical incidents. Includes 100 messages/month on Pro, 500 on Business.

Include error details — turn this on in the Alerts page to get the HTTP status code, response time, and error message inside the alert email. Useful for triaging quickly without opening the dashboard.

5 Private network monitoring

Monitor internal services that aren't publicly accessible — admin panels, staging servers, Docker containers, local APIs. A lightweight agent runs inside your network and reports back to CaneCron.

How it works

Your agent checks internal URLs every few minutes and sends the results to CaneCron over HTTPS. The connection is always outbound from your network — CaneCron never needs inbound access. Authentication uses two keys: an API key (identifies the monitor) and a secret key (proves identity).

Setup

1. Create a "Private network" monitor in the dashboard

2. Save both keys (API key + secret key) — the secret is shown only once

3. Run the agent script on your private server:

#!/bin/bash API_KEY="cck_your_api_key_here" SECRET="ccs_your_secret_key_here" URLS="https://admin.example.com,http://localhost:8080" INTERVAL=300 # seconds (5 minutes) while true; do CHECKS="[" FIRST=true IFS=',' read -ra URL_ARRAY <<< "$URLS" for url in "${URL_ARRAY[@]}"; do url=$(echo "$url" | xargs) CODE=$(curl -s -o /dev/null -w "%{http_code}" --max-time 10 -L -k "$url" 2>/dev/null || echo "000") [ "$CODE" -ge 200 ] 2>/dev/null && [ "$CODE" -lt 400 ] 2>/dev/null && ST="up" || ST="down" [ "$FIRST" = true ] && FIRST=false || CHECKS="$CHECKS," CHECKS="$CHECKS{\"url\":\"$url\",\"status\":\"$ST\",\"code\":$CODE}" done CHECKS="$CHECKS]" curl -s -X POST "https://canecron.com/api/agent/report" \ -H "Content-Type: application/json" \ -d "{\"api_key\":\"$API_KEY\",\"secret\":\"$SECRET\",\"checks\":$CHECKS}" sleep $INTERVAL done

Docker alternative

docker run -d --restart=always \ -e CANECRON_API_KEY="cck_your_api_key_here" \ -e CANECRON_SECRET="ccs_your_secret_key_here" \ -e CANECRON_URLS="https://admin.example.com,http://localhost:8080" \ -e CANECRON_INTERVAL="5" \ --name canecron-agent \ canecron/agent

Silence detection

If the agent stops reporting entirely (server crash, Docker down, network failure), CaneCron detects the silence and sends an alert. This means even if your entire private server goes offline, you'll know.

6 Public status page

Every paid account gets a public status page you can share with customers. It shows the current status and 90-day uptime history for all monitors you choose to make public.

Your URL: canecron.com/status/your-handle

How to set up — go to Settings → Status page, pick which monitors to include, choose a public handle, and you're live. Share the link with customers, embed it in your help center, or link from your footer.

White-label (Business plan) — remove the "Powered by CaneCron" footer and use a custom domain like status.yourcompany.com via CNAME.

7 Desktop app

CaneCron has a native desktop app for macOS, Windows, and Linux. Same dashboard you use in the browser, but in its own window — useful when you want monitoring always visible without losing it among 30 browser tabs.

Download — head to canecron.com/download and pick your platform.

The app stays signed in across sessions and runs from your system tray on Windows/Linux or menu bar on macOS.

8 Account & security

Two-factor authentication (2FA) — go to Settings → Security and enable two-step authentication. Works with any TOTP app: Google Authenticator, Microsoft Authenticator, Authy, 1Password, Bitwarden. Scan the QR code, enter the 6-digit code to confirm, and 2FA is on. You'll be asked for a code every time you sign in.

Changing your password — Settings → Personal details → enter your current password and a new one. You'll stay signed in on this device; other sessions get logged out.

Sign-in history — Settings → Security → Security history shows every login attempt, device, and IP. Export to CSV if you need it for compliance or audits.

Deleting your account — Settings → Personal details → bottom of the page. Permanent — monitors, history, and billing details are removed. If you have an active subscription, cancel it first or you'll keep being billed until the period ends.

9 Subscription & billing

Changing plans — Billing → Plan → Change plan. Pick a new plan in the slideover. Upgrades take effect immediately; downgrades take effect at the end of the current billing period so you don't lose paid time.

Cancelling — Billing → Plan → Cancel subscription. You keep full access until the end of your current billing period (e.g. cancel on the 15th of a monthly cycle, keep access until the 30th). After that, your account drops to the Free plan automatically. No data is lost.

Payment methods — Billing → Plan → Manage payment method opens Stripe's secure portal where you can update your card, view past charges, and download receipts.

Invoices — Billing → Invoices lists every invoice with a PDF download link. Invoices are emailed automatically after each successful charge.

VAT / Tax ID for EU businesses — Billing → Billing details lets you add your company VAT ID. For valid EU B2B VAT numbers, invoices use reverse-charge VAT (0% VAT shown, with a note that the customer accounts for VAT in their own country).

Refunds — refunds are handled case by case. If you accidentally subscribed or weren't satisfied, email us within 14 days and we'll sort it out.

10 Plans & limits

Free — for personal projects

10 monitors, 5-minute checks, email alerts, cron monitoring, private network monitoring.


Starter — €7/mo — for freelancers & developers

Unlimited monitors, 1-minute checks, email alerts, cron monitoring, private network monitoring, 90-day history, public status page.


Pro — €19/mo — for small teams

Everything in Starter, plus Slack notifications, SMS alerts, team members (3 seats), API access, 1-year history.


Business — €49/mo — for growing companies

Everything in Pro, plus unlimited team members, priority support, custom check intervals, white-label status page, 2-year history.

11 Frequently asked questions

How quickly do I get an alert when something goes down?

Email alerts are sent within seconds of CaneCron detecting a failure. The actual time depends on your check interval — if you're on the Free plan with 5-minute checks, the worst case is ~5 minutes between the outage starting and the alert. On Starter (1-minute checks), it's under 60 seconds.

Where are your check servers located?

Checks currently run from our European infrastructure (Helsinki, Finland). Multi-region checking is on the roadmap.

What happens to my monitors if I cancel?

You keep full access until the end of your billing period. After that, your account drops to Free — your monitors stay (up to the 10-monitor Free limit), but advanced features (1-minute checks, longer history, status page) revert to Free tier limits. No data is deleted.

Do you support IPv6?

Yes. CaneCron resolves both IPv4 (A records) and IPv6 (AAAA records). If your site is reachable on either, checks will work.

Can I export my data?

Yes. Security history exports to CSV from Settings → Security. Monitor logs are exportable from each monitor's logs page. A full account export is on the roadmap — email us if you need one now and we'll send a dump.

Do you have a free trial for paid plans?

The Free plan IS the trial — it's free forever with 10 monitors and email alerts. When you need 1-minute checks, unlimited monitors, or a status page, you can upgrade in one click. No surprises, no time-limited trial.

Is there an API?

API access is included with the Pro plan (coming soon). It lets you create, update, and delete monitors programmatically, and fetch incident and check data.

What if CaneCron itself goes down?

Fair question. We monitor our own infrastructure aggressively and publish our uptime publicly. We're also working on independent dead-man's-switch alerts that fire if our check infrastructure itself stops working, so you'd hear about any outage on our side too.

How is CaneCron different from UptimeRobot or Cronitor?

UptimeRobot does website monitoring but not cron jobs. Cronitor does cron monitoring but starts at $49/month. CaneCron does both in one tool at €7/month, plus private network monitoring (a feature competitors charge $49+ for or don't offer at all).

Can I run CaneCron self-hosted?

Not currently. We focus on the hosted version so we can ship features fast. If you need self-hosted for compliance reasons, get in touch — for the right use case we'd consider it.

Question not answered here? Email us and we'll add it.