Recipes / Monitor a market in a language you don't read
Monitor a market in a language you don't read
/stories in semantic mode. This page is the
operational half — what comes back, how it breaks, and what running it for real takes.
The request
GET /stories
?q=<topic, in English>
&mode=semantic
&language=<iso639-3>
&from=<now - 3d> As a call you can paste:
curl -s -G "https://api.unzoi.com/stories" \
-H "x-api-key: $UNZOI_KEY" \
--data-urlencode "q=<topic, in English>" \
--data-urlencode "mode=semantic" \
--data-urlencode "language=<iso639-3>" \
--data-urlencode "from=<now - 3d>"
For an agent rather than a script, the same query is the list_stories
MCP tool with these as its arguments.
Parameters used here
What comes back
Results in the target language with headlines in their original script. Set text direction per result when rendering, or right-to-left headlines will display with punctuation on the wrong side.
Field by field: the /stories response reference.
How this goes wrong
Assuming English-language coverage of a country substitutes for that country's own press. It is thinner, later, and selected for what interests an outside audience — which is precisely the wrong filter if you are monitoring for risk.
Adapting it
To cover a region rather than a country, query several languages over the same window and merge — for the Balkans that means Serbian, Croatian and Bosnian together, since mutually intelligible coverage is split across separate language facets and any one of them alone gives a partial picture. Serbian additionally needs care because it is written in two scripts and a single-script keyword query silently returns roughly half the coverage.
Running it for real
Have someone who reads the language spot-check the results monthly. Semantic matching across languages is good but not transparent, and the failure mode is quiet: plausible results that systematically miss a subject area. A thirty-minute review each month catches drift that no automated metric will, and it is the only real safeguard when nobody on the team can read the output.
Related recipes
Why this approach
The case for these parameters over the obvious alternatives — and when this recipe is the wrong tool entirely — is on the recipe's page on unzoi.com. It is kept there rather than repeated here, so the argument and the operations cannot drift apart.