Integrations · Traffic data
Any server (JSON)
Send request logs from any server, middleware or log shipper as JSON.
- Type
- Traffic data
- Setup time
- About 10 minutes
- Plans
- Every plan
Not on one of the CDNs or hosts above? Any server, middleware or log shipper can POST request logs to your site's ingest URL as a JSON array or newline-delimited JSON, gzipped if you like. It's the way to connect nginx, Apache, Caddy or your own app.
What you need
- A server, middleware or log shipper that can send HTTP POST requests
- A Ghost Agent Lab site, which gives you its private ingest URL
How to connect it
- In Ghost Agent Lab, add your site and open Settings → Data sources → Any server (JSON) to copy its ingest URL.
- Send each request as a JSON object with its time, method, host, path, status, user agent and client IP, in batches.
- Check it works with a test request like the one below, then point your log shipper at the same URL.
curl -X POST 'https://app.ghostagentlab.com/api/ingest/<your key>' \
-H 'content-type: application/json' \
-d '[{"timestamp":"2026-10-20T09:00:00Z","method":"GET","host":"example.com","path":"/pricing","status":200,"userAgent":"ChatGPT-User/1.0","ip":"203.0.113.10"}]'
Privacy: IP addresses are hashed on arrival and query strings are dropped. People are counted, never stored. Keep the ingest URL private; you can replace it in Settings at any time.
What you get
- The same agent traffic, verification and alerts as the native connectors
- Batches of records per request, so busy sites stay cheap to send
- A batch sent twice is stored once
Related reading
- Finding agent errors in your logs
- How to measure AI agent traffic
- Ghost Agent Lab vs doing it yourself
Try it on your site. Every plan starts with a 30-day trial. Start your trial, or take the two-minute tour first.