Skip to main content

Python SDK for the ALETHEIA Safety Database API — chemical safety data for 1,800+ compounds

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aletheia_safety-0.2.0.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aletheia_safety-0.2.0-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

Details for the file aletheia_safety-0.2.0.tar.gz.

File metadata

  • Download URL: aletheia_safety-0.2.0.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for aletheia_safety-0.2.0.tar.gz
Algorithm Hash digest
SHA256 1e8ce355d03db7fa57ad22d18142a57ff43d85fffa29a02438f485974652d1e2
MD5 70a26b1a33c61be6155a4c3c9bd05cd1
BLAKE2b-256 42e1a266830c8740d24bc2055eb9234d6253c3253c3f2b06b11b0348bac6a55f

See more details on using hashes here.

File details

Details for the file aletheia_safety-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for aletheia_safety-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c783150739638acf79223fe6d774c15f82f807227b178389cdd3981e38ed2e2b
MD5 f746b8626b645a100ed58ea3990fa1d5
BLAKE2b-256 8590f761a544a410975ae1c03572790db900425c90cf86df60f491ebdda1a592

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page