Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.case.dev/llms.txt

Use this file to discover all available pages before exploring further.

Case.dev exposes the following customer-facing events through webhook endpoints. This page is generated from the router event catalog and typed payload contracts so it stays aligned with the API.
Stable events keep their event name and payload shape frozen except for additive fields. Beta events may change during their early access window.
Generated from apps/router/server/utils/webhooks/catalog.ts.
EventStabilityScopeResourceDescription
vault.upload.initiatedstablevaultvaultA vault object upload was initiated.
vault.upload.completedstablevaultvaultA vault object upload finished successfully.
vault.upload.failedstablevaultvaultA vault object upload failed.
vault.object.append.startedstablevaultvaultVault object append started.
vault.object.append.completedstablevaultvaultVault object append finished successfully.
vault.object.append.failedstablevaultvaultVault object append failed.
vault.ingest.startedstablevaultvaultVault object ingest started.
vault.ingest.completedstablevaultvaultVault object ingest finished successfully.
vault.ingest.failedstablevaultvaultVault object ingest failed.
ocr.job.createdstablevision_ocr-An OCR job was enqueued.
ocr.job.completedstablevision_ocr-An OCR job finished successfully.
ocr.job.failedstablevision_ocr-An OCR job failed.
voice.transcription.createdstabletranscription-A transcription job was created.
voice.transcription.reusedstabletranscription-A completed transcription job was reused from cache.
voice.transcription.completedstabletranscription-A transcription job finished successfully.
voice.transcription.failedstabletranscription-A transcription job failed.
voice.transcription.deletedstabletranscription-A transcription job was deleted.
agent.createdbetaagent-An agent definition was created.
agent.updatedbetaagent-An agent definition was updated.
agent.deletedbetaagent-An agent definition was deleted.
agent.run.createdbetaagent-An agent run was created.
agent.run.startedbetaagent-An agent run began executing.
agent.run.completedbetaagent-An agent run finished successfully.
agent.run.failedbetaagent-An agent run failed.
agent.run.cancelledbetaagent-An agent run was cancelled.
agent.runtime.startedbetaagent-An agent chat runtime sandbox was started.
agent.runtime.reusedbetaagent-An existing agent chat runtime sandbox was reused.
agent.runtime.failedbetaagent-An agent chat runtime sandbox failed to start or resume.
agent.scope.activatedbetaagent-A chat session scope was activated for the requested matter or vault authority.
agent.scope.activation_failedbetaagent-A chat session scope failed to activate.
agent.scope.reusedbetaagent-An existing chat session scope was reused.
agent.worker.readybetaagent-The agent worker inside a chat runtime is ready to accept work.
agent.worker.failedbetaagent-The agent worker inside a chat runtime failed to become available.
agent.chat.session.createdbetaagent-An agent chat session was created.
agent.chat.session.resumedbetaagent-An agent chat session was resumed.
agent.chat.session.abortedbetaagent-An active agent chat generation was aborted.
agent.chat.turn.acceptedbetaagent-An agent chat turn was accepted for processing.
agent.chat.turn.startedbetaagent-An agent chat turn began executing.
agent.chat.turn.completedbetaagent-An agent chat turn completed successfully.
agent.chat.turn.failedbetaagent-An agent chat turn failed.
agent.chat.turn.conflictbetaagent-An agent chat turn was rejected because another turn was active.
matter.createdbetalegalmatterA matter was created.
matter.updatedbetalegalmatterA matter was updated.
work_item.execution.completedbetalegalmatterA matter work item finished execution.
work_item.execution.failedbetalegalmatterA matter work item execution failed.
billing.charge.succeededstablewebhooks-A billing charge succeeded.
billing.charge.failedstablewebhooks-A billing charge failed.
balance.changedstablewebhooks-The organization credit balance changed.
compute.run.completedstablecompute-A compute function run completed successfully.
compute.run.failedstablecompute-A compute function run failed.
deployment.succeededstablewebhooks-A deployment succeeded.
deployment.failedstablewebhooks-A deployment failed.
webhook.endpoint.auto_disabledstablewebhooks-A webhook endpoint was automatically disabled after too many consecutive delivery failures. Subscribe to this to be notified when a downstream customer endpoint starts failing.

vault.upload.initiated

A vault object upload was initiated.
PropertyValue
Stabilitystable
Required scopevault
Resource scopevault

Payload

FieldTypeRequiredDescription
vaultIdstringYesThe vault this event pertains to.
objectIdstringYesThe object within the vault.
filenamestringYesOriginal filename provided by the uploader.
mimeTypestringNoMIME type of the uploaded file, if detected.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "vault.upload.initiated",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "vaultId": "vault_123",
    "objectId": "object_123",
    "filename": "filename_value",
    "mimeType": "mimeType_value"
  }
}

vault.upload.completed

A vault object upload finished successfully.
PropertyValue
Stabilitystable
Required scopevault
Resource scopevault

Payload

FieldTypeRequiredDescription
vaultIdstringYesThe vault this event pertains to.
objectIdstringYesThe object within the vault.
filenamestringYes-
mimeTypestringYes-
sizeBytesnumberYesSize of the uploaded file in bytes.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "vault.upload.completed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "vaultId": "vault_123",
    "objectId": "object_123",
    "filename": "filename_value",
    "mimeType": "mimeType_value",
    "sizeBytes": 42
  }
}

vault.upload.failed

A vault object upload failed.
PropertyValue
Stabilitystable
Required scopevault
Resource scopevault

Payload

FieldTypeRequiredDescription
vaultIdstringYesThe vault this event pertains to.
objectIdstringYesThe object within the vault.
errorstringYesHuman-readable error description.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "vault.upload.failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "vaultId": "vault_123",
    "objectId": "object_123",
    "error": "Processing failed"
  }
}

vault.object.append.started

Vault object append started.
PropertyValue
Stabilitystable
Required scopevault
Resource scopevault

Payload

FieldTypeRequiredDescription
vaultIdstringYesThe vault this event pertains to.
objectIdstringYesThe object within the vault.
appendObjectIdsstring[]YesVault object IDs whose pages will be appended onto the target object, in order.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "vault.object.append.started",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "vaultId": "vault_123",
    "objectId": "object_123",
    "appendObjectIds": ["appendObjectId_123"]
  }
}

vault.object.append.completed

Vault object append finished successfully.
PropertyValue
Stabilitystable
Required scopevault
Resource scopevault

Payload

FieldTypeRequiredDescription
vaultIdstringYesThe vault this event pertains to.
objectIdstringYesThe object within the vault.
appendObjectIdsstring[]YesVault object IDs whose pages will be appended onto the target object, in order.
sizeBytesnumberYesSize of the updated target object in bytes.
pageCountnumberYesPage count of the updated target object.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "vault.object.append.completed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "vaultId": "vault_123",
    "objectId": "object_123",
    "appendObjectIds": ["appendObjectId_123"],
    "sizeBytes": 42,
    "pageCount": 42
  }
}

vault.object.append.failed

Vault object append failed.
PropertyValue
Stabilitystable
Required scopevault
Resource scopevault

Payload

FieldTypeRequiredDescription
vaultIdstringYesThe vault this event pertains to.
objectIdstringYesThe object within the vault.
appendObjectIdsstring[]YesVault object IDs whose pages will be appended onto the target object, in order.
errorstringYesHuman-readable error description.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "vault.object.append.failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "vaultId": "vault_123",
    "objectId": "object_123",
    "appendObjectIds": ["appendObjectId_123"],
    "error": "Processing failed"
  }
}

vault.ingest.started

Vault object ingest started.
PropertyValue
Stabilitystable
Required scopevault
Resource scopevault

Payload

FieldTypeRequiredDescription
vaultIdstringYesThe vault this event pertains to.
objectIdstringYesThe object within the vault.
stagestringNoPipeline stage that began (e.g. ‘extraction’, ‘chunking’).

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "vault.ingest.started",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "vaultId": "vault_123",
    "objectId": "object_123",
    "stage": "stage_value"
  }
}

vault.ingest.completed

Vault object ingest finished successfully.
PropertyValue
Stabilitystable
Required scopevault
Resource scopevault

Payload

FieldTypeRequiredDescription
vaultIdstringYesThe vault this event pertains to.
objectIdstringYesThe object within the vault.
durationMsnumberYesTotal ingest duration in milliseconds.
chunkCountnumberNoNumber of chunks produced.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "vault.ingest.completed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "vaultId": "vault_123",
    "objectId": "object_123",
    "durationMs": 1284,
    "chunkCount": 42
  }
}

vault.ingest.failed

Vault object ingest failed.
PropertyValue
Stabilitystable
Required scopevault
Resource scopevault

Payload

FieldTypeRequiredDescription
vaultIdstringYesThe vault this event pertains to.
objectIdstringYesThe object within the vault.
errorstringYesHuman-readable error description.
stagestringNoPipeline stage that failed, if applicable.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "vault.ingest.failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "vaultId": "vault_123",
    "objectId": "object_123",
    "error": "Processing failed",
    "stage": "stage_value"
  }
}

ocr.job.created

An OCR job was enqueued.
PropertyValue
Stabilitystable
Required scopevision_ocr
Resource scopeNone

Payload

FieldTypeRequiredDescription
jobIdstringYesOCR job identifier.
objectIdstringYesThe vault object being processed.
vaultIdstringYes-
pageCountnumberNoNumber of pages queued for OCR.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "ocr.job.created",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "jobId": "job_123",
    "objectId": "object_123",
    "vaultId": "vault_123",
    "pageCount": 42
  }
}

ocr.job.completed

An OCR job finished successfully.
PropertyValue
Stabilitystable
Required scopevision_ocr
Resource scopeNone

Payload

FieldTypeRequiredDescription
jobIdstringYesOCR job identifier.
objectIdstringYesThe vault object being processed.
vaultIdstringYes-
durationMsnumberYesProcessing duration in milliseconds.
pageCountnumberYesNumber of pages processed.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "ocr.job.completed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "jobId": "job_123",
    "objectId": "object_123",
    "vaultId": "vault_123",
    "durationMs": 1284,
    "pageCount": 42
  }
}

ocr.job.failed

An OCR job failed.
PropertyValue
Stabilitystable
Required scopevision_ocr
Resource scopeNone

Payload

FieldTypeRequiredDescription
jobIdstringYesOCR job identifier.
objectIdstringYesThe vault object being processed.
vaultIdstringYes-
errorstringYes-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "ocr.job.failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "jobId": "job_123",
    "objectId": "object_123",
    "vaultId": "vault_123",
    "error": "Processing failed"
  }
}

voice.transcription.created

A transcription job was created.
PropertyValue
Stabilitystable
Required scopetranscription
Resource scopeNone

Payload

FieldTypeRequiredDescription
jobIdstringYes-
vaultIdstringNoVault that owns the source object, when the transcription came from a vault workflow.
assemblyaiIdstringNoAssemblyAI transcript identifier.
objectIdstringNoSource vault object for vault-backed jobs.
formatstringNoRequested transcript output format.
mode'vault' | 'direct'YesTranscription mode used by the request.
statusstringNoProvider status returned at job creation time.
speakerLabelsbooleanNo-
autoHighlightsbooleanNo-
contentSafetybooleanNo-
languageDetectionbooleanNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "voice.transcription.created",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "jobId": "job_123",
    "vaultId": "vault_123",
    "assemblyaiId": "assemblyai_123",
    "objectId": "object_123",
    "format": "format_value",
    "mode": "vault",
    "status": "active",
    "speakerLabels": true,
    "autoHighlights": true,
    "contentSafety": true,
    "languageDetection": true
  }
}

voice.transcription.reused

A completed transcription job was reused from cache.
PropertyValue
Stabilitystable
Required scopetranscription
Resource scopeNone

Payload

FieldTypeRequiredDescription
jobIdstringYes-
vaultIdstringNoVault that owns the source object, when the transcription came from a vault workflow.
assemblyaiIdstringNoAssemblyAI transcript identifier.
objectIdstringYes-
formatstringNo-
mode'vault'Yes-
from_cachetrueYes-
options_hashstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "voice.transcription.reused",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "jobId": "job_123",
    "vaultId": "vault_123",
    "assemblyaiId": "assemblyai_123",
    "objectId": "object_123",
    "format": "format_value",
    "mode": "vault",
    "from_cache": true,
    "options_hash": "options_hash_value"
  }
}

voice.transcription.completed

A transcription job finished successfully.
PropertyValue
Stabilitystable
Required scopetranscription
Resource scopeNone

Payload

FieldTypeRequiredDescription
jobIdstringYes-
vaultIdstringNoVault that owns the source object, when the transcription came from a vault workflow.
assemblyaiIdstringNoAssemblyAI transcript identifier.
sourceObjectIdstringYes-
resultObjectIdstringYes-
audioDurationSecondsnumberNo-
wordCountnumberYes-
confidencenumberNo-
textLengthnumberYes-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "voice.transcription.completed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "jobId": "job_123",
    "vaultId": "vault_123",
    "assemblyaiId": "assemblyai_123",
    "sourceObjectId": "sourceObject_123",
    "resultObjectId": "resultObject_123",
    "audioDurationSeconds": 42,
    "wordCount": 42,
    "confidence": 42,
    "textLength": 42
  }
}

voice.transcription.failed

A transcription job failed.
PropertyValue
Stabilitystable
Required scopetranscription
Resource scopeNone

Payload

FieldTypeRequiredDescription
jobIdstringYes-
vaultIdstringNoVault that owns the source object, when the transcription came from a vault workflow.
assemblyaiIdstringNoAssemblyAI transcript identifier.
sourceObjectIdstringNo-
errorstringYes-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "voice.transcription.failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "jobId": "job_123",
    "vaultId": "vault_123",
    "assemblyaiId": "assemblyai_123",
    "sourceObjectId": "sourceObject_123",
    "error": "Processing failed"
  }
}

voice.transcription.deleted

A transcription job was deleted.
PropertyValue
Stabilitystable
Required scopetranscription
Resource scopeNone

Payload

FieldTypeRequiredDescription
jobIdstringYes-
vaultIdstringNoVault that owns the source object, when the transcription came from a vault workflow.
assemblyaiIdstringNoAssemblyAI transcript identifier.
transcriptIdstringYes-
mode'vault' | 'direct'Yes-
providerDeletedbooleanYes-
providerAlreadyDeletedbooleanYes-
providerDeleteFailedbooleanYes-
providerErrorStatusCodenumberNo-
resultObjectDeletedbooleanYes-
localRecordDeletedbooleanYes-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "voice.transcription.deleted",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "jobId": "job_123",
    "vaultId": "vault_123",
    "assemblyaiId": "assemblyai_123",
    "transcriptId": "transcript_123",
    "mode": "vault",
    "providerDeleted": true,
    "providerAlreadyDeleted": true,
    "providerDeleteFailed": true,
    "providerErrorStatusCode": 42,
    "resultObjectDeleted": true,
    "localRecordDeleted": true
  }
}

agent.created

An agent definition was created.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
namestringNo-
modelstringNo-
adhocbooleanNo-
versionstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.created",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "name": "name_value",
    "model": "model_value",
    "adhoc": true,
    "version": "version_value"
  }
}

agent.updated

An agent definition was updated.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
fieldsstring[]Yes-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.updated",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "fields": "fields_value"
  }
}

agent.deleted

An agent definition was deleted.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
(none)--Empty data object.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.deleted",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {}
}

agent.run.created

An agent run was created.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
runIdstringYes-
agentIdstringNoThe skill or agent definition that was invoked.
sourcestringNoAPI surface or workflow source that emitted the event.
versionstringNo-
inputobjectNoInput prompt or parameters, if safe to expose.
promptLengthnumberNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.run.created",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "runId": "run_123",
    "agentId": "agent_123",
    "source": "source_value",
    "version": "version_value",
    "input": {},
    "promptLength": 42
  }
}

agent.run.started

An agent run began executing.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
runIdstringYes-
agentIdstringNoThe skill or agent definition that was invoked.
sourcestringNoAPI surface or workflow source that emitted the event.
versionstringNo-
workflowIdstringNo-
adhocbooleanNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.run.started",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "runId": "run_123",
    "agentId": "agent_123",
    "source": "source_value",
    "version": "version_value",
    "workflowId": "workflow_123",
    "adhoc": true
  }
}

agent.run.completed

An agent run finished successfully.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
runIdstringYes-
agentIdstringNoThe skill or agent definition that was invoked.
sourcestringNoAPI surface or workflow source that emitted the event.
versionstringNo-
durationMsnumberYes-
usage{inputTokens: number; outputTokens: number}NoToken usage summary.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.run.completed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "runId": "run_123",
    "agentId": "agent_123",
    "source": "source_value",
    "version": "version_value",
    "durationMs": 1284,
    "usage": { "inputTokens": 123, "outputTokens": 456 }
  }
}

agent.run.failed

An agent run failed.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
runIdstringYes-
agentIdstringNoThe skill or agent definition that was invoked.
sourcestringNoAPI surface or workflow source that emitted the event.
versionstringNo-
adhocbooleanNo-
runtimestringNo-
errorstringYes-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.run.failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "runId": "run_123",
    "agentId": "agent_123",
    "source": "source_value",
    "version": "version_value",
    "adhoc": true,
    "runtime": "runtime_value",
    "error": "Processing failed"
  }
}

agent.run.cancelled

An agent run was cancelled.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
runIdstringYes-
agentIdstringNoThe skill or agent definition that was invoked.
sourcestringNoAPI surface or workflow source that emitted the event.
versionstringNo-
reasonstringNoCancellation reason, if one was provided.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.run.cancelled",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "runId": "run_123",
    "agentId": "agent_123",
    "source": "source_value",
    "version": "version_value",
    "reason": "reason_value"
  }
}

agent.runtime.started

An agent chat runtime sandbox was started.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
errorstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.runtime.started",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "error": "Processing failed"
  }
}

agent.runtime.reused

An existing agent chat runtime sandbox was reused.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
errorstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.runtime.reused",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "error": "Processing failed"
  }
}

agent.runtime.failed

An agent chat runtime sandbox failed to start or resume.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
errorstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.runtime.failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "error": "Processing failed"
  }
}

agent.scope.activated

A chat session scope was activated for the requested matter or vault authority.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
vaultIdsstring[] | nullNo-
matterIdsstring[] | nullNo-
errorstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.scope.activated",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "vaultIds": "vaultIds_value",
    "matterIds": "matterIds_value",
    "error": "Processing failed"
  }
}

agent.scope.activation_failed

A chat session scope failed to activate.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
vaultIdsstring[] | nullNo-
matterIdsstring[] | nullNo-
errorstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.scope.activation_failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "vaultIds": "vaultIds_value",
    "matterIds": "matterIds_value",
    "error": "Processing failed"
  }
}

agent.scope.reused

An existing chat session scope was reused.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
vaultIdsstring[] | nullNo-
matterIdsstring[] | nullNo-
errorstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.scope.reused",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "vaultIds": "vaultIds_value",
    "matterIds": "matterIds_value",
    "error": "Processing failed"
  }
}

agent.worker.ready

The agent worker inside a chat runtime is ready to accept work.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
errorstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.worker.ready",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "error": "Processing failed"
  }
}

agent.worker.failed

The agent worker inside a chat runtime failed to become available.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
errorstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.worker.failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "error": "Processing failed"
  }
}

agent.chat.session.created

An agent chat session was created.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
titlestring | nullNo-
modelstring | nullNo-
reasonstring | nullNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.chat.session.created",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "title": "title_value",
    "model": "model_value",
    "reason": "reason_value"
  }
}

agent.chat.session.resumed

An agent chat session was resumed.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
titlestring | nullNo-
modelstring | nullNo-
reasonstring | nullNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.chat.session.resumed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "title": "title_value",
    "model": "model_value",
    "reason": "reason_value"
  }
}

agent.chat.session.aborted

An active agent chat generation was aborted.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
titlestring | nullNo-
modelstring | nullNo-
reasonstring | nullNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.chat.session.aborted",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "title": "title_value",
    "model": "model_value",
    "reason": "reason_value"
  }
}

agent.chat.turn.accepted

An agent chat turn was accepted for processing.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
turnIdstringYes-
messageIdstring | nullNo-
finishReasonstring | nullNo-
errorstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.chat.turn.accepted",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "turnId": "turn_123",
    "messageId": "message_123",
    "finishReason": "finishReason_value",
    "error": "Processing failed"
  }
}

agent.chat.turn.started

An agent chat turn began executing.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
turnIdstringYes-
messageIdstring | nullNo-
finishReasonstring | nullNo-
errorstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.chat.turn.started",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "turnId": "turn_123",
    "messageId": "message_123",
    "finishReason": "finishReason_value",
    "error": "Processing failed"
  }
}

agent.chat.turn.completed

An agent chat turn completed successfully.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
turnIdstringYes-
messageIdstring | nullNo-
finishReasonstring | nullNo-
errorstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.chat.turn.completed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "turnId": "turn_123",
    "messageId": "message_123",
    "finishReason": "finishReason_value",
    "error": "Processing failed"
  }
}

agent.chat.turn.failed

An agent chat turn failed.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
turnIdstringYes-
messageIdstring | nullNo-
finishReasonstring | nullNo-
errorstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.chat.turn.failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "turnId": "turn_123",
    "messageId": "message_123",
    "finishReason": "finishReason_value",
    "error": "Processing failed"
  }
}

agent.chat.turn.conflict

An agent chat turn was rejected because another turn was active.
PropertyValue
Stabilitybeta
Required scopeagent
Resource scopeNone

Payload

FieldTypeRequiredDescription
chatIdstringYes-
runtimeProviderstringNo-
runtimeIdstring | nullNo-
runtimeStatestring | nullNo-
sessionIdstring | nullNo-
turnIdstringYes-
messageIdstring | nullNo-
finishReasonstring | nullNo-
errorstringNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "agent.chat.turn.conflict",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chatId": "chat_123",
    "runtimeProvider": "runtimeProvider_value",
    "runtimeId": "runtime_123",
    "runtimeState": "runtimeState_value",
    "sessionId": "session_123",
    "turnId": "turn_123",
    "messageId": "message_123",
    "finishReason": "finishReason_value",
    "error": "Processing failed"
  }
}

matter.created

A matter was created.
PropertyValue
Stabilitybeta
Required scopelegal
Resource scopematter

Payload

FieldTypeRequiredDescription
matterIdstringYes-
titlestringNoHuman-readable matter title.
statusstringYesMatter status at creation time.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "matter.created",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "matterId": "matter_123",
    "title": "title_value",
    "status": "active"
  }
}

matter.updated

A matter was updated.
PropertyValue
Stabilitybeta
Required scopelegal
Resource scopematter

Payload

FieldTypeRequiredDescription
matterIdstringYes-
objectobjectYesCurrent state of the matter.
previous_attributesobjectNoOnly-changed fields with their previous values. Present when the emitter supports change tracking.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "matter.updated",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "matterId": "matter_123",
    "object": {},
    "previous_attributes": {}
  }
}

work_item.execution.completed

A matter work item finished execution.
PropertyValue
Stabilitybeta
Required scopelegal
Resource scopematter

Payload

FieldTypeRequiredDescription
matterIdstringYes-
workItemIdstringYes-
durationMsnumberYes-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "work_item.execution.completed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "matterId": "matter_123",
    "workItemId": "workItem_123",
    "durationMs": 1284
  }
}

work_item.execution.failed

A matter work item execution failed.
PropertyValue
Stabilitybeta
Required scopelegal
Resource scopematter

Payload

FieldTypeRequiredDescription
matterIdstringYes-
workItemIdstringYes-
errorstringYes-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "work_item.execution.failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "matterId": "matter_123",
    "workItemId": "workItem_123",
    "error": "Processing failed"
  }
}

billing.charge.succeeded

A billing charge succeeded.
PropertyValue
Stabilitystable
Required scopewebhooks
Resource scopeNone

Payload

FieldTypeRequiredDescription
chargeIdstringYesStripe charge or invoice ID.
amountCentsnumberYesAmount in cents.
currencystringYesISO 4217 currency code.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "billing.charge.succeeded",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chargeId": "charge_123",
    "amountCents": 2500,
    "currency": "usd"
  }
}

billing.charge.failed

A billing charge failed.
PropertyValue
Stabilitystable
Required scopewebhooks
Resource scopeNone

Payload

FieldTypeRequiredDescription
chargeIdstringYes-
amountCentsnumberYes-
currencystringYes-
errorstringYes-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "billing.charge.failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "chargeId": "charge_123",
    "amountCents": 2500,
    "currency": "usd",
    "error": "Processing failed"
  }
}

balance.changed

The organization credit balance changed.
PropertyValue
Stabilitystable
Required scopewebhooks
Resource scopeNone

Payload

FieldTypeRequiredDescription
balanceCentsnumberYesNew credit balance in cents.
deltaCentsnumberYesChange amount (positive = credit added, negative = deducted).
reasonstringNoReason for the change (e.g. ‘charge’, ‘top_up’, ‘promo’).

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "balance.changed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "balanceCents": 2500,
    "deltaCents": 2500,
    "reason": "reason_value"
  }
}

compute.run.completed

A compute function run completed successfully.
PropertyValue
Stabilitystable
Required scopecompute
Resource scopeNone

Payload

FieldTypeRequiredDescription
runIdstringYes-
functionIdstringYes-
durationMsnumberYes-
exitCodenumberNoExit code of the compute function.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "compute.run.completed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "runId": "run_123",
    "functionId": "function_123",
    "durationMs": 1284,
    "exitCode": 42
  }
}

compute.run.failed

A compute function run failed.
PropertyValue
Stabilitystable
Required scopecompute
Resource scopeNone

Payload

FieldTypeRequiredDescription
runIdstringYes-
functionIdstringYes-
errorstringYes-
exitCodenumberNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "compute.run.failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "runId": "run_123",
    "functionId": "function_123",
    "error": "Processing failed",
    "exitCode": 42
  }
}

deployment.succeeded

A deployment succeeded.
PropertyValue
Stabilitystable
Required scopewebhooks
Resource scopeNone

Payload

FieldTypeRequiredDescription
deploymentIdstringYes-
appNamestringNoApplication or project name.
urlstringNoURL of the deployed application.
durationMsnumberNo-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "deployment.succeeded",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "deploymentId": "deployment_123",
    "appName": "appName_value",
    "url": "url_value",
    "durationMs": 1284
  }
}

deployment.failed

A deployment failed.
PropertyValue
Stabilitystable
Required scopewebhooks
Resource scopeNone

Payload

FieldTypeRequiredDescription
deploymentIdstringYes-
appNamestringNoApplication or project name.
errorstringYes-

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "deployment.failed",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "deploymentId": "deployment_123",
    "appName": "appName_value",
    "error": "Processing failed"
  }
}

webhook.endpoint.auto_disabled

A webhook endpoint was automatically disabled after too many consecutive delivery failures. Subscribe to this to be notified when a downstream customer endpoint starts failing.
PropertyValue
Stabilitystable
Required scopewebhooks
Resource scopeNone

Payload

FieldTypeRequiredDescription
endpointIdstringYesThe endpoint that was disabled.
urlstringYesURL of the disabled endpoint.
consecutiveFailuresnumberYesNumber of consecutive failures that triggered the disable.
lastFailureAtstringYesTimestamp of the last failed delivery attempt.

Example

{
  "id": "evt_01HV8ZK8M7Q9YJ6P5E3P2R1A0B",
  "type": "webhook.endpoint.auto_disabled",
  "occurred_at": "2026-04-24T15:12:09.481Z",
  "data": {
    "endpointId": "endpoint_123",
    "url": "url_value",
    "consecutiveFailures": 42,
    "lastFailureAt": "lastFailureAt_value"
  }
}