Documentation
Get started in under 2 minutes.
1. Install the tracker
Add this script tag to your website's <head>. Replace the data-key with your public ingest key (find it in Dashboard → Settings).
<script src="https://eurobug.eu/api/v1/eb" data-key="eb_pub_your_key_here" async ></script>
The script is under 2kb gzipped, loads asynchronously, and has minimal impact on page load performance. It automatically captures window.onerror and unhandledrejection events.
2. Optional: specify a release
Add data-release to tag errors with your deployment version. Required for source map matching.
<script src="https://eurobug.eu/api/v1/eb" data-key="eb_pub_your_key_here" data-release="1.2.0" async ></script>
3. Upload source maps (optional)
Upload source maps via the API to translate minified stack traces back to your original code. Available on Startup and Agency plans.
# Recommended: CI token auth (generate in Dashboard → Settings)
curl -X POST https://eurobug.eu/api/projects/YOUR_PROJECT_ID/sourcemaps \
-H "Content-Type: application/json" \
-H "Authorization: Bearer eb_ci_YOUR_TOKEN" \
-d '{
"release": "1.2.0",
"filename": "main.js.map",
"content": "{ ... source map JSON ... }",
"artifactPath": "assets/main.js"
}'A standalone upload script is included: node scripts/upload-sourcemaps.js --project PROJECT_ID --release 1.0.0 --dir ./dist --token YOUR_CI_TOKEN
4. Ingest API reference
The tracker script handles this automatically, but if you want to send errors programmatically:
POST https://eurobug.eu/api/ingest
Content-Type: application/json
{
"publicKey": "eb_pub_your_key_here",
"message": "TypeError: Cannot read property 'length' of undefined",
"stack": "TypeError: Cannot read property ...\n at foo (main.js:42:13)",
"url": "https://yoursite.com/checkout",
"browser": "Chrome/120.0.0.0",
"os": "macOS",
"release": "1.2.0"
}Need help?
Contact us at hello@eurobug.eu.