PUBLIC API

Plug Nexus Legal directly into your systems.

A public REST API for deterministic legal analysis. Send a document, get a structured Node A + Node B verdict back — same engine, same anchoring, same Isolation Rule that runs the platform.

At a glance

Base URLhttps://nexusquantum.legal/api/v1
AuthenticationAuthorization: Bearer nlk_… (256-bit key)
EndpointsPOST /analyze · GET /jurisdictions
FormatJSON in · JSON out · synchronous response
Coverage36 countries and international organizations
Document sizeUp to 100,000 characters per request

Calling the API

The API only accepts plain text — extract PDF or DOCX content on your side before sending. Below, the same call in three languages.

cURL
curl -X POST https://nexusquantum.legal/api/v1/analyze \
  -H "Authorization: Bearer nlk_..." \
  -H "Content-Type: application/json" \
  -d '{
    "text": "<contract text>",
    "jurisdiction": "ES",
    "legalBranch": "mercantil"
  }'
Python
import requests

r = requests.post(
    "https://nexusquantum.legal/api/v1/analyze",
    headers={"Authorization": "Bearer nlk_..."},
    json={
        "text": contract_text,
        "jurisdiction": "ES",
        "legalBranch": "mercantil",
    },
)
result = r.json()
Node.js
const r = await fetch(
  "https://nexusquantum.legal/api/v1/analyze",
  {
    method: "POST",
    headers: {
      "Authorization": "Bearer nlk_...",
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      text: contractText,
      jurisdiction: "ES",
      legalBranch: "mercantil",
    }),
  },
)
const result = await r.json()

Response

The endpoint replies synchronously with a complete analysis. No jobs, no polling, no webhooks.

{
  "sessionId": "SS-A1B2C3-...",
  "jurisdiction": "ES",
  "nodoA": {
    "summary": "...",
    "riskSignals": [
      { "level": "ALTO", "description": "..." }
    ],
    "recommendations": ["..."]
  },
  "nodoB": {
    "verdict": "RIESGO MODERADO",
    "certezaScore": 72,
    "observations": ["..."]
  }
}

Request fields

POST /api/v1/analyze accepts the following fields:

textRequiredThe plain-text content of the document. Up to 100,000 characters.
jurisdictionRequiredISO code of the target jurisdiction (e.g. "ES", "CO", "MX", "US-DE"). Full list via GET /jurisdictions.
legalBranchOptionalcivil, laboral, mercantil, penal, fiscal, etc.
professionalRoleOptionalabogado, magistrado, notario, fiscal, corporativo.

Rate limits

Each API key has a per-minute request limit configurable on your account. When the limit is exceeded, the API returns HTTP 429 with a Retry-After header indicating when to retry.

Where it’s used

Backend integration

Call the analysis engine from your case-management or contract-management backend, without going through the UI.

Custom pipelines

Wire the API into your existing review pipelines, ticketing, or document-processing flows.

Internal tools

Build internal dashboards that consume verdicts and certainty scores at scale across the firm’s case load.

Get an API key

Sign in and generate your key from the Developers panel. Full technical reference at /docs/technical inside the platform.