Help
Troubleshooting
Common issues and how to resolve them. Enable debug: true on initSilker() for verbose logs while diagnosing.
No data in the dashboard
- Confirm
SILKER_API_KEYis set and starts withsk_. - Without a key, the SDK runs detection-only - it blocks attacks but sends no telemetry.
- Check that
cloudCommunicationis not disabled infeatures. - Make sure the right app's key is used - data is grouped per application.
initSilker({ debug: true });Invalid API key format warning
The SDK logs a warning if the key doesn't match sk_ followed by ≥ 32 characters. Copy the key again from the dashboard - telemetry is rejected by the platform if the key is wrong.
Wrong or missing client IP
Behind a proxy/CDN/load balancer, the socket IP is the proxy's. Keep trustProxy: true (default) so the SDK reads X-Forwarded-For. If your app is not behind a trusted proxy, set trustProxy: false - otherwise the header is spoofable and per-IP bans become unreliable.
Too many false positives
- Use a profile that matches your app:
saasis a balanced default. - Disable a noisy detection per app from the dashboard (applied via remote config, no redeploy).
- Behind a WAF/Cloudflare, set
disableLegacySecurity: trueto skip duplicate checks. - Inbound
ssrfDetectionis opt-in for this reason - enable it deliberately.
Middleware errors on Next.js / Edge
Don't use the Express middleware() on the Edge runtime. Use nextMiddleware() from @silker-ai/agent/next. The adapter is fail-open: on error it passes the request through rather than breaking your app. See Frameworks & deployment.
429 quota or rate-limit errors
RATE_LIMITED- you exceeded 120 ingest requests/min per key; honorRetry-After.QUOTA_EXCEEDED- monthly request limit hit; upgrade your plan.- Lower
telemetry.sampleRateto cut request-event volume (threats are unaffected).