CrossCheck API Documentation
Welcome to the CrossCheck API documentation. CrossCheck is a monitoring service that helps you ensure your critical services and scheduled tasks are running on time. Think of it as air traffic control for your infrastructure - we help your services land safely, every time.
What is CrossCheck?
CrossCheck is a developer-friendly monitoring platform designed for modern infrastructure. Whether you're monitoring cron jobs, n8n flows. scheduled tasks, background workers, or service endpoints, CrossCheck provides simple yet powerful APIs to keep track of everything and notify of missed checkin, silently failing services and uncomplete flows.
CrossCheck provides three types of monitoring:
- Passive Monitoring - Arrivals - Your services send heartbeat check-ins to CrossCheck on a schedule. If we don't hear from them within the expected window, we alert you. Perfect for cron jobs, scheduled tasks, and batch processes.
- Active Monitoring - Departures - CrossCheck proactively reaches out to your service endpoints at regular intervals to verify they're responding correctly. Ideal for APIs, web services, and health check endpoints.
- Quick Passive - Quick Flights - Streamlined passive monitoring for rapid setup when you need to get monitoring in place fast.
API Overview
The CrossCheck API allows you to programmatically manage your monitoring infrastructure: create and configure flights (monitors), send check-ins, manage alerts, and work with teams.
Base URL and Format
- Base URL:
https://crosscheck.app/api - Content type:
application/json - Responses: JSON unless noted
Authentication
Most endpoints require Token authentication. Send the token in the Authorization header:
Authorization: Token <your-token>
See the Authentication section for details on obtaining a token.
Error Responses
| Status | Meaning |
|---|---|
| 200 | OK |
| 201 | Created |
| 204 | No Content (e.g. after purge) |
| 400 | Bad Request (validation or body error) |
| 401 | Unauthorized (missing or invalid token) |
| 403 | Forbidden (e.g. IP not allowed, rate limit, or not owner) |
| 404 | Not Found |
| 429 | Too Many Requests (rate limited) |
| 500 | Internal Server Error |
Validation errors return 400 with a JSON object (e.g. {"field_name": ["Error message"]} or {"detail": "..."}). Other errors may return {"error": "message"}.
Rate Limits
All flights are rate limited at 10 requests per minute. This applies to:
- Check-in by API key: 10 requests per minute per flight
- Short URL check-in: 10 requests per minute per flight
- Test check-in: 10 requests per minute per flight
After using test_now, a short override window may allow more frequent check-ins. Responses may include Throttled detail when limits are exceeded.
Your account plan may affect available flight types and minimum check-in intervals.