API
API RESTful API for event ingestion, incident retrieval, hosted health checks, webhook management, token management, and more. Authenticated via project tokens, member tokens, or browser sessions.
https://api.debugbundle.com
Self-hosted deployments use your custom domain.
The API uses three authentication methods, each scoped differently:
Method Header / Mechanism Scope Use Case Project token Authorization: Bearer dbundle_proj_*Write-only ingestion SDKs sending events via POST /v1/events Member token Authorization: Bearer dbundle_mem_*Full read/manage CLI, API clients, MCP — incidents, webhooks, tokens, billing Browser session Cookie: dbundle_session=*Full read/manage Web dashboard (same permissions as member token)
Project tokens can only ingest events. They cannot read incidents, manage webhooks, or perform any other operation.
See Authentication for details.
Content-Type: application/json
Character encoding: UTF-8
All request bodies are JSON objects validated with Zod at the boundary
Unknown fields are rejected (strict schemas)
{
"incidents" : [ ... ],
"next_cursor" : "2025-01-15T10:30:00.000Z|inc_abc123"
}
{
"error" : "invalid_member_token"
}
Error codes are machine-readable string identifiers, not numeric codes.
POST /v1/events returns a different shape:
{
"accepted" : 8 ,
"rejected" : 2 ,
"errors" : [
{ "index" : 3 , "reason" : "invalid_event" },
{ "index" : 7 , "reason" : "rate_limited" }
]
}
List endpoints use cursor-based pagination:
Parameter Type Default Description limitinteger20Page size (1–100) cursorstring— Opaque cursor from next_cursor in previous response
When more results exist, the response includes next_cursor. When no more results exist, next_cursor is null.
# First page
curl -H "Authorization: Bearer dbundle_mem_xxx" \
"https://api.debugbundle.com/v1/incidents?limit=10"
# Next page
curl -H "Authorization: Bearer dbundle_mem_xxx" \
"https://api.debugbundle.com/v1/incidents?limit=10&cursor=2025-01-15T10:30:00.000Z|inc_abc123"
Event ingestion is rate-limited per project token. The limit depends on your plan tier:
Tier Rate Limit Free 60 events/min Solo 300 events/min Team 1,000 events/min
When rate-limited, events are rejected with reason "rate_limited" in the errors array. The SDK automatically handles backoff.
Management endpoints (incidents, webhooks, tokens) are not rate-limited in the current version.
Code Meaning 200Success 201Resource created 204Success, no content 400Invalid request (malformed body, invalid query parameters) 401Authentication failed (missing, invalid, or wrong token type) 403Insufficient permissions (e.g., member trying owner-only operation) 404Resource not found 409Conflict (e.g., duplicate email at signup) 429Rate limited 500Internal server error
Method Path Auth Description POST/v1/eventsProject token Ingest event batch
Method Path Auth Description GET/v1/incidentsMember token List incidents GET/v1/incidents/:idMember token Get incident detail POST/v1/incidents/:id/resolveMember token Resolve an incident POST/v1/incidents/resolveMember token Resolve incidents in bulk POST/v1/incidents/:id/reopenMember token Reopen an incident POST/v1/incidents/reopenMember token Reopen incidents in bulk GET/v1/incidents/:id/bundleMember token Retrieve debug bundle GET/v1/incidents/:id/reproductionMember token Retrieve reproduction artifacts GET/v1/incidents/:id/logsMember token List event logs
Method Path Auth Description GET/v1/servicesMember token List services for a project
Method Path Auth Description GET/v1/webhooksMember token List webhooks POST/v1/webhooksMember token Create webhook GET/v1/webhooks/:idMember token Get webhook PATCH/v1/webhooks/:idMember token Update webhook DELETE/v1/webhooks/:idMember token Delete webhook POST/v1/webhooks/:id/testMember token Send test delivery GET/v1/webhooks/:id/deliveriesMember token List deliveries POST/v1/webhooks/:id/deliveries/:did/retryMember token Retry delivery
Method Path Auth Description GET/v1/alertsMember token List alert rules POST/v1/alertsMember token Create alert rule PATCH/v1/alerts/:idMember token Update alert rule DELETE/v1/alerts/:idMember token Delete alert rule
Method Path Auth Description GET/v1/projects/:id/availability-checksBrowser session or member token List hosted health checks and plan limits POST/v1/projects/:id/availability-checksBrowser session or member token (owner/admin) Create a hosted health check GET/v1/projects/:id/availability-checks/:checkIdBrowser session or member token Get one hosted health check PATCH/v1/projects/:id/availability-checks/:checkIdBrowser session or member token (owner/admin) Update a hosted health check DELETE/v1/projects/:id/availability-checks/:checkIdBrowser session or member token (owner/admin) Delete a hosted health check POST/v1/projects/:id/availability-checks/testBrowser session or member token (owner/admin) Run a side-effect-free target test GET/v1/projects/:id/availability-checks/:checkId/resultsBrowser session or member token List recent raw execution results GET/v1/projects/:id/availability-checks/:checkId/daily-rollupsBrowser session or member token List retained per-day status history
See Availability Checks for behavior, tier limits,
SSRF guardrails, and CLI/MCP parity.
Method Path Auth Description GET/v1/projects/:id/tokensMember token List project tokens POST/v1/projects/:id/tokensMember token Create project token POST/v1/projects/:id/tokens/:tokenId/revokeMember token Revoke project token GET/v1/member/tokensMember token List member tokens POST/v1/member/tokensMember token Create member token POST/v1/member/tokens/:tokenId/revokeMember token Revoke member token
Method Path Auth Description GET/v1/projectsMember token List projects POST/v1/projectsMember token Create project GET/v1/projects/:idMember token Get project PATCH/v1/projects/:idMember token Update project DELETE/v1/projects/:idMember token Delete project
Method Path Auth Description GET/v1/projects/:id/membersMember token (owner/admin) List project members GET/v1/projects/:id/invitesMember token (owner/admin) List pending project invites POST/v1/projects/:id/inviteMember token (owner/admin) Invite a collaborator DELETE/v1/projects/:id/invites/:inviteIdMember token (owner/admin) Cancel a project invite PATCH/v1/projects/:id/members/:userIdMember token (owner/admin) Update project member role DELETE/v1/projects/:id/members/:userIdMember token (owner/admin) Remove a project member
Method Path Auth Description GET/v1/billingBrowser session or member token (owner) Get billing summary POST/v1/billing/trial/startBrowser session or member token (owner) Start an eligible no-card trial POST/v1/billing/capacity/increaseBrowser session or member token (owner) Add capacity units POST/v1/billing/capacity/scheduled-reductionBrowser session or member token (owner) Schedule capacity reduction DELETE/v1/billing/capacity/scheduled-reductionBrowser session or member token (owner) Cancel pending reduction
Method Path Auth Description GET/v1/sdk/configProject token Get SDK config, including capture policy, active capture rules, and active probe directives GET/v1/projects/:id/probesMember token List active probes for a project POST/v1/projects/:id/probes/activateMember token Activate a remote probe POST/v1/projects/:id/probes/deactivateMember token Deactivate a remote probe
Method Path Auth Description GET/v1/projects/:id/capture-policyMember token Get current capture policy for a project; plain members receive preview-only output PATCH/v1/projects/:id/capture-policyMember token (owner/admin) Set capture policy for a project
Method Path Auth Description GET/v1/projects/:id/capture-rulesMember token List project capture rules; plain members receive preview-only output POST/v1/projects/:id/capture-rulesMember token (owner/admin) Create a capture rule PATCH/v1/projects/:id/capture-rules/:ruleIdMember token (owner/admin) Update a capture rule DELETE/v1/projects/:id/capture-rules/:ruleIdMember token (owner/admin) Delete a capture rule POST/v1/incidents/:id/capture-rule-suggestionMember token Suggest capture rules from an incident bundle POST/v1/incidents/:id/capture-rulesMember token (owner/admin) Create a capture rule from an incident suggestion
Method Path Auth Description POST/v1/auth/request-codeNone Request a one-time email code POST/v1/auth/verify-codeNone Verify a one-time email code and create a browser session GET/v1/auth/sessionSession Resolve current browser session POST/v1/auth/logoutSession End session GET/v1/auth/github/startNone Start GitHub OAuth GET/v1/auth/github/callbackNone Complete GitHub OAuth POST/v1/auth/github/device/startNone Start GitHub device flow for CLI bootstrap POST/v1/auth/github/device/pollNone Poll GitHub device-flow status POST/v1/auth/github/device/claimNone Claim the issued member token after approval POST/v1/auth/github/token/exchangeNone Exchange an existing GitHub access token for a member token