HTTP Monitor
The HTTP monitor sends an HTTP request to a URL and validates the response. It is the most commonly used monitor type.
Configuration Options
| Option | Description | Default |
|---|---|---|
| URL | The full URL to request | Required |
| Method | HTTP method (GET, POST, PUT, PATCH, DELETE, HEAD) | GET |
| Expected status | Status code(s) that count as success | 200-299 |
| Body contains | String that must be present in the response body | None |
| Headers | Custom request headers (key-value pairs) | None |
| Request body | Body to send with POST/PUT/PATCH requests | None |
| Timeout | Maximum time to wait for a response | 30s |
| Interval | How often to run the check | 60s |
| Regions | Which regions run the check | All |
Automatic SSL Certificate Check
HTTP monitors automatically check the SSL certificate of HTTPS endpoints. You will receive alerts when:
- The certificate is expiring soon (configurable threshold).
- The certificate has already expired.
- The certificate chain is invalid.
No extra configuration is needed -- this works out of the box for any HTTPS URL.
Automatic Domain Expiration Check
Kamustatus also monitors the domain registration expiration date and alerts you before your domain expires.
Examples
Basic website check
Monitor a website and verify it returns a 200 status:
curl -X POST https://app.kamustatus.com/api/monitors \
-H "x-api-key: km_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"name": "My Website",
"type": "http",
"url": "https://example.com",
"method": "GET",
"expectedStatus": 200,
"interval": 60
}'
API health check with body assertion
Check that an API returns a specific JSON value:
curl -X POST https://app.kamustatus.com/api/monitors \
-H "x-api-key: km_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"name": "API Health",
"type": "http",
"url": "https://api.example.com/health",
"method": "GET",
"expectedStatus": 200,
"bodyContains": "\"status\":\"ok\"",
"interval": 30
}'
POST request with custom headers
curl -X POST https://app.kamustatus.com/api/monitors \
-H "x-api-key: km_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"name": "Auth Endpoint",
"type": "http",
"url": "https://api.example.com/auth/check",
"method": "POST",
"headers": {
"Authorization": "Bearer test-token",
"Content-Type": "application/json"
},
"body": "{\"test\": true}",
"expectedStatus": 200,
"interval": 60
}'