Skip to main content

Troubleshooting Routes

Common issues with routes and how to fix them. Follow this guide to diagnose and resolve route problems quickly.

Quick Diagnostics Checklist

Before diving into specific errors:

Common HTTP Status Codes

404 Not Found

Meaning: Route not found or doesn’t exist

Possible Causes

1. Route name mismatch
Route names are case-sensitive. 2. Route is disabled Check Routes page - route might be toggled OFF. Fix:
  1. Go to Routes → Find your route
  2. Toggle Enabled to ON
  3. Save
3. Wrong subdomain
Check your correct subdomain in dashboard. 4. Route deleted If route was recently deleted, recreate it.

Debug Steps

401 Unauthorized

Meaning: Authentication failed

Possible Causes

1. Invalid API key
Fixes:
  • Copy key again from dashboard
  • Ensure no extra spaces or line breaks
  • Verify key hasn’t been deleted
  • Check key hasn’t expired
2. Missing API key If route requires API key but none provided:
3. Using wrong authentication method Route configured for IP auth but API key provided (or vice versa). Fix:
  1. Check route settings
  2. Match authentication method
  3. Either provide API key OR ensure IP is whitelisted

Debug Steps

403 Forbidden

Meaning: IP not authorized or permission denied

Possible Causes

1. IP not whitelisted Your IP address isn’t in the client list. Fix:
  1. Navigate to ClientsAdd Client
  2. Add your IP address
  3. Go to route → Clients tab
  4. Assign client to appropriate environment
Quick test: Disable IP requirement temporarily:
  1. Edit route
  2. Toggle Requires Clients to OFF
  3. Test request
  4. Re-enable after testing
2. Client not assigned to route Client exists but isn’t assigned to this route/environment. Fix:
  1. Go to route → Clients tab
  2. Add your client to the environment
  3. Save
3. Rate limit exceeded You’ve hit the rate limit. Response:
Fix:
  • Wait for rate limit to reset
  • Request limit increase
  • Optimize request frequency

Debug Steps

500 Internal Server Error

Meaning: KnoxCall encountered an error processing your request

Possible Causes

1. Secret not found Route tries to inject secret that doesn’t exist:
Fix:
  1. Navigate to Secrets
  2. Create the missing secret
  3. Update route configuration
2. Invalid secret format Secret exists but has invalid format for use case. Fix:
  1. Check secret value format
  2. Update if needed
  3. Test route again
3. Configuration error Invalid JSON in header/body injection. Fix:
  1. Edit route
  2. Check JSON syntax in Header/Body Injection
  3. Use online JSON validator
  4. Save with valid JSON

Debug Steps

502 Bad Gateway

Meaning: Backend server is unreachable or returned invalid response

Possible Causes

1. Backend is down Your backend server isn’t running. Test:
Fix:
  • Start your backend server
  • Verify backend is running
  • Check backend logs
2. Wrong backend URL Target URL in route settings is incorrect. Fix:
  1. Edit route
  2. Check Target Base URL
  3. Verify URL is correct
  4. Include protocol: https://
  5. Test URL directly: curl https://your-backend.com
3. Backend not accessible from internet Backend is running but not reachable from KnoxCall. Common scenarios:
  • Backend running on localhost
  • Backend behind firewall
  • Backend only accessible via VPN
  • Private IP address used
Fix:
  • Deploy backend with public IP
  • Open firewall rules for KnoxCall IPs
  • Use VPN egress feature (Enterprise)
4. SSL/TLS issues Backend has invalid SSL certificate. Errors:
  • Certificate expired
  • Self-signed certificate
  • Certificate domain mismatch
Fix:
  • Renew SSL certificate
  • Use valid CA-signed certificate
  • For testing: Disable SSL verification in route settings (not recommended for production)
5. Backend returning non-HTTP response Backend is running but returning invalid HTTP. Fix:
  • Check backend logs
  • Ensure backend returns proper HTTP response
  • Verify headers are correctly formatted

Debug Steps

504 Gateway Timeout

Meaning: Backend took too long to respond

Possible Causes

1. Backend is slow Backend processing time exceeds timeout. Default timeout: 30 seconds Fix:
  1. Edit route
  2. Increase Timeout setting
  3. Recommended max: 120 seconds
Long-term fix:
  • Optimize backend performance
  • Add caching
  • Use async processing for long operations
2. Backend is overloaded Too many requests overwhelming backend. Symptoms:
  • Slow response times
  • High CPU/memory usage
  • Database connection pool exhausted
Fix:
  • Scale backend (add more instances)
  • Optimize database queries
  • Add caching layer
  • Enable rate limiting
3. Database timeout Backend waiting for slow database query. Fix:
  • Optimize SQL queries
  • Add database indexes
  • Increase database resources
  • Implement query timeout
4. Network latency High network latency between KnoxCall and backend. Fix:
  • Use closer region (Multi-region feature)
  • Optimize network path
  • Consider CDN for static content

Debug Steps

Authentication Issues

”Invalid signature” errors

Using request signing? Causes:
  • Wrong signing secret
  • Message format mismatch
  • Timestamp too old/new
  • Clock skew between client and server
Fix:

OAuth2 token expired

Error: 401 Unauthorized from backend Causes:
  • Access token expired
  • Refresh token revoked
  • OAuth2 secret needs reauthorization
Fix:
  1. Go to Secrets → Select OAuth2 secret
  2. Check token status
  3. If expired, click Reauthorize
  4. Complete OAuth2 flow again

Connection Issues

”Connection refused”

Causes:
  • Backend not running
  • Wrong port number
  • Firewall blocking connections
Fix:

“DNS resolution failed”

Causes:
  • Domain doesn’t exist
  • DNS not configured
  • DNS propagation not complete
Fix:

“SSL handshake failed”

Causes:
  • Expired certificate
  • Self-signed certificate
  • Certificate hostname mismatch
Fix:

Performance Issues

High latency

Symptoms:
  • Requests taking longer than expected
  • Inconsistent response times
Diagnose:
Check in logs:
  • knoxcall_time: Time spent in KnoxCall
  • backend_time: Time backend took to respond
  • total_time: Total request time
Fix:
  • If backend_time is high: Optimize backend
  • If network_time is high: Use closer region
  • If knoxcall_time is high: Contact support

Intermittent failures

Symptoms:
  • Some requests succeed, others fail
  • No consistent pattern
Possible causes:
  • Backend load balancer issues
  • Database connection pool exhausted
  • Memory leaks in backend
  • Network instability
Debug:

Testing & Debugging Tools

Use API Logs

Best debugging tool:
  1. Go to LogsAPI Logs
  2. Find your request
  3. Expand to see:
    • Full request headers/body
    • Full response headers/body
    • Error messages
    • Latency breakdown

Test in Dashboard

Use built-in testing tool:
  1. Go to Routes → Select route
  2. Click Test Route
  3. Configure request
  4. See detailed response

Use verbose curl

The -v flag shows:
  • DNS resolution
  • Connection establishment
  • SSL handshake
  • Request headers sent
  • Response headers received

Check Health Endpoint

Test backend directly:

Getting Help

If you’re still stuck:

1. Gather Information

Before contacting support:

2. Check API Logs

Find the failing request:
  1. Go to Logs → API Logs
  2. Copy Request ID
  3. Include in support ticket

3. Export Configuration

Export route configuration:
  1. Go to Routes → Select route
  2. Click Export
  3. Attach to support ticket

4. Contact Support

  • Email: support@knoxcall.com
  • Chat: Click support icon in dashboard
  • Phone: Available for Enterprise customers

Prevention Tips

1. Enable Health Checks

Monitor route health:
  1. Edit route
  2. Enable Health Checks
  3. Set check interval: 60s
  4. Set alert threshold

2. Set Up Alerts

Get notified of issues:

3. Use Staging Environment

Test changes before production:

4. Monitor Regularly

Check dashboard weekly:
  • Success rates
  • Latency trends
  • Error patterns
  • Usage statistics

5. Keep Backend Logs

Maintain backend logs for debugging:
  • HTTP request/response
  • Processing time
  • Error messages
  • Stack traces

Next Steps

API Logs

View detailed request logs

Alerts

Set up error alerts

Testing Routes

Learn route testing

Support

Get help from support

📊 Statistics

  • Level: beginner to advanced
  • Time: Reference guide

🏷️ Tags

troubleshooting, debugging, errors, fixes, support