Timeline API Reference

FieldValue
Source spectimeline/openapi/v1.json
OpenAPI version3.1.1
API version1.0.0
Operations40
Path filterAll paths

Operations

DELETE /api/v1/audit/actors/{actorId}/pii

GDPR right-to-erasure. Redacts actor_email, actor_ip, actor_user_agent (and actor_name for personal/sensitive rows) for every unified audit event owned by this actor in the current tenant. Returns the count of redacted rows. The hash chain remains intact.

PropertyValue
Operation IDRedactAuditActorPii
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
actorIdpathyes

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/audit/anomalies

Get anomaly alerts from unified audit events.

PropertyValue
Operation IDGetUnifiedAuditAnomalies
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
acknowledgedqueryno
limitqueryno

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/audit/anomalies/_pending-dispatch

Get pending, unacknowledged anomaly alerts for Notify dispatch fan-out.

PropertyValue
Operation IDGetPendingUnifiedAuditAnomalyDispatch
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
limitqueryno

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/audit/anomalies/rules

List tenant-scoped anomaly rule configuration.

PropertyValue
Operation IDGetUnifiedAuditAnomalyRules
TagsUnified Audit
AuthNot declared
Request body-

Responses:

StatusDescriptionContent types
200OK-

POST /api/v1/audit/anomalies/rules

Create tenant-scoped anomaly rule configuration.

PropertyValue
Operation IDCreateUnifiedAuditAnomalyRule
TagsUnified Audit
AuthNot declared
Request bodyapplication/json

Responses:

StatusDescriptionContent types
200OK-

PUT /api/v1/audit/anomalies/rules/{id}

Update tenant-scoped anomaly rule configuration.

PropertyValue
Operation IDUpdateUnifiedAuditAnomalyRule
TagsUnified Audit
AuthNot declared
Request bodyapplication/json

Parameters:

NameInRequiredDescription
idpathyes

Responses:

StatusDescriptionContent types
200OK-

DELETE /api/v1/audit/anomalies/rules/{id}

Delete tenant-scoped anomaly rule configuration.

PropertyValue
Operation IDDeleteUnifiedAuditAnomalyRule
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
idpathyes

Responses:

StatusDescriptionContent types
200OK-

POST /api/v1/audit/anomalies/{alertId}/acknowledge

Acknowledge an anomaly alert.

PropertyValue
Operation IDAcknowledgeUnifiedAuditAnomaly
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
alertIdpathyes

Responses:

StatusDescriptionContent types
200OK-

POST /api/v1/audit/anomalies/{alertId}/dispatch-failed

Mark a pending anomaly alert as failed after Notify dispatcher exhausts retries.

PropertyValue
Operation IDMarkUnifiedAuditAnomalyDispatchFailed
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
alertIdpathyes

Responses:

StatusDescriptionContent types
200OK-

POST /api/v1/audit/anomalies/{alertId}/dispatched

Mark a pending anomaly alert dispatched after Notify fan-out succeeds.

PropertyValue
Operation IDMarkUnifiedAuditAnomalyDispatched
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
alertIdpathyes

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/audit/chain/verify

Verify the hash chain integrity for a tenant’s audit events.

PropertyValue
Operation IDVerifyUnifiedAuditChain
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
fromSequencequeryno
tenantIdqueryyes
toSequencequeryno

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/audit/correlations

Get unified audit correlation clusters.

PropertyValue
Operation IDGetUnifiedAuditCorrelations
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
endDatequeryno
limitqueryno
startDatequeryno

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/audit/correlations/{correlationId}

Get a unified audit correlation cluster by correlation ID.

PropertyValue
Operation IDGetUnifiedAuditCorrelationById
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
correlationIdpathyes

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/audit/events

Get unified audit events with filtering and cursor pagination.

PropertyValue
Operation IDGetUnifiedAuditEvents
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
Actionsqueryno
ActorEmailqueryno
ActorIdqueryno
ActorIpqueryno
ActorNamequeryno
CorrelationIdqueryno
Cursorqueryno
EndDatequeryno
Limitqueryno
Modulesqueryno
ResourceIdqueryno
ResourceNamequeryno
ResourceTypequeryno
Searchqueryno
Severitiesqueryno
StartDatequeryno
Tagsqueryno
TenantIdqueryno

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/audit/events/{eventId}

Get a single unified audit event by ID.

PropertyValue
Operation IDGetUnifiedAuditEventById
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
eventIdpathyes

Responses:

StatusDescriptionContent types
200OK-

POST /api/v1/audit/export

Request a unified audit export.

PropertyValue
Operation IDRequestUnifiedAuditExport
TagsUnified Audit
AuthNot declared
Request bodyapplication/json

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/audit/export/{exportId}

Get unified audit export status.

PropertyValue
Operation IDGetUnifiedAuditExportStatus
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
exportIdpathyes

Responses:

StatusDescriptionContent types
200OK-

POST /api/v1/audit/ingest

Ingest a single audit event from a service. Returns 202 Accepted.

PropertyValue
Operation IDIngestUnifiedAuditEvent
TagsUnified Audit Ingest
AuthNot declared
Request bodyapplication/json

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/audit/retention-policies

Returns the effective retention window in days per classification (none, personal, sensitive, restricted) for the caller’s tenant, with the platform-default fallback applied.

PropertyValue
Operation IDGetUnifiedAuditRetentionPolicies
TagsUnified Audit
AuthNot declared
Request body-

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/audit/stats

Get unified audit statistics summary.

PropertyValue
Operation IDGetUnifiedAuditStats
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
endDatequeryno
startDatequeryno

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/audit/timeline/search

Search unified audit timeline entries.

PropertyValue
Operation IDSearchUnifiedAuditTimeline
TagsUnified Audit
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
endDatequeryno
limitqueryno
qqueryno
startDatequeryno

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/buildinfo

API alias for /buildinfo.json (same payload).

PropertyValue
Operation IDStellaOpsBuildInfoApi
TagsStellaOps.Timeline.WebService
AuthNot declared
Request body-

Responses:

StatusDescriptionContent types
200OK-

GET /api/v1/timeline

List timeline events

Returns timeline events filtered by tenant and optional query parameters.

PropertyValue
Operation IDtimeline_api_v1_query
Tagstimeline-indexer
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
afterqueryno
correlationIdqueryno
eventTypequeryno
limitqueryno
severityqueryno
sincequeryno
sourcequeryno
traceIdqueryno

Responses:

StatusDescriptionContent types
200OKapplication/json
401Unauthorized-

POST /api/v1/timeline/events

Ingest timeline event

Validates and persists a TimelineEventEnvelope through the same ITimelineIngestionService the message-bus worker uses. The envelope tenant must match the authenticated tenant. Idempotent on (tenantId, eventId).

PropertyValue
Operation IDtimeline_api_v1_ingest_event
Tagstimeline-indexer
Authtimeline:write
Request bodyTimelineEventEnvelope (application/json)

Responses:

StatusDescriptionContent types
202Accepted — event inserted ({ "status": "accepted", "eventId": … })application/json
200Duplicate — event already present ({ "status": "duplicate", "eventId": … })application/json
400Missing body or a required field (eventId, eventType, source, rawPayloadJson)application/json
403Body tenant does not match the authenticated tenantapplication/json
401Unauthorized-

GET /api/v1/timeline/hlc/export/{exportId}

Get the status of an export operation

PropertyValue
Operation IDGetExportStatus
TagsExport
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
exportIdpathyes

Responses:

StatusDescriptionContent types
200OKapplication/json
404Not Found-

GET /api/v1/timeline/hlc/export/{exportId}/download

Download the completed export bundle

PropertyValue
Operation IDDownloadExport
TagsExport
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
exportIdpathyes

Responses:

StatusDescriptionContent types
404Not Found-

GET /api/v1/timeline/hlc/replay/{replayId}

Get the status of a replay operation

PropertyValue
Operation IDGetReplayStatus
TagsReplay
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
replayIdpathyes

Responses:

StatusDescriptionContent types
200OKapplication/json
404Not Found-

DELETE /api/v1/timeline/hlc/replay/{replayId}

Delete/cancel a replay operation

PropertyValue
Operation IDDeleteReplay
TagsReplay
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
replayIdpathyes

Responses:

StatusDescriptionContent types
200OK-
404Not Found-

POST /api/v1/timeline/hlc/replay/{replayId}/cancel

Cancel an in-progress replay operation

PropertyValue
Operation IDCancelReplay
TagsReplay
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
replayIdpathyes

Responses:

StatusDescriptionContent types
200OK-
404Not Found-

GET /api/v1/timeline/hlc/{correlationId}

Get events for a correlation ID, ordered by HLC timestamp

PropertyValue
Operation IDGetTimeline
TagsTimeline HLC
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
correlationIdpathyes
fromHlcqueryno
kindsqueryno
limitqueryno
offsetqueryno
servicesqueryno
toHlcqueryno

Responses:

StatusDescriptionContent types
200OKapplication/json
400Bad Requestapplication/json
404Not Found-

GET /api/v1/timeline/hlc/{correlationId}/critical-path

Get the critical path (longest latency stages) for a correlation

PropertyValue
Operation IDGetCriticalPath
TagsTimeline HLC
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
correlationIdpathyes

Responses:

StatusDescriptionContent types
200OKapplication/json
404Not Found-

POST /api/v1/timeline/hlc/{correlationId}/export

Export timeline events as NDJSON bundle with optional DSSE signing

PropertyValue
Operation IDExportTimeline
TagsExport
AuthNot declared
Request bodyapplication/json

Parameters:

NameInRequiredDescription
correlationIdpathyes

Responses:

StatusDescriptionContent types
202Acceptedapplication/json
400Bad Requestapplication/json

POST /api/v1/timeline/hlc/{correlationId}/replay

Initiate deterministic replay for a correlation ID

PropertyValue
Operation IDInitiateReplay
TagsReplay
AuthNot declared
Request bodyapplication/json

Parameters:

NameInRequiredDescription
correlationIdpathyes

Responses:

StatusDescriptionContent types
202Acceptedapplication/json
400Bad Requestapplication/json

GET /api/v1/timeline/{eventId}

Get timeline event

Returns a single timeline event by event identifier for the current tenant.

PropertyValue
Operation IDtimeline_api_v1_get_by_id
Tagstimeline-indexer
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
eventIdpathyes

Responses:

StatusDescriptionContent types
200OKapplication/json
401Unauthorized-
404Not Found-

GET /api/v1/timeline/{eventId}/evidence

Get event evidence

Returns evidence linkage for a timeline event, including bundle and attestation references.

PropertyValue
Operation IDtimeline_api_v1_get_evidence
Tagstimeline-indexer
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
eventIdpathyes

Responses:

StatusDescriptionContent types
200OKapplication/json
401Unauthorized-
404Not Found-

GET /buildinfo.json

Image build provenance (module, gitSha, gitCommitTime, imageBuiltAt, branch) for drift detection.

PropertyValue
Operation IDStellaOpsBuildInfoFile
TagsStellaOps.Timeline.WebService
AuthNot declared
Request body-

Responses:

StatusDescriptionContent types
200OK-

GET /timeline

List timeline events

Returns timeline events filtered by tenant and optional query parameters.

PropertyValue
Operation IDtimeline_query
Tagstimeline-indexer
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
afterqueryno
correlationIdqueryno
eventTypequeryno
limitqueryno
severityqueryno
sincequeryno
sourcequeryno
traceIdqueryno

Responses:

StatusDescriptionContent types
200OKapplication/json
401Unauthorized-

POST /timeline/events

Ingest timeline event

Queues an event ingestion request for asynchronous timeline indexing.

PropertyValue
Operation IDtimeline_ingest_event
Tagstimeline-indexer
AuthNot declared
Request body-

Responses:

StatusDescriptionContent types
202Acceptedapplication/json
401Unauthorized-

GET /timeline/{eventId}

Get timeline event

Returns a single timeline event by event identifier for the current tenant.

PropertyValue
Operation IDtimeline_get_by_id
Tagstimeline-indexer
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
eventIdpathyes

Responses:

StatusDescriptionContent types
200OKapplication/json
401Unauthorized-
404Not Found-

GET /timeline/{eventId}/evidence

Get event evidence

Returns evidence linkage for a timeline event, including bundle and attestation references.

PropertyValue
Operation IDtimeline_get_evidence
Tagstimeline-indexer
AuthNot declared
Request body-

Parameters:

NameInRequiredDescription
eventIdpathyes

Responses:

StatusDescriptionContent types
200OKapplication/json
401Unauthorized-
404Not Found-