Bu sayfanın Türkçesi de var. Türkçe oku →
Quickstart
By the end of this page, your first error will show up grouped in the dashboard.
1. Create a project
In the dashboard, go to Projects → New project. Creating a project generates two keys at once; the secret key is shown only once.
curl -X POST https://api.errorbird.com/api/v1/projects \
-H "Authorization: Bearer <access-token>" \
-H "content-type: application/json" \
-d '{"organizationId":"<org-id>","name":"Dashboard","allowedDomains":["dashboard.example.com"]}'
2. Send your first event
curl -X POST https://api.errorbird.com/api/v1/ingest \
-H "X-API-KEY: ebrd_secret_…" \
-H "content-type: application/json" \
-d '{
"@t": "2026-08-19T21:00:00Z",
"@l": "Error",
"message": "System.NullReferenceException: Cart not found",
"stackTrace": "at CartService.GetCart(Int32 userId) in /app/src/Services/CartService.cs:line 42",
"release": "1.4.2",
"environment": "production"
}'
The response is HTTP 202: the event has been queued. The ingest endpoint deliberately says "accepted", not "written" — waiting for the database write inside the request would tie your application to Errorbird's speed at busy moments.
3. Read it back
curl "https://api.errorbird.com/api/v1/projects/<project-id>/issues" \
-H "X-API-KEY: ebrd_pub_…"
If the same error arrives again with a different user id, a different GUID and a
different line number, no new Issue is created; the existing Issue's totalCount
goes up.
4. Add a monitor
curl -X POST https://api.errorbird.com/api/v1/monitors \
-H "Authorization: Bearer <access-token>" \
-H "content-type: application/json" \
-d '{"projectId":"<project-id>","type":"Http","name":"Main site","target":"https://example.com"}'
The Ssl and Domain types are added through the same endpoint; the certificate
expiry date and domain expiry are read automatically. Details:
Uptime, SSL and domains.
Next steps
- Connect your application's logging: Ingest formats
- Bring the data into your own dashboard: Using the SDKs
- Review the personal data scrubbing rules: PII scrubbing