Free for academic research. Bearer-auth across every endpoint.
Fonteum grants free .edu/.gov API access in exchange for the standard academic citation. Same auth pattern as paid tiers (Authorization: Bearer); rate limits scale with your tier. This page covers signup, key usage, rate limits, and code samples for the four most common languages in research.
.edu / .gov email + citation TOS.
- Visit /signup/researcher and submit your institutional email + citation TOS acceptance.
- Copy the API key shown ONCE on the success page (we don’t store the plaintext).
- Click the activation link in your email (24h expiry).
- Start using your key on any
/api/v1/*endpoint.
Allowlisted domains: .edu, .gov, .ac.uk, .ac.jp, .ac.kr, .ac.za, .edu.au, .edu.cn, .edu.sg, .edu.hk, .edu.tw, .edu.in. For non-academic-domain institutional access, contact our team via /contact.
Authorization: Bearer header.
Every request to https://fonteum.com/api/v1/* requires the Bearer header:
Authorization: Bearer fnt_<your-key>Same header pattern across all tiers (researcher / standard / institutional). The key’s tier is server-side metadata; consumers don’t need to pick a header per tier.
Tier scales the per-minute + per-day window.
- Anonymous (no Authorization header): 60 req/min, 1,000 req/day per IP.
- Researcher (Bearer key tier=researcher, email_verified): 300 req/min, 10,000 req/day per key.
- Standard (paid Bearer key): negotiated per agreement.
- Institutional (reserved for future enterprise tier).
Rate-limit headers on every response surface the current usage:
X-RateLimit-Limit-Minute: 300
X-RateLimit-Remaining-Minute: 287
X-RateLimit-Limit-Day: 10000
X-RateLimit-Remaining-Day: 9942
X-RateLimit-Reset-At: 2026-05-10T17:42:31.000ZOn 429 (rate-limit exceeded), responses include Retry-After in seconds. Back off + retry per the standard HTTP pattern.
Cite Fonteum in any publication that uses the API.
Researcher signups accept the citation TOS at signup time (an explicit checkbox; the version is recorded on the api_keys row). The model relies on academic norms — no bot-driven enforcement, no retroactive takedowns. Three citation formats (APA, AMA, BibTeX) at /cite.
For papers that need version-specific reproducibility, cite the specific methodology version your data came from. Every version bump is dated and logged on /methodology/changelog, and each snapshot is SHA-256 attested in the public chain at /chain.
For shell scripting + ad-hoc lookups.
# Resolve an NPI to its canonical PECOS-ID
curl -H "Authorization: Bearer fnt_..." \
https://fonteum.com/api/v1/identity/nppes/1245319599
# Aggregate identity stats
curl -H "Authorization: Bearer fnt_..." \
https://fonteum.com/api/v1/identity/stats
# Snapshot integrity check
curl -H "Authorization: Bearer fnt_..." \
https://fonteum.com/verify/123stdlib fetch.
// Node 18+ (built-in fetch)
const KEY = process.env.FONTEUM_API_KEY; // fnt_...
const res = await fetch("https://fonteum.com/api/v1/identity/nppes/1245319599", {
headers: { Authorization: `Bearer ${KEY}` },
});
if (!res.ok) {
console.error("API error:", res.status, await res.text());
process.exit(1);
}
const data = await res.json();
console.log(data);stdlib + requests.
# Python 3.10+ (stdlib + requests)
import os
import requests
KEY = os.environ["FONTEUM_API_KEY"] # fnt_...
res = requests.get(
"https://fonteum.com/api/v1/identity/nppes/1245319599",
headers={"Authorization": f"Bearer {KEY}"},
)
res.raise_for_status()
print(res.json())httr + jsonlite.
# R 4.0+ (httr + jsonlite)
library(httr)
library(jsonlite)
key <- Sys.getenv("FONTEUM_API_KEY") # fnt_...
res <- GET(
"https://fonteum.com/api/v1/identity/nppes/1245319599",
add_headers(Authorization = paste("Bearer", key))
)
stop_for_status(res)
data <- fromJSON(content(res, "text", encoding = "UTF-8"))
print(data)For analyst stacks: pull any dataset as CSV/JSON from Fonteum's /data-catalog or query the FHIR R4 API directly from R / Python / SQL over plain HTTP — no SDK or package install required.
Phase 1 ships the tier. Phases 2-3 add discovery + lifecycle.
- Phase 1 (this wave): signup flow + activation email + Bearer auth + 300/10000 rate limits + /cite + /researchers + this page.
- §sprint3-citation-discovery-pipeline (queued): automated detection of papers citing Fonteum via OpenAlex API. Auto-populates /researchers featured-citations list.
- §sprint3-orcid-integration (queued): attested researcher identity via ORCID OAuth.
- §sprint3-researcher-key-rotation (queued): per-researcher key rotation UI (current: lost keys → operator re-issues).
- §sprint3-tier-expansion (queued): additional tiers (institutional / press).