Everything you need to get started with CaneCron.
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.
After creating a cron monitor, you'll receive a unique ping URL like:
Add one line to the end of your cron script:
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")
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.
CaneCron offers a REST API to manage your monitors and read incident data programmatically. API access is included with the Pro plan.
Base URL
https://canecron.com/api/v1
Authentication
Generate an API key under Settings → API keys. The key is shown only once — store it securely. Pass it as a Bearer token on every request:
Authorization: Bearer YOUR_API_KEY
Rate limit
Up to 60 requests per minute per key. Exceeding this returns 429 Too Many Requests.
Endpoints
| GET | /monitors | List all your monitors |
| POST | /monitors | Create a monitor |
| GET | /monitors/{id} | Get a single monitor |
| PATCH | /monitors/{id} | Update a monitor |
| DELETE | /monitors/{id} | Delete a monitor |
| GET | /monitors/{id}/logs | Recent check logs (last 100) |
| GET | /incidents | List incidents (last 100) |
Example — list monitors
curl https://canecron.com/api/v1/monitors \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
Example response
{
"data": [
{
"id": 1,
"name": "My Website",
"url": "https://example.com",
"type": "http",
"interval": 5,
"status": "up",
"uptime_percentage": 99.95,
"last_checked_at": "2026-06-13T18:26:00+00:00",
"created_at": "2026-04-13T18:03:36+00:00"
}
]
}
Creating a monitor
curl -X POST https://canecron.com/api/v1/monitors \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"My API","url":"https://api.example.com","interval":5}'
Response codes
200 / 201 — success401 — missing or invalid API key403 — your plan doesn't include API access404 — resource not found, or not owned by you422 — validation error (check your input)429 — rate limit exceededAlerts 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 (Starter and up) — paste an incoming webhook URL in Settings → Alerts and your down/recovery alerts post straight to your chosen channel. Takes about a minute to set up.
SMS (Pro & Business — coming soon) — text alerts to your phone for critical incidents. Monthly message limits will be announced when this launches.
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.
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:
Docker alternative
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.
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.
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.
Every CaneCron account has a team. On the Business plan you can invite others to your team so they share access to the same monitors, incidents, and alerts.
Inviting members
Go to Settings → Team and click Invite members. Enter the person's email address and send the invite. They'll receive an email with a link to join your team. Invitations expire after 7 days, and you can cancel a pending invite at any time.
Roles
Owner — manages billing, invites and removes members, and controls the team. Each team has one owner.
Member — full access to the team's monitors, incidents, and alerts, but cannot manage billing or other members.
Accepting an invitation
Click the link in the invitation email. If you already have a CaneCron account, log in and you'll join the team. If not, create an account with the invited email address and you'll be added automatically.
Leaving or removing members
Members can leave a team at any time from the Team page. Owners can remove members. A team always keeps at least one owner — to leave a team you own, transfer ownership or delete the team first.
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.
CaneCron stores every event — checks, cron pings, incidents, and log entries — in UTC internally, but always displays them in your timezone so the times make sense at a glance.
Automatic detection
Your timezone is detected automatically from your browser. You don't need to configure anything to get started — times across the dashboard, logs, and incidents will already be shown in your local time.
Changing your timezone
To view or override it, go to Settings → Personal details → Timezone and pick any timezone from the list. This is useful if you travel, or if your team operates in a different region from where you happen to be browsing.
For example: if your website goes down at 2:30 PM your local time, that is exactly the time you'll see on the incident — not a server time in another zone. So when you're responding to an outage, you can trust the times without doing any conversion in your head.
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.
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 + Slack alerts, cron monitoring, private network monitoring, 30-day to 2-year history depending on plan, public status page.
Pro — €19/mo — for small teams
Everything in Starter, plus 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.
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.
Checks currently run from our European infrastructure (Helsinki, Finland). Multi-region checking is on the roadmap.
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.
Yes. CaneCron resolves both IPv4 (A records) and IPv6 (AAAA records). If your site is reachable on either, checks will work.
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.
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.
API access is included with the Pro plan. It lets you create, update, and delete monitors programmatically, and fetch incident and check data. See the API reference for full details.
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.
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).
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.