Base URL: https://api.denpex.ai/v1/<tenant_id>/...
All endpoints require:
Authorization: Bearer <token>X-Denpex-Tenant: <tenant_id>- TLS 1.3 only.
Endpoints
Incidents
| Method | Path | Description |
|---|
| GET | /incidents/:id | Retrieve |
| POST | /incidents | Open a new (manual) incident |
| POST | /incidents/:id/approve | Approve a remediation |
| POST | /incidents/:id/dismiss | Mark as false positive |
| GET | /incidents/:id/graph | Get the evidence graph |
| GET | /incidents/:id/timeline | Get the timeline |
Diagnostics
| Method | Path | Description |
|---|
| GET | /diagnostics/:id/related | Similar incidents |
Remediation
| Method | Path | Description |
|---|
| POST | /remediation/:id/rollback | Roll back |
Audit
| Method | Path | Description |
|---|
| GET | /audit/verify | Run hash-chain verifier |
| GET | /audit/export | Stream to external SIEM |
RBAC
| Method | Path | Description |
|---|
| POST | /rbac/role | Create role |
| POST | /rbac/bind | Bind role to principal |
Tenants (Platform)
| Method | Path | Description |
|---|
| POST | /platform/tenants/:id | Create tenant |
Status Codes
- 200 OK — success.
- 201 Created.
- 204 No Content.
- 400 Bad Request — malformed input.
- 401 Unauthorized — missing/invalid token.
- 403 Forbidden — RBAC denial.
- 404 Not Found.
- 409 Conflict — state mismatch.
- 422 Unprocessable — semantic error.
- 429 Too Many Requests — rate limit hit;
Retry-After provided. - 500 Internal Server Error.
- 503 Service Unavailable.
Rate Limits
- Free: 5 RPS.
- Team: 50 RPS.
- Scale: 200 RPS.
- Growth: 1000 RPS.
Pagination
?limit=...&after=...
after is an opaque cursor returned in next_after from the prior response.
Idempotency
Idempotency-Key: <uuid> is supported on POST endpoints. The same key returns the same response for 24h.