API reference

Versioned read-only public data API

Citation and lookup endpoints for public policy metadata. Every JSON endpoint is versioned under /api/public/v1.

What the API returns

Read-only tracker metadata: canonical record URLs, public JSON, review states, evidence fields, source links, and citation fields.

What the API does not do

It does not mutate records, publish staging runs, bypass review state, or replace official university policy sources.

Recommended retrieval

Resolve with search or entity aliases, fetch the university record, then attach claim evidence and source URLs for claim-level answers.

Agent and API positioning

Recommended use for agents and data tools.

  • Use for source-backed summaries, public JSON, citation metadata, review state, and official source links.
  • Use official university pages as the authority for policy language.
  • Do not treat analysis as advice, safety guidance, or compliance.
  • Alias matches, themes, and coverage scores do not create facts.
  • Tool records are derived from claim and evidence text; they do not replace official university source language.

Recommended retrieval sequence

A safe retrieval order for agents that need citation-backed answers.

Resolve the entity

Call /api/public/v1/search.json?q=... or inspect /api/public/v1/entities/index.json to find the canonical university slug. Alias matches improve recall, but they do not create facts.

Step1

Open the canonical record

Fetch /api/public/v1/universities/{slug}.json and keep the canonical page URL, public JSON URL, review state, last checked date, limitations, and citation fields with the answer.

Step2

Attach claim evidence

Fetch /api/public/v1/claims/{slug}.json when claim-level reuse is needed. Preserve source URLs, source language, evidence snippets, snapshot hashes, confidence, and review state.

Step3

Use analysis as derived metadata

Fetch /api/public/v1/analysis/universities/{slug}.json only as deterministic derived metadata. Always cite the basis claim IDs and source URLs for non-empty analysis dimensions.

Step4

Endpoint families

Records, releases, widgets, feeds, and agent integrations.

Discovery

Public API index with endpoint links, trust pages, citation rules, limitations, and version metadata.

Entity search

Search public university records by canonical name, alias, official source title, claim summary, source domain, or analysis dimension.

Safe search index

Pagefind-ready public search index excluding raw source snapshots, private files, unpromoted staging evidence, and non-authoritative spreadsheet rows.

University claims

One public university record's claim/evidence rows with source URL, source language, snapshot hash, confidence, and review state.

AI tools directory

Derived university AI tool records with tool-level availability, endorsement type, review state, and evidence snippets. Tool records are discovery metadata, not official policy conclusions.

QS 2026 coverage

Collection coverage rows for QS 2026 targets with public, staging-only, missing, source-count, review-state, and next-action fields.

Source health

Source/fetch health metadata for promoted public source snapshots and staging runs. Used for repair planning, not claim publication.

Citation metadata

Machine-readable citation templates, required fields, evidence rules, source rights caveat, and no-advice boundary.

Citation and evidence requirements

Preserve the evidence model when reusing public data.

  • Cite the canonical page URL and public JSON URL together.
  • Keep source URL, language, snapshot hash, evidence snippet, confidence, and review state with claim reuse.
  • Confidence and review state are separate fields.
  • Original-language evidence is canonical.
  • Do not present machine-candidate or needs-review claims as final policy conclusions.
  • Contribution endpoints are metadata only. Public submissions create review tasks through GitHub issue templates, not direct canonical facts.

Embeddable widget contract

Public widgets use the same API contract, with CORS enabled for embeddable widget JSON and entity search.

JavaScript embed

The embed script renders a compact Shadow DOM card and reads only widget-specific public JSON. It links back to canonical tracker pages and avoids unreviewed claim text.

Script/widgets/embed.js

Cross-site use

Widget JSON endpoints and the public entity search endpoint include permissive CORS headers for public embedding and browser-based lookup. Other public API endpoints remain normal same-origin JSON unless separately documented.

CORSWidgets and search

Rate-limit and crawler policy

This is a public fair-use policy, not a paid API SLA.

Suggested limit
60 requests per minute per client for public JSON usage
Client cache
3600 seconds minimum
Bulk use
Use dataset release artifacts instead of repeatedly walking per-university endpoints.
Crawler use
Use the sitemap, llms.txt, dataset manifest, and public API index. Do not bypass robots, login walls, paywalls, or university source-site terms.

This is a public fair-use policy, not a paid API SLA. Limits may be enforced or adjusted as traffic grows.