Skip to main content
Having issues? Start here. This guide covers the most common problems and their solutions.

API Issues

”401 Unauthorized” errors

Symptom: API requests return 401 Unauthorized Solutions:
  1. Check your API key: Ensure X-API-Key header is set correctly
  2. Verify the key exists: Generate a new key in Dashboard → Settings → API
  3. Check for typos: Copy the key directly from dashboard, don’t type it
  4. Environment variables: Ensure KODO_API_KEY is exported in your shell

”429 Too Many Requests” errors

Symptom: API requests return 429 after many calls Solutions:
  1. Check rate limit headers in response:
  2. Implement exponential backoff in your code
  3. Cache responses where appropriate
  4. Upgrade plan for higher limits

Monitoring Issues

Uptime monitor showing false positives

Symptom: Monitor reports “down” when your service is actually working Causes & Solutions:
  1. Firewall blocking Kodo IPs
    • Whitelist Kodo’s monitoring IPs (see Dashboard → Settings → Monitoring)
    • Or use a different URL that’s publicly accessible
  2. Timeout too aggressive
  3. Geographic routing issues
    • Enable multi-region checks (requires failure from 2+ regions)
    • This prevents false positives from single-region network issues
  4. Rate limiting your endpoint
    • Ensure your service allows the check interval you’ve configured
    • Don’t rate-limit Kodo’s User-Agent

Heartbeat showing missed when job ran

Symptom: Cron job executed but heartbeat shows as missed Causes & Solutions:
  1. Heartbeat sent after expected interval
  2. Network timeout during heartbeat send
  3. Wrong timezone in cron configuration
    • Ensure cron server and Kodo use same timezone (or both UTC)

SSL monitor not detecting expiration

Symptom: Certificate expired but no alert received Solutions:
  1. Check alert threshold: Default is 30 days. If cert expires sooner, you won’t get alerts
  2. Verify notification channels: Ensure channel is enabled and tested
  3. Check spam folders: SSL alerts might be filtered

Notification Issues

Slack notifications not arriving

Symptom: Incidents created but no Slack message Solutions:
  1. Test the channel
  2. Check webhook URL
    • Ensure Slack webhook URL is still valid
    • Recreate webhook in Slack if organization changed settings
  3. Verify event filters
    • Check if channel is configured to receive the event type
    • Dashboard → Notifications → Edit Channel → Events
  4. Check Slack channel permissions
    • Ensure the webhook can post to the target channel

Webhooks failing

Symptom: Webhook shows “failed” in delivery history Check delivery logs:
Common issues:
  1. Timeout: Your endpoint takes too long
    • Kodo waits 30 seconds max
    • Return 200 immediately, process async
  2. SSL errors: Your endpoint has invalid certificate
    • Ensure valid SSL on your webhook URL
  3. Authentication failing: Your endpoint requires auth
    • Add auth headers to webhook config:
  4. Wrong response code: Your endpoint returns non-2xx
    • Kodo expects 200-299 for success
    • Check your server logs

Status Page Issues

Custom domain not working

Symptom: Custom domain shows error or wrong page Solutions:
  1. Verify DNS
  2. Wait for propagation: DNS can take up to 48 hours
  3. Check SSL provisioning
    • Dashboard → Settings → Custom Domain
    • SSL should show “Active”
    • If “Pending”, wait or click “Retry”
  4. Clear browser cache: Try incognito/private mode

Widget not loading

Symptom: Status widget shows blank or error Solutions:
  1. Check CSP headers
  2. Verify API key in widget config
  3. Check browser console for errors

Beacon/Error Tracking Issues

Errors not appearing in dashboard

Symptom: Beacon installed but no errors showing Solutions:
  1. Verify initialization
  2. Check for filtering
  3. Test with manual error
  4. Check environment: Development errors may be filtered by default

Source maps not resolving stack traces

Symptom: Stack traces show minified code, not original Solutions:
  1. Verify upload succeeded
  2. Check URL matches
    • Uploaded URL must exactly match error URL
    • Including protocol (https://) and path
  3. Ensure release matches
    • Beacon release must match sourcemap release

CLI Issues

”Command not found: kodo”

Solutions:
  1. Reinstall globally
  2. Check PATH
  3. Use npx

CLI not authenticated

Symptom: “Not authenticated” errors Solutions:

Still Stuck?

Community Support

Ask questions in our Discord

Email Support

Contact our support team
When reporting issues, include:
  • Error messages (full text)
  • API response bodies
  • CLI version (kodo --version)
  • Steps to reproduce