---
title: "Api Nport Dispersion"
method: GET
path: "/api/nport/dispersion"
---

# Api Nport Dispersion

`GET /api/nport/dispersion`

## Request

- Base URL: `https://www.oxfordledge.com` (the document declares no server; this is the origin it was published from)
- URL: `https://www.oxfordledge.com/api/nport/dispersion`
- Auth: none declared

Per-tranche cross-fund USD mark dispersion for one issuer + period.

Only same-(issuer_key, series_class, period) marks across distinct
(fund_cik, series_id) portfolios are compared; feeder-SPVs, '?'-class,
non-L3 and DQ rows are held out upstream (the helper's _ELIGIBLE gate).

## Query parameters

- `issuer` string, required
- `period` string, required
- `min_holders` integer

## Response `200`

Successful Response

- NportMarksResponse: Loose response_model for the SF-NPORT Phase-2 internal API (/api/nport/* in routes_analysis_fastapi/nport_marks.py). Admin-gated, zero public/crawlable surface until Phase 4 (COUNSEL-gated) — typed tightly then; loose now since the only consumers are internal tools. Every payload carries rows + as_of provenance; dispersion payloads also carry held-out counts (DC-5: 'no discrepancy' != 'holders held out').

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api.md) · [All operations](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api/llms.txt) · [OpenAPI document](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api/revisions/e832a1260f0b?raw)
