Python SDK for the ALETHEIA Safety Database API — chemical safety data for 1,880+ compounds with typed responses
Project description
aletheia-safety
Python SDK for the ALETHEIA Safety Database API — chemical safety data for 1,800+ compounds, 950+ materials, and 520+ consumer products.
Install
pip install aletheia-safety
Quick Start
from aletheia_safety import Aletheia
# Free tier (200 requests/day per IP)
client = Aletheia()
# Or with an API key for higher limits
client = Aletheia(api_key="aletheia_live_…")
Usage
Look up compounds
# By HQ ID
glyphosate = client.compound("hq-c-org-000001")
print(glyphosate["name"]) # "Glyphosate"
# By CAS number
bpa = client.compound_by_cas("80-05-7")
# With safety context
risk = client.compound("hq-c-org-000001", context="human_adult")
# Batch lookup (up to 20)
results = client.batch(["hq-c-org-000001", "hq-c-org-000005"])
Search
# Full-text search across all entity types
results = client.search("sodium")
# Filter by type
compounds = client.search("sodium", type="compound", limit=10)
# Filter by risk level and context
high_risk = client.filter(risk="high", context="food_contact")
# Filter by regulatory agency
epa = client.filter(agency="EPA", year_min=2020)
Compare compounds
# Side-by-side comparison (2-5 compounds)
comparison = client.compare(
["hq-c-org-000001", "hq-c-org-000005"],
context="human_adult"
)
Explore relationships
# Direct relationships
rels = client.relationships("hq-c-org-000001")
# Multi-hop graph traversal
graph = client.graph("hq-c-org-000001", depth=2)
print(f"{len(graph['nodes'])} nodes, {len(graph['edges'])} edges")
Regulatory data
# Classifications for a compound
reg = client.regulatory("hq-c-org-000001")
# All agencies
agencies = client.regulatory_agencies()
# Compounds classified by a specific agency
iarc = client.regulatory_by_agency("IARC")
Exposure sources
# Where a compound is found
sources = client.found_in("hq-c-org-000001")
# All categories
cats = client.found_in_categories()
# Compounds in a category
food = client.found_in_by_category("Food")
Products & Materials
products = client.products(limit=50)
product = client.product("hq-p-hom-000001")
materials = client.materials(limit=50)
material = client.material("hq-m-str-000001")
Fragrance ingredients
fragrances = client.fragrance(limit=50)
classes = client.fragrance_classes()
results = client.fragrance_search("lavender")
Embeddable badge
url = client.badge_url("hq-c-org-000001")
# Use in HTML: <img src="{url}" alt="Safety badge"/>
Key management
status = client.key_status()
print(f"Tier: {status['tier']}, Used: {status['usage']['today']}")
Tiers
| Tier | Requests/Day | Price |
|---|---|---|
| Public | 200/IP | Free |
| Developer | 10,000 | $29/mo |
| Pro | 100,000 | $99/mo |
| Enterprise | Unlimited | Contact |
Get an API key at aletheia.holisticquality.io/pricing.
Error Handling
from aletheia_safety import Aletheia, AletheiaError, RateLimitError
client = Aletheia()
try:
compound = client.compound("invalid-id")
except RateLimitError:
print("Rate limit exceeded — wait or upgrade your tier")
except AletheiaError as e:
print(f"API error {e.status}: {e}")
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aletheia_safety-0.3.0.tar.gz.
File metadata
- Download URL: aletheia_safety-0.3.0.tar.gz
- Upload date:
- Size: 19.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0eba739a7727ce0840907e8db082f04f58d61e41901763a7a2f9220931f25dcb
|
|
| MD5 |
a4d24fe4149f8b3603a29b51a3cb1d40
|
|
| BLAKE2b-256 |
6da26494e98e520af57c72689166b11434bc89622c558da2e9f0977f779980dd
|
File details
Details for the file aletheia_safety-0.3.0-py3-none-any.whl.
File metadata
- Download URL: aletheia_safety-0.3.0-py3-none-any.whl
- Upload date:
- Size: 18.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ead1204b0ee688f8d086a4c17e726703d20cad7a4dd616edb9ec0794bcad1366
|
|
| MD5 |
118d517480e6623e6f571f3e7c31e4e2
|
|
| BLAKE2b-256 |
b0ae0a25740a0b001c56e484325b12ac73dee42d0988e411a6bcf40f7eb059d7
|