Haddon Institute for developers and agents
OpenAPI, API catalog, rate limits, and CLI quickstart for integrating with the public Haddon Institute website. Public endpoints are rate limited; use the headers below to self-throttle. Authenticated student systems (Populi) and staff admin APIs are out of scope here.
Quickstart
- Read llms.txt for when to use this site.
- Fetch /.well-known/api-catalog or openapi.json.
- Probe /api/health, then call documented routes (e.g.
GET /api/search?q=admissions). - Optional CLI:
npx haddon-institute health(see repositorycli/haddon-institute.mjs).
Rate limits
POST APIs return X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset (Unix ms), and Retry-After (seconds) on HTTP 429. Chat allows 20 requests per 10 minutes per IP; form endpoints typically allow 3 per 10 minutes unless noted in OpenAPI.
Resources
- OpenAPI 3.1 — Machine-readable HTTP surface (operationId on each operation).
- API catalog (RFC 9727) — Linkset discovery for search, chat, auth, and health.
- HTTP API overview — Human-readable endpoint table and scope notes.
- llms.txt — Site map hints and when-to-use guidance for agents.
- Agent instructions — When to call Haddon vs other sources.
- ARD ai-catalog.json — Capability manifest (MCP card, OpenAPI, chat, catalog).
- auth.md — Agent authentication and registration policy.
- OAuth protected resource (RFC 9728) — How to obtain tokens for protected /api routes.
- OAuth authorization server (RFC 8414) — Issuer, endpoints, and agent_auth block.
- MCP server card — Transport endpoint and capabilities for site chat.
- Health check — JSON `{ "status": "ok" }` for uptime probes.
Markdown pages
Send Accept: text/markdown with a higher quality value than text/html on any public HTML page (including the homepage) to receive a Markdown representation with Vary: Accept.