curl -X POST https://win.oneshotagent.com/v1/tools/lookup/product-cosmetic-adverse-events \
-H "Content-Type: application/json" \
-H "payment-signature: <base64 x402 payment>" \
-d '{
"product_name": "dry shampoo"
}'
const response = await fetch("https://win.oneshotagent.com/v1/tools/lookup/product-cosmetic-adverse-events", {
method: "POST",
headers: {
"Content-Type": "application/json",
"payment-signature": paymentProof,
},
body: JSON.stringify({
"product_name": "dry shampoo"
}),
});
const result = await agent.tool('lookup/product-cosmetic-adverse-events', {
product_name: 'dry shampoo'
});
console.log(result.result);
console.log(result.evidence);
{
"success": true,
"data": {
"request_id": "uuid",
"receipt_id": "rcpt_...",
"status": "completed",
"tool": "product_cosmetic_adverse_events",
"result": {
"product_name": "dry shampoo",
"reactions": [
{
"reaction": "Alopecia",
"reports": 55
},
{
"reaction": "Pruritus",
"reports": 42
},
{
"reaction": "Headache",
"reports": 17
},
{
"reaction": "Rash",
"reports": 14
},
{
"reaction": "Dry Skin",
"reports": 12
},
{
"reaction": "Erythema",
"reports": 12
},
{
"reaction": "Pain",
"reports": 11
},
{
"reaction": "Skin Ulcer",
"reports": 10
},
{
"reaction": "Burning Sensation",
"reports": 9
},
{
"reaction": "Dyspnoea",
"reports": 9
}
],
"outcomes": [
{
"outcome": "Other Serious or Important Medical Event",
"reports": 28
},
{
"outcome": "Hospitalization",
"reports": 10
},
{
"outcome": "Disability",
"reports": 8
},
{
"outcome": "Life Threatening",
"reports": 4
},
{
"outcome": "Required Intervention",
"reports": 3
},
{
"outcome": "Death",
"reports": 2
}
]
},
"evidence": {
"source": "US Food and Drug Administration",
"source_kind": "public",
"retrieved_at": "2026-10-28T20:34:14.260Z",
"calls": [
{
"retrieved_at": "2026-10-28T20:34:14.260Z"
},
{
"retrieved_at": "2026-10-28T20:34:14.260Z"
}
],
"as_of": "2025-08-31"
}
}
}
Health
Cosmetic Adverse Events
List reactions and outcomes reported for a cosmetic product, with report counts.
POST
/
v1
/
tools
/
lookup
/
product-cosmetic-adverse-events
curl -X POST https://win.oneshotagent.com/v1/tools/lookup/product-cosmetic-adverse-events \
-H "Content-Type: application/json" \
-H "payment-signature: <base64 x402 payment>" \
-d '{
"product_name": "dry shampoo"
}'
const response = await fetch("https://win.oneshotagent.com/v1/tools/lookup/product-cosmetic-adverse-events", {
method: "POST",
headers: {
"Content-Type": "application/json",
"payment-signature": paymentProof,
},
body: JSON.stringify({
"product_name": "dry shampoo"
}),
});
const result = await agent.tool('lookup/product-cosmetic-adverse-events', {
product_name: 'dry shampoo'
});
console.log(result.result);
console.log(result.evidence);
{
"success": true,
"data": {
"request_id": "uuid",
"receipt_id": "rcpt_...",
"status": "completed",
"tool": "product_cosmetic_adverse_events",
"result": {
"product_name": "dry shampoo",
"reactions": [
{
"reaction": "Alopecia",
"reports": 55
},
{
"reaction": "Pruritus",
"reports": 42
},
{
"reaction": "Headache",
"reports": 17
},
{
"reaction": "Rash",
"reports": 14
},
{
"reaction": "Dry Skin",
"reports": 12
},
{
"reaction": "Erythema",
"reports": 12
},
{
"reaction": "Pain",
"reports": 11
},
{
"reaction": "Skin Ulcer",
"reports": 10
},
{
"reaction": "Burning Sensation",
"reports": 9
},
{
"reaction": "Dyspnoea",
"reports": 9
}
],
"outcomes": [
{
"outcome": "Other Serious or Important Medical Event",
"reports": 28
},
{
"outcome": "Hospitalization",
"reports": 10
},
{
"outcome": "Disability",
"reports": 8
},
{
"outcome": "Life Threatening",
"reports": 4
},
{
"outcome": "Required Intervention",
"reports": 3
},
{
"outcome": "Death",
"reports": 2
}
]
},
"evidence": {
"source": "US Food and Drug Administration",
"source_kind": "public",
"retrieved_at": "2026-10-28T20:34:14.260Z",
"calls": [
{
"retrieved_at": "2026-10-28T20:34:14.260Z"
},
{
"retrieved_at": "2026-10-28T20:34:14.260Z"
}
],
"as_of": "2025-08-31"
}
}
}
Lists the reactions and outcomes most often named in adverse event reports about cosmetic products sent to the US Food and Drug Administration, with the number of reports naming each. Reports are unverified, a report does not show that the product caused the reaction, and the source says its data must not guide medical care.
Authentication
Requires x402 payment in thepayment-signature header.
Request Body
string
required
Cosmetic product name, matched as a phrase. 2 to 100 characters.
integer
The most reactions to return. From 1 to 25. Defaults to
10.Response (200 OK)
Top-level envelope:success (boolean) and data (object). All fields below are nested under data.
string
Durable job ID for audit and lookup
string
Job status:
completedstring
Always
product_cosmetic_adverse_eventsobject
The answer, described under Result below
object
Where the answer came from and when
string
The public body the data comes from. Always
US Food and Drug Administration.string
public when the data comes from a public body, commercial otherwisestring
When the lookup was made, as an ISO 8601 UTC time
string | null
When the source says the fact was last updated, or
null when the source gives no dateResult
Nested underdata.result.
string
Product name.
object[]
Reactions.
string
Reaction.
number
Reports.
object[]
Outcomes.
string
Outcome.
number
Reports.
curl -X POST https://win.oneshotagent.com/v1/tools/lookup/product-cosmetic-adverse-events \
-H "Content-Type: application/json" \
-H "payment-signature: <base64 x402 payment>" \
-d '{
"product_name": "dry shampoo"
}'
const response = await fetch("https://win.oneshotagent.com/v1/tools/lookup/product-cosmetic-adverse-events", {
method: "POST",
headers: {
"Content-Type": "application/json",
"payment-signature": paymentProof,
},
body: JSON.stringify({
"product_name": "dry shampoo"
}),
});
const result = await agent.tool('lookup/product-cosmetic-adverse-events', {
product_name: 'dry shampoo'
});
console.log(result.result);
console.log(result.evidence);
{
"success": true,
"data": {
"request_id": "uuid",
"receipt_id": "rcpt_...",
"status": "completed",
"tool": "product_cosmetic_adverse_events",
"result": {
"product_name": "dry shampoo",
"reactions": [
{
"reaction": "Alopecia",
"reports": 55
},
{
"reaction": "Pruritus",
"reports": 42
},
{
"reaction": "Headache",
"reports": 17
},
{
"reaction": "Rash",
"reports": 14
},
{
"reaction": "Dry Skin",
"reports": 12
},
{
"reaction": "Erythema",
"reports": 12
},
{
"reaction": "Pain",
"reports": 11
},
{
"reaction": "Skin Ulcer",
"reports": 10
},
{
"reaction": "Burning Sensation",
"reports": 9
},
{
"reaction": "Dyspnoea",
"reports": 9
}
],
"outcomes": [
{
"outcome": "Other Serious or Important Medical Event",
"reports": 28
},
{
"outcome": "Hospitalization",
"reports": 10
},
{
"outcome": "Disability",
"reports": 8
},
{
"outcome": "Life Threatening",
"reports": 4
},
{
"outcome": "Required Intervention",
"reports": 3
},
{
"outcome": "Death",
"reports": 2
}
]
},
"evidence": {
"source": "US Food and Drug Administration",
"source_kind": "public",
"retrieved_at": "2026-10-28T20:34:14.260Z",
"calls": [
{
"retrieved_at": "2026-10-28T20:34:14.260Z"
},
{
"retrieved_at": "2026-10-28T20:34:14.260Z"
}
],
"as_of": "2025-08-31"
}
}
}
See Pricing for this tool’s price. A wallet (x402) call receives it in the 402 quote before anything is charged; a call paid from prepaid credits is charged when the API accepts the request and answers
200.Notes
- The name matches any product named on a report, including products the reporter did not suspect; common words can match unrelated reports.
- One report can name several reactions and outcomes. The source updates infrequently; as_of gives its date.
- For drugs use Drug Adverse Events; for devices use Device Adverse Events.
- Results return inline. The finished job stays available at
/v1/requests/{request_id}