---
title: "Retrieve workflow lineage for linked Decionis decisions"
method: GET
path: "/v1/protocol/decision-chains/{chain_id}"
---

# Retrieve workflow lineage for linked Decionis decisions

`GET /v1/protocol/decision-chains/{chain_id}`

## Request

- Base URL: `https://api.decionis.com`
- URL: `https://api.decionis.com/v1/protocol/decision-chains/{chain_id}`
- Auth: HTTP bearer

Returns the protocol-owned Decision Chain for a workflow. Decision
Chains link evaluated execution intents into a causal graph without
exposing policy rules or application-side guardrail logic.

## Path parameters

- `chain_id` string, uuid, required

## Query parameters

- `org_id` string, uuid, required

## Response `200`

Decision Chain

- DecisionChain
  - `service` string, required
  - `protocol_version` string, required
  - `org_id` string, uuid, required
  - `chain_id` string, uuid, required
  - `workflow_id` string, nullable
  - `root_evaluation_id` string, uuid, nullable
  - `count` integer, required
  - `max_lineage_depth` integer, required
  - `integrity_verified` boolean, required
  - `ledger_verification` object, required: Bounded canonical-ledger verification performed for this response. `complete: false` means the response must not be treated as verified, even when the checked prefix contained no broken link.
    - `valid` boolean, required
    - `complete` boolean, required
    - `checked` integer, required
    - `max_entries` integer, required
  - `links` DecisionChainLink[], required
    - `id` string, uuid, required
    - `chain_id` string, uuid, required
    - `workflow_id` string, required
    - `step_id` string, required
    - `sequence` integer, nullable
    - `decision_evaluation_id` string, uuid, required
    - `dossier_id` string, uuid, required
    - `parent_evaluation_ids` string[], required
    - `parent_dossier_ids` string[], required
    - `root_evaluation_id` string, uuid, required
    - `lineage_depth` integer, required
    - `integrity_hash` string, required
    - `integrity_verified` boolean, required
    - `outcome` string
    - `policy_version` string
    - `authority_classification` 'AUTHORITATIVE' | 'OBSERVATIONAL' | 'null', nullable
    - `verdict` 'ALLOW' | 'ESCALATE' | 'BLOCK' | 'null', nullable
    - `execution_binding_digest` string, nullable
    - `dossier_api_path` string, required
    - `created_at` string, date-time, required
  - `link_limit` integer, required: Maximum Decision Chain links returned in this bounded projection.
  - `links_truncated` boolean, required: True when additional Decision Chain links exist. A truncated response must not be interpreted as verification of the complete chain.
  - `evidence_lineage` DecisionChainEvidenceReference[], required: Claim, optional dispatch, finalization, and effect-evidence commitments correlated from canonical append-only audit-ledger membership and a cryptographically verified ExecutionBinding.
    - `stage` 'CLAIM' | 'DISPATCH' | 'FINALIZATION' | 'EFFECT', required
    - `evaluation_id` string, uuid, required
    - `dossier_id` string, uuid, required
    - `status` string, required
    - `occurred_at` string, date-time, required
    - `ledger_entry_id` string, uuid, required
    - `ledger_entry_hash` string, required
    - `evidence_digest` string, required
    - `evidence_hash_verified` boolean, required: True when the evidence hash recorded in the ledger payload matches the canonical evidence fields projected into this reference.
    - `execution_correlation_id` string, required
    - `binding_digest` string, nullable, required
    - `observed_at` string, date-time, nullable, required
    - `observation_method` string, nullable, required
    - `observer` object, nullable, required
      - `id` string, required
      - `version` string, nullable, required
    - `expected_effect_digest` string, nullable, required
    - `observed_effect_digest` string, nullable, required
    - `evidence_reference` string, nullable, required
  - `evidence_lineage_limit` integer, required: Maximum canonical audit-ledger entries considered by this projection.
  - `evidence_lineage_truncated` boolean, required: True when additional chain-correlated ledger entries exist. In that case evidence_lineage is withheld so a bounded prefix is not presented as complete authoritative lineage.

## Other responses

- `400`: Structured API error
- `401`: Structured API error
- `403`: Structured API error
- `404`: Structured API error

---

[API](https://skmtc.dev/decionis/apis/decionis-policy-evaluation-api.md) · [All operations](https://skmtc.dev/decionis/apis/decionis-policy-evaluation-api/llms.txt) · [OpenAPI document](https://skmtc.dev/decionis/apis/decionis-policy-evaluation-api/revisions/357f5e459d0c?raw)
