Core Primitives

Participants

A human, institution, AI agent, system, or organization involved in the operation. Participants have roles that determine what they can see and do.

The Participant object

Participant
{
  "id": "part_def456",
  "operation_id": "op_abc123",
  "type": "investigator",
  "name": "Jane Chen",
  "organization": "Recovery Partners LLC",
  "role": "lead_investigator",
  "permissions": ["read", "write", "transition", "attest"],
  "joined_at": "2025-01-15T10:30:00Z",
  "metadata": {}
}
ParameterTypeDescription
idstringUnique identifier. Prefixed with part_
operation_idrequiredstringThe operation this participant belongs to
typerequiredstringParticipant classification
namerequiredstringDisplay name
organizationstringAffiliated organization
rolerequiredstringOperational role
permissionsrequiredstring[]Granted permission scopes
joined_atdatetimeWhen the participant was added
metadataobjectArbitrary key-value pairs
Participant types
victimadvocateinvestigatorlaw_firmexchangecompliance_teamlaw_enforcement_liaisonai_agent
Permission scopes
readwritetransitionattestadminpacket_generate

Endpoints

Add a participant

POST
/v1/operations/:id/participants
curl -X POST https://api.microndelta.com/v1/operations/op_abc123/participants \
  -H "Authorization: Bearer md_live_xxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "investigator",
    "name": "Jane Chen",
    "organization": "Recovery Partners LLC",
    "role": "lead_investigator",
    "permissions": ["read", "write", "transition", "attest"]
  }'

List participants

GET
/v1/operations/:id/participants

Update permissions

PATCH
/v1/participants/:id

Update a participant's role or permissions

Remove a participant

DELETE
/v1/participants/:id

Revoke access and record the removal