ALETHEIA Safety API

Chemical safety data,
structured for machines.

1,183 compounds. 262 materials. 237 products. Regulatory classifications, exposure pathways, risk profiles, and synthesis across IARC, EPA, EFSA, and ATSDR — delivered as clean JSON.

Get API Key Read Docs

Basic compound lookup is free. No key required.

1,183 Compounds
262 Materials
237 Products
8 Regulatory Bodies
49 Exposure Categories
6,921 Tests Passing

What developers build with this

🧴

Ingredient checkers

Look up cosmetic or food ingredients by name or CAS number. Surface regulatory flags automatically.

🐾

Pet safety apps

The database has species-specific risk contexts for dogs and cats across hundreds of household chemicals.

🏭

Product compliance

Batch-check materials or compounds against IARC, EU REACH, EPA classifications before sourcing decisions.

📊

Research tooling

Query regulatory disagreements across agencies. See where IARC, EPA, and EFSA diverge on the same compound.

🏥

Clinical decision support

Poison control lookups, exposure pathway data, and dose-response context for clinical tooling.

🌊

Environmental monitoring

Aquatic life risk contexts, degradation data, and persistence classifications for environmental work.

One request. Full safety context.

The free endpoint returns a complete risk synthesis for any compound. No key required.

Request
# Free — no API key needed
curl https://api.aletheia.holisticquality.io/api/compound/hq-c-0001?context=human_adult

# With API key — unlocks full database
curl -H "X-API-Key: aletheia_live_..." \
  "https://api.aletheia.holisticquality.io/api/compounds?context=dog&risk_level=high"
Response (truncated)
{
  "hq_id": "hq-c-0001",
  "name": "Glyphosate",
  "context": "human_adult",
  "risk_profile": {
    "magnitude": {
      "mean": 0.360,
      "confidence_interval_95": [0.082, 0.638],
      "source_positions": [
        { "source": "IARC", "value": 0.750, "weight": 0.680 },
        { "source": "EPA",  "value": 0.150, "weight": 0.820 }
      ]
    },
    "consensus": {
      "exists": false,
      "disagreement_magnitude": 0.422
    }
  },
  "interpretation": {
    "summary": "Regulatory agencies show substantial disagreement..."
  }
}

The free tier is real.

/api/compound/:id requires no key, no account, no rate limit. That's 1,183 compounds available to anyone, permanently. Paid tiers unlock the full query surface — paginated lists, batch lookups, CAS search, regulatory filters, and exposure category queries. See what's included →


API Reference

Base URL: https://api.aletheia.holisticquality.io

Endpoints

GET /api/compound/:id FREE

Synthesize risk profile for a compound. No API key required.

Params: ?context=human_adult  |  ?all_contexts=true

GET /api/health FREE

Health check and system status.

GET /api/compounds API KEY

Paginated list of all compounds. Supports ?context=, ?risk_level=, ?limit=, ?offset= filters.

GET /api/compound/cas/:cas API KEY

Look up a compound by CAS registry number.

POST /api/compounds/batch API KEY

Fetch up to 50 compounds in a single request. Body: {"ids": ["hq-c-0001", "hq-c-0006"]}

GET /api/compound/:id/contexts API KEY

List all available risk contexts for a specific compound.

GET /api/contexts API KEY

List all valid contexts with descriptions and compound counts.

GET /api/regulatory/:id API KEY

All regulatory classifications for a compound across IARC, EPA, EFSA, NTP, NIOSH, OSHA, EU, UNEP.

GET /api/regulatory/agencies API KEY

All regulatory agencies in the database with classification counts.

GET /api/regulatory/by-agency/:agency API KEY

All compounds classified by a specific agency. Params: ?limit=100

GET /api/found-in/:id API KEY

All exposure categories and sources for a compound across 49 categories.

GET /api/found-in/categories API KEY

All exposure categories with compound counts.

GET /api/found-in/by-category/:category API KEY

All compounds found in a specific exposure category (drinking water, food, pet products, etc.).

GET /api/keys/status API KEY

Check your key's tier, daily usage, and remaining requests.

POST /api/keys/recover FREE

Recover a lost API key. Body: {"email": "you@example.com"}. Rate limited to 3/hour.

Valid Contexts

Pass as ?context= query parameter. Not all compounds have all contexts — use /api/compound/:id/contexts to check.

Response Format

{
  "hq_id": "hq-c-0001",
  "name": "Glyphosate",
  "context": "human_adult",

  "risk_profile": {
    "magnitude": {
      "mean": 0.360,
      "std_dev": 0.284,
      "confidence_interval_95": [0.082, 0.638],
      "source_positions": [
        {"source": "IARC", "value": 0.750, "weight": 0.680},
        {"source": "EPA",  "value": 0.150, "weight": 0.820}
      ]
    },
    "consensus": {
      "exists": false,
      "strength": 0.287,
      "disagreement_magnitude": 0.422
    }
  },

  "interpretation": {
    "summary": "Regulatory agencies show substantial disagreement...",
    "confidence_note": "High-quality evidence exists across sources..."
  },

  "sources": [...]
}

The Risk Coordinate System

Every source position exists in 5-dimensional risk space:

When agencies disagree, ALETHEIA doesn't pick sides. It shows you the full distribution.

Data source: safety.holisticquality.io — the HQ Safety Database powering this engine.