PrevIQ Docs

Export

Download any filtered slice of the prevalence rollups as CSV, Excel, or JSON.

The export endpoints apply the same filters as /prevalence but return the full filtered set as a downloadable artifact instead of a paginated page. Ideal for "give me everything UTI-related" workflows.

Endpoints

GET /api/v1/export/csv

GET /api/v1/export/excel

GET /api/v1/export/json

Shared query parameters

  • syndromestring — Restrict to one syndrome.
  • vendor_idstring — Restrict to one laboratory.
  • organismstring — Restrict to one organism.
  • panelstring — Restrict to one panel — the export matches a panel-filtered Explore view.
  • min_testedinteger, default: 0 — Drop rows below this tested floor.
  • tierstring — Comma-separated tier filter, e.g. A or A,B. The export contains only rows in those tiers.
  • date_startstring (ISO date) — Start of a date window (YYYY-MM-DD). Computes the export live for the window; requires a vendor_id or syndrome.
  • date_endstring (ISO date) — End of the date window (inclusive).
  • levelstring, default: vendorvendor, syndrome, or cross_vendor.

CSV — all UTI rows for one lab

curl -L "https://api.previq.ospri.bio/api/v1/export/csv?syndrome=UTI&vendor_id=AFC" -o uti_afc.csv

Excel — everything above n=100

curl -L "https://api.previq.ospri.bio/api/v1/export/excel?min_tested=100" -o previq_tierA.xlsx

JSON — one organism across labs

curl -L "https://api.previq.ospri.bio/api/v1/export/json?organism=Escherichia%20coli&level=cross_vendor" -o ecoli.json

File contents

CSV and Excel exports share this column set (rates and CI bounds are formatted as percentages):

Columns

Vendor, Syndrome, Panel, Organism,
Tested, Detected, Prevalence Rate,
Sample Size Tier, Clinically Reportable,
CI 95% Lower, CI 95% Upper,
Date Range Start, Date Range End

The JSON export returns a { data, meta } payload (the meta.query echoes your filters), with a Content-Disposition header so browsers save it with a sensible filename.

Note

Rows are sorted by syndrome, then prevalence (descending), then organism. The Excel sheet freezes the header row.

Important

If no rows match your filters, the endpoint returns 404 Not Found rather than an empty file.

Tip

Filenames are timestamped (UTC) and include the active filters — e.g. previq_AFC_UTI_20260529T201104Z.csv — so downloads don't collide.