Skip to content

Decisions and outcomes

An Assessment changes as you add context, upload evidence, or withdraw an incorrect Document. A Decision captures the result at one specific point in that process.

Each Decision is an immutable evaluation of one Assessment input version. It records what Dockt concluded, why it reached that conclusion, and which public evidence supported it. This gives your product a stable result to act on even if the Assessment changes later.

Dockt provides the Decision; your product decides the business action. For example, you may continue automatically, ask for more evidence, route the case to a reviewer, or stop the workflow according to your own policy.

Use the decision field as the semantic result and handle every value:

  • incomplete: The current inputs don’t yet satisfy everything needed for a complete result. Read requirements and Findings to determine what is missing or unusable.
  • compliant: The current inputs satisfy the requirements evaluated for this Assessment version.
  • review_required: Dockt found uncertainty or an issue that needs a person to decide the next action. Present the Findings and supporting evidence to the reviewer.
  • non_compliant: The current inputs don’t satisfy one or more evaluated requirements. Read the Findings and requirements before explaining or applying your product’s action.

The signal field is a simplified display value derived from decision:

decisionsignal
compliantgreen
incompleteyellow
review_requiredyellow
non_compliantred

Use the signal for status color or sorting when helpful, but don’t infer a Decision or business action from it alone. Use decision, Findings, and requirements to control your workflow.

Assessment detail includes a compact latest_decision so you can show current case status without making another request. It contains the Decision ID and summary result.

Fetch GET /v1/decisions/{decisionId} before acting on a Decision or opening a detailed review. The complete response includes:

  • assessment_input_version
  • explanation
  • findings
  • facts and their customer-safe sources
  • documents and their results
  • requirements
  • applied_packages
  • An optional recommendation

The explanation summarizes the overall conclusion. requirements show how each evidence obligation contributed. documents and facts show the supporting record.

Findings identify specific reasons behind the result. They have a stable code, a scope, and an impact. Use the code and impact for routing or program logic. Use the title and explanation for people reviewing the result, rather than translating a code into customer-facing text yourself.

Dockt never updates a Decision in place. When worker data, context, evidence, or applicable configuration changes, Dockt can create a new Decision for a higher assessment_input_version.

Store the decision_id and assessment_input_version you acted on with your own workflow record. Don’t assume that an Assessment’s current latest_decision is the same Decision your system handled earlier.

For delayed or high-impact actions, read the Assessment again and compare its current latest_decision.decision_id with the Decision you originally received. Your product can then choose whether to continue with the original result or re-evaluate its action against the newer one.

An Outcome records what happened in your system after you received a Decision. It closes the feedback loop without modifying Dockt’s evaluation.

For example, a review_required Decision may lead your team to accepted, rejected, follow_up_requested, or manual_review. The Outcome describes that downstream event; it is not a correction or override of the Decision.

Supported Outcome values are:

  • accepted
  • rejected
  • follow_up_requested
  • manual_review
  • unknown

Use POST /v1/decisions/{decisionId}/outcome to report an Outcome with the time it happened and the source system that observed it. Report it against the exact Decision your product handled, not whichever Decision is currently latest.

Report a Decision Outcome

Decision fact codes and source lineage