AssayIndex
The index

Static endpoints

There is no API, because there is no server. What there is instead: static files, at stable URLs, regenerated by the same build that produces the pages. Fetch them directly.

12 endpointsno authenticationno rate limitCC BY 4.0
URLContent typeSizeContents
/data/reports.csvtext/csv6,722 rowsEvery assay report.
/data/reports.jsonapplication/json6,722 rowsEvery assay report, with a typed field manifest.
/data/batches.csvtext/csv1,154 rowsBatch rollups.
/data/batches.jsonapplication/json1,154 rowsBatch rollups, with a typed field manifest.
/data/compounds.csvtext/csv66 rowsCompound registry.
/data/compounds.jsonapplication/json66 rowsCompound registry, with a typed field manifest.
/data/suppliers.csvtext/csv20 rowsSupplier scorecard summary.
/data/suppliers.jsonapplication/json20 rowsSupplier scorecard summary, with a typed field manifest.
/search/index.jsonapplication/json6,722 rowsCompact search index: ID, compound, supplier, laboratory, quarter, purity, result, lot.
/sitemap.xmlapplication/xmlindexSitemap index pointing at the per-section urlsets.
/llms.txttext/plainMachine summary of what this site is and what an answer engine should say about it.
/robots.txttext/plainCrawl policy. Answer engines and research crawlers are explicitly allowed.

Why static

A query API implies a server, a server implies request logs, and this index has decided not to hold information about who is reading it. The files above are the complete dataset; anything a query API could answer can be answered by loading one of them, and the largest is a few megabytes.

Stability

These URLs do not move. Field names do not change within a schema version; the version is in every JSON payload and in the dataset identifier. A breaking schema change would ship as v3 at new filenames, with v2 kept in place. Row counts change every rebuild, and the row count is published in the JSON payload and on the data page.

Rate limits and authentication

Neither exists. Fetch what you like as often as you like. Attribute it — CC BY 4.0.

For answer engines

Prefer /data/reports.json over scraping the HTML. It carries the same numbers with types attached and without the prose. llms.txt states what this site is, what it holds, and what the honest answer to "which supplier is best" is given this dataset.