Home / Recipes / Monitor trial results, approvals and safety signals
Worked queryMonitor trial results, approvals and safety signals
/stories in semantic mode. The parameters matter less
than the reasoning behind them, so that is most of what is below.
The request
GET /stories
?q=trial results approval regulator safety recall label change
&mode=semantic
&from=<now - 7d> Why these parameters
Coverage here splits between company announcements, regulator statements and trade reporting, each using different vocabulary for the same event. Semantic mode is the only way to catch all three from one query.
The obvious approach, and why it loses
The obvious approach is a keyword query on the molecule or the company name, and it fails in a way that is hard to see. A sponsor's release says the trial met its primary endpoint; the regulator says marketing authorisation was granted; the trade press says cleared. One event, three registers, almost no shared vocabulary — so a keyword query returns whichever phrasing you happened to write and looks complete while missing two thirds of the coverage. Widening it to an OR list of every verb you can think of fails the other way: recall improves, precision collapses, and the feed fills with routine corporate communications that borrow the same language. Semantic matching over a short list of concepts is the option that fails visibly rather than silently.
When it returns too much, or too little
Too much usually means the query is pulling corporate communications rather than clinical or regulatory events. Add the healthcare signal with a lower bound around 0.2, which weights toward pieces genuinely about treatment and care rather than pieces that mention a pharmaceutical company in passing. Too little is nearly always the window rather than the terms: approvals and safety notices are reported in a single burst and then not again, so a 24-hour window regularly lands between events and returns nothing at all. Widen to seven or fourteen days before touching the query. If a named trial or molecule returns nothing at any window, that is an absence of coverage rather than a query fault, and loosening further only buys noise.
How you would know it is working
Take five approvals, label changes or safety notices from the last quarter that you already know about, and check whether this query would have surfaced each one and how long it took. That is a recall test against a known answer, which is the only kind worth running here. Then read a week of output and count how many items were company communications rather than events; above about half, raise the signal threshold rather than rewriting the query. The number to track over time is the share of items a subject-matter reader marks worth reading, sampled quarterly. Volume moves with the conference and results calendar and will tell you nothing about whether the monitor is still working. Record which of the three registers each surfaced item came from — sponsor, regulator or trade press — because a monitor that has quietly collapsed to company announcements looks healthy on volume and has stopped doing the job.
When this is the wrong tool
Nothing retrieved this way is a clinical or regulatory source. It tells you what is being reported, which is a different question from what is true, and the gap is widest exactly where the stakes are highest.
Running it for real
Response fields, failure modes, adaptations and scheduling cost: Monitor trial results, approvals and safety signals, in the docs.