no key · no human

Built for agents, not for dashboards

Every other news API requires an API key. An agent cannot get one — it has no email inbox, it will not clear a captcha, it cannot accept terms of service and it has no card to enter. A key means a human has to be in the loop. We removed the key.

bash
curl "https://freenewsapi.ai/v1/search?q=your+question&date=24h&size=5"

That is the entire integration. There is no second step.

The thing worth knowing

We called ten leading news APIs with no key on 18 August 2026. Every one refused:

ServiceResponse without a key
newsapi.org401 apiKeyMissing
gnews.io400 You did not provide an API key
newsdata.io401 The API Key is missing
thenewsapi.com401 invalid_api_token
mediastack.com401 missing_access_key
apitube.io401 ER0201
worldnewsapi.com401 You are not authorized
currentsapi.services401 Authentication required
goperigon.com401 API key not found
freenewsapi.io401 Missing API key
freenewsapi.ai200 results

You can reproduce all eleven yourself in a minute. That is the point — it is a fact, not a claim. Full comparison.

Wire it up

One thing we ask, and cannot enforce. Send an X-Agent header with your agent's name, framework and model. It is entirely optional and nothing is throttled without it — but an open API usually closes because its operators cannot see who is using it, and this is how that stays unnecessary. The convention, in full →

Four things that matter when a model is the caller

1. Provenance, not just data

Every article says how its country and date were derived, through country_source and date_source. Roughly a third of country values are inferences. Other APIs return the inference as a fact; we label it, so an agent can decide whether to rely on it. If you are counting by country rather than reading, add strict_country=true.

2. Full text is free

Competitors put the article body behind the top tier. For retrieval-augmented generation that is the difference between useful and useless — a headline is not grounding. full_text=true is open to everyone here.

3. Predictable freshness

New articles land once an hour. Not "real time", not "streaming" — hourly, and we publish every batch as it lands, so an agent can know how stale its view is rather than guess. Sort by crawled to poll; it never moves backwards.

4. Errors written as instructions

Every error is documented in terms of what the caller should do next, not what went wrong internally. 4xx means do not retry; 5xx means back off. That rule is all an agent needs.

Machine-readable entry points

PathWhat it is
/llms.txt Short orientation: what this service is and how to call it. Start here.
/llms-full.txt Entire documentation as one plain-text file, for loading into context.
/openapi.json OpenAPI 3.1 schema. Generate a client, or hand it to a tool-calling framework.

MCP is next. A Model Context Protocol server at /mcp, with search_news, get_article and news_stats as native tools, is the next thing we ship. Until then the tool definitions below drop straight into any framework. Progress lands on the changelog.