Skip to main content
manualReview is the human gate. Pauses the workflow run, surfaces evidence to the assigned reviewer(s) via the Decision Console, and resumes on their response.

Configuration

{
  "id": "mr-medium-risk",
  "type": "manualReview",
  "data": {
    "label": "Analyst Review",
    "reviewTitle": "Medium Risk Case Review",
    "description": "Route medium-risk cases to analyst for manual review",
    "assignmentType": "random_reviewers",
    "assignees": [],
    "timeoutHours": 4,

    "displayItems": [
      { "id": "d1", "type": "field",       "label": "Amount",         "value": "workflow.data.amount" },
      { "id": "d2", "type": "field",       "label": "Risk Score",     "value": "risk_score" },
      { "id": "d3", "type": "field",       "label": "Velocity Flag",  "value": "velocity_flag" },
      { "id": "d4", "type": "description", "label": "",               "value": "Review the case details and determine if additional verification is needed." }
    ],

    "responseFields": [
      { "id": "r1", "name": "decision",     "label": "Decision",    "type": "select",  "required": true, "options": ["approve","deny","escalate"] },
      { "id": "r2", "name": "reason",       "label": "Reason",      "type": "text",    "required": true },
      { "id": "r3", "name": "require_2fa",  "label": "Require 2FA", "type": "boolean", "required": false }
    ]
  }
}

Assignment types

assignmentTypeBehaviour
random_reviewersRandom pick from the on-call group; falls back to the group’s queue. Used for low-stakes / high-volume reviews.
specific_reviewersNamed individuals. Used when only specific people are authorised (regulator submission approvals).
specific_groupNamed role group. Round-robin within the group.
single_reviewerOne person at a time owns the case. Used for high-context KYB decisions.

Display items

typeRenders as
fieldKey/value row. value is a context-path (no {{...}}).
descriptionA short instructional paragraph.
linkOutbound link (e.g. “Open in the on-chain analytics investigation tool”).

Response fields

Each response field becomes a top-level variable on the run context once the reviewer submits. So the example above writes {{decision}}, {{reason}}, {{require_2fa}} for downstream nodes to read.
typeUI
selectDropdown of options.
textFree-text textarea.
booleanToggle.
numberNumeric input.

Timeout semantics

timeoutHours controls what happens when no reviewer responds in time. The workflow’s manualReview policy decides:
  • auto_escalate — re-route to senior group with extended TTL.
  • auto_deny — fail-safe for high-risk reviews.
  • auto_approve — fail-open (used rarely, only for low-risk reviews where idle approval is acceptable).
Default if not specified: auto_escalate.

Typical review TTLs

Review typeTypical TTL
Alert screening2h
Senior compliance review4h
Single-reviewer KYB8h
Address-change / mid-risk review24h
EDD documentary review24h
Regulator-filing internal approval48h
RFI evidence assessment (waits for client return)168h