---
title: "Multi-document cross-coherence audit (Node B)"
method: POST
path: "/api/v1/nodo-b-crossdoc"
tags: ["Nodes"]
---

# Multi-document cross-coherence audit (Node B)

`POST /api/v1/nodo-b-crossdoc`

## Request

- Base URL: `https://legal.nexusquantum.legal`
- URL: `https://legal.nexusquantum.legal/api/v1/nodo-b-crossdoc`
- Auth: HTTP bearer

Audits coherence across ≥2 client-supplied documents. Wraps /api/nodo-b-crossdoc (plain JSON). The internal route anonymizes PII and sanitizes injection on the input. `jurisdiction` OPTIONAL (no ES default; when absent → honest `not_verifiable`). Scope `mcp`/`*`. The internal route debits 8 cr (debit-first + refund); the v1 layer does not debit.

## Request body

- object
  - `documents` string[], required: ≥2 documents to cross-check.
  - `language` 'es' | 'en' | 'fr' | 'de'
  - `auditId` string
  - `jurisdiction` string: Optional ISO2 (no default).
  - `jurisdictionB` string: Second cross-border jurisdiction (optional).

## Response `200`

{ verdict, coherenceScore, inconsistencies[], crossChecked, auditText, documentsReceived, documentsCompared?, documentsSkipped?, citationChecks?, processingMs, requestId }. 🔴 `crossChecked:false` means the engine ANSWERED but its discrepancy list did not come back readable (schema mismatch): the `inconsistencies: []` that accompanies it is FILLER, not a finding of zero discrepancies — never render it as a clean cross-check, and retry. Branch on this field, not on `verdict` (a closed, published value that is deliberately NOT extended for this case). `documentsCompared` is how many documents were actually cross-checked; documents that arrived without text or without an analysis are excluded and listed by name in `documentsSkipped`, so a 5-document request cross-checked on 2 no longer looks like a 5-document verdict.

- object

## Other responses

- `400`: VALIDATION_ERROR — `documents` has fewer than 2 elements.
- `402`: INSUFFICIENT_CREDITS | SPEND_CAP_REACHED
- `403`: MCP_SCOPE_REQUIRED
- `422`: MODEL_OUTPUT_UNPARSEABLE — the engine returned no readable cross-document audit at all (credits refunded by the internal route) | TOO_FEW_COMPARABLE_DOCUMENTS — fewer than 2 of the documents carried both text and an analysis, so there was nothing to cross-check (credits refunded). Neither case is ever downgraded to a 200 with an empty discrepancy list.

---

[API](https://skmtc.dev/nexusquantum/apis/nexus-legal-api.md) · [All operations](https://skmtc.dev/nexusquantum/apis/nexus-legal-api/llms.txt) · [OpenAPI document](https://skmtc.dev/nexusquantum/apis/nexus-legal-api/revisions/4084d8d4eb0b?raw)
