Skip to content

Incidents

Manage security incidents with the de.iterate SDK.

Overview

The incidents resource provides operations for managing security incidents, from initial reporting through resolution.

List Incidents

typescript
const incidents = await client.incidents.list();

console.log(`Found ${incidents.length} incidents`);
for (const incident of incidents) {
  console.log(`  • ${incident.summary} (${incident.status})`);
}

Get Incident

typescript
const incident = await client.incidents.get('INC-001');

console.log(incident.summary);
console.log(incident.severity);
console.log(incident.status);

Create Incident

typescript
const incident = await client.incidents.create({
  summary: 'Suspected phishing attack',
  description: 'Multiple employees received suspicious emails',
  owner: 'security-team@company.com',
  severity: 'high',
  status: 'investigating',
  reportedDate: new Date().toISOString(),
});

console.log(`Created incident: ${incident.id}`);

CreateIncidentInput

FieldTypeRequiredDescription
summarystringBrief incident summary
descriptionstringDetailed description
ownerstringIncident owner
statusstringCurrent status
severitystringSeverity level
reportedDatestringWhen reported
resolvedDatestring | nullWhen resolved
auditIdstring | nullRelated audit

Update Incident

typescript
const updated = await client.incidents.update('INC-001', {
  status: 'resolved',
  resolvedDate: new Date().toISOString(),
});

Delete Incident

typescript
await client.incidents.delete('INC-001');

Incident Type

typescript
interface Incident {
  id: string;
  summary: string;
  description?: string;
  owner?: string;
  status?: string;
  severity?: string;
  reportedDate?: string;
  resolvedDate?: string | null;
  auditId?: string | null;
  tenantId?: string;
  createdBy?: string;
  createdAt?: string;
  updatedAt?: string;
}

Examples

Open Incidents Report

typescript
async function openIncidentsReport() {
  const incidents = await client.incidents.list();
  const open = incidents.filter(i => i.status !== 'resolved' && i.status !== 'closed');
  
  console.log(`Open Incidents: ${open.length}`);
  for (const incident of open) {
    console.log(`  • [${incident.severity}] ${incident.summary}`);
    console.log(`    Owner: ${incident.owner || 'Unassigned'}`);
  }
}

Next Steps

Released under the MIT License.