hantavir.us
Active outbreaks

Public API Reference — Hantavirus

Overview

Hantavirus.app provides a public, read-only API for programmatic access to outbreak data. The API is built on tRPC and accessible at https://api.hantavir.us.com/api/trpc.

Authentication

The public API is unauthenticated. All read procedures are available without an API key.

Rate limits

  • 60 requests per minute per IP address
  • Rate limit headers included in responses: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset
  • Exceeding limits returns 429 Too Many Requests

tRPC Routers

RouterKey proceduresCache TTL
outbreak.*getCurrent, getBySlug, list, getRiskLevel30s
cases.*getCounts, getTimeSeries30s
regions.*list, byCountry60s
news.*list, getByIdNone
timeline.*list60s (first page)
faqs.*listNone
advisories.*list, byCountryNone
ticker.*list10s

Full procedure documentation is available in the internal API reference.

REST endpoints

For convenience, we also provide REST wrappers:

EndpointMethodDescription
/v1/outbreak/:slugGETGet outbreak header by slug
/v1/outbreaksGETList all active outbreaks
/v1/cases/:slugGETGet case counts for an outbreak

Server-Sent Events (SSE)

StreamDescriptionEvents
/sse/tickerLive news ticker updatestext, severity, link
/sse/ships/:mmsiShip position updateslat, lng, speed, heading

Example: ticker SSE

const source = new EventSource('https://api.hantavir.us.com/sse/ticker');
source.onmessage = (e) => {
  const data = JSON.parse(e.data);
  console.log(data.text, data.severity);
};

Locale support

All locale-aware procedures accept the language via:

  1. hv-locale cookie
  2. Accept-Language header
  3. Default: en

Supported: en, ar (Gulf Khaleeji), fr

For full API details, see the complete API documentation.

Reviewed by: Hantavirus Editorial

Last reviewed: 2026-05-10