Trust summary API
Public, read-only. No authentication required.
Endpoint
GET /api/trust-summary?brand={brand_slug}&product={product_slug}
brandBrand slug (e.g. transparent-labs)
productProduct slug (e.g. creatine-hmb)
Both required. Slugs match the product URL path: /{brand_slug}/{product_slug}.
Example
GET /api/trust-summary?brand=transparent-labs&product=creatine-hmb
{
"product": "Creatine HMB",
"brand": "Transparent Labs",
"status": "verified",
"validClaims": 1,
"activeChallenges": 0,
"totalStaked": 250,
"lastTest": "2025-10-15",
"labs": ["Labdoor"],
"analytes": [
{ "compound": "Creatine Monohydrate", "amount": 5.21, "units": "g" },
{ "compound": "HMB", "amount": 1.5, "units": "g" }
]
}
Response fields
| Field | Type | Description |
|---|---|---|
| status | string | "verified", "unverified", or "challenged" |
| validClaims | number | Verified claims, unchallenged |
| activeChallenges | number | Open challenges pending |
| totalStaked | number | Total USDC staked |
| lastTest | string | ISO date of most recent test |
| labs | string[] | Labs that tested this product |
| analytes | array | Compounds with compound, amount, units |
Errors
400 -- missing parameter. 404 -- brand or product not found.
Free, no auth. Rate limited to 60 requests/minute per IP.