Ang mga News API ay karaniwang ibinebenta bawat request, nakakabit sa key, at limitado sa isang daang calls bawat araw sa free tier. Ang Free News API ay hindi ganun: 21.5 milyon na artikulo sa loob ng 90-araw na rolling window, higit 25,000 publisher, walang key, walang signup, walang quota, pinapayagan ang commercial use. Narito ang buong surface — search, statistics, trends, markets, feeds at MCP — at isang honest na account kung saan nagkakamali ang data.
Ang Hugis ng Problema
Tanungin ang isang AI agent kung ano ang isinusulat ng mundo ngayon at tatlong masamang option ang meron ito. Maaari itong mag-scrape ng mga publisher nang direkta, na fragile, mabagal at may legal na ambiguity. Maaari itong tumawag sa isang commercial news API, na nangangailangan ng account, key, buwanang bill at — sa bawat free tier sa merkado — isang daang requests bawat araw at mga artikulong delayed ng dalawampu't apat na oras. O kaya naman ay maghula mula sa training data na tumigil na noong mga nakalipas na buwan.
Ang Free News API ay nag-aalis ng presyo at paperwork ng gitnang opsyon nang hindi inaalis ang kakayahan nito. Isang GET request, walang credentials, sa isang corpus na sa panahon ng pagsusulat ay may 21,557,044 na artikulo mula sa higit 25,000 publisher, na naka-keep sa isang rolling 90-araw na window at continuously na-refresh — ang pinakabagong artikulo sa index ay karaniwang hindi hihigit sa dalawang minuto ang edad.
Apat na Pangunahing Endpoint, at Paano Pa
Ang core ng serbisyo ay apat na GET na endpoint, lahat ay nasa https://freenewsapi.ai, lahat ay nagre-return ng UTF-8 JSON na may Access-Control-Allow-Origin: * upang ang code ng browser ay maaari itong tawagan nang direkta, at lahat ay nagre-report ng server-side na oras sa took_ms.
| Endpoint | Ano ang tinutugon nito |
|---|---|
GET /v1/search | Full-text search na may mga filter. Ito ang endpoint na ginagamit mo sa 95% ng mga pagkakataon. |
GET /v1/stats | Aggregated na mga count para sa anumang slice — ayon sa bansa, wika, TLD, publisher, at araw. |
GET /v1/article | Isang artikulo sa eksaktong URL, kasama ang buong teksto nito. |
GET /health | Liveness kasama ang kasalukuyang bilang ng mga dokumento. Sapat na mura para sa pag-poll. |
Sa paligid ng core na iyon ay may apat pang pamilya, na ang bawat isa ay maaaring maging produktong mag-isa sa ibang lugar: trends (pagpupulong ng mga buong kwento base sa bansa), markets (serye ng presyo na inayos laban sa dami ng coverage), crypto sentiment (isang Bitcoin block na may pitong endpoint), at syndication (parehong search na inihahatid bilang RSS, Atom o JSON Feed). Lahat ng ito ay sakop sa ibaba.
curl "https://freenewsapi.ai/v1/search?q=climate+summit&size=2"{
"took_ms": 41,
"total": 1284,
"total_is_lower_bound": false,
"size": 2,
"offset": 0,
"results": [
{
"id": "9c1f8a4b2d3e5f6071829304a5b6c7d8",
"url": "https://example-news.com/world/climate-summit-opens",
"title": "Climate summit opens with a call for binding targets",
"description": "Delegates from 190 countries gathered on Monday ...",
"published_at": "2026-08-17T09:12:00Z",
"crawled_at": "2026-08-17T10:48:31Z",
"host": "example-news.com",
"sitename": "Example News",
"country": "GB",
"country_source": "cctld",
"lang": "en",
"tld": "com"
}
]
}Tatlong field sa tugon na ito ay kailangang bigyang-pansin agad, dahil sila ang nag-eencode ng katapatan ng buong dataset. Ang total_is_lower_bound ay nagpapahiwatig kung kailan na-hit ng bilang ng match ang 10,000 ceiling at huminto sa pagbilang. Ang country_source ay nagpapahiwatig kung paano natukoy ang bansa — dahil sa anumang dataset ng balita, malaking bahagi ng mga halaga ng bansa ay mga inferensya, hindi mga katotohanan. At ang crawled_at ay ang mapagkakatiwalaang timestamp: ang mga publisher ay karaniwang nagbabackdate ng published_at, ngunit ang oras ng crawl ay itinakda ng pipeline at laging tumatagal pa lang.
Search: Bawat Parameter na May Kahulugan
Lahat ng parameter ay optional. Ang walang laman na tawag ay nagbabalik ng pinakabagong mga artikulo sa index.
Ang query
- q Ihahambing sa pamagat (timbang 3), deskripsyon (timbang 2) at ang katawan ng artikulo. AND semantics — kailangang nasa loob ang bawat termino, kaya ang pagdaragdag ng isang salita ay nagpapaliit kaysa sa pagpapalawak. Maximum na 500 characters.
opec production cut ay gumagana. Ang what did OPEC decide about oil ay nagbabalik ng walang resulta.Ang mga filter
Ang mga filter ay pinagsasama sa AND across parameters at OR within one. Kaya ang country=DE,AT&lang=de ay binabasa bilang "mga artikulo sa wikang Aleman mula sa Germany o Austria". Ang bawat isa ay tumatanggap ng comma-separated na listahan ng hanggang limampung halaga.
| Filter | Formato | Mga Tala |
|---|---|---|
country | ISO 3166-1 alpha-2, uppercase | Bansa ng publisher. Derived, not declared — tingnan ang country_source at strict_country. |
lang | ISO 639-1, lowercase | Nadetect mula sa dokumento mismo. 99.9% coverage. |
tld | walang dot | Domain zone ng publisher. tld=ua ay isang fact; country=UA ay isang inference. |
host | exact hostnames | Gaya ng makikita sa URL — isama ang www. kung ginagamit ito ng publisher. |
date | ngayon · kahapon · 24h · 48h · 7d · 30d | Takdang panahon, sinusuri batay sa published_at. |
from / to | Mga petsang ISO | Espesipikong bintana kung hindi angkop ang mga preset. |
strict_country | tama/mali | Bilangin lamang ang mga artikulo kung ang bansa nito ay isang matibay na katotohanan at hindi isang inferensya. |
Kontrol sa output
| Parameter | Mga Halaga | Epekto |
|---|---|---|
sort | petsa · petsa_asc · crawled · crawled_asc · relevance | I-sort ayon sa crawled kapag nagpo-poll para sa mga bagong artikulo — ang mga publisher ay nagbabalik-taas ng oras ng publikasyon; ang oras ng pag-crawl ay sumusunod lamang sa direksyon ng paglipas ng panahon. |
size | 1–100 | Bilang ng mga resulta bawat pahina. |
offset | 0–9900 | Pag-offset sa paghahati ng pahina. |
full_text | tama/mali | Isama ang katawan ng artikulo. Naka-off nang default. |
highlight | tama/mali | Ibalin ang mga bahagi na tumugma. |
fields | CSV | I-trim ang tugon sa mga field na talagang iyong ginagamit. |
curl "https://freenewsapi.ai/v1/search?country=UA&lang=uk&date=today&sort=date&size=10"curl "https://freenewsapi.ai/v1/search?q=merger&country=DE&date=48h&sort=date&size=20"Pagbibilang Bago Maghanap
Ang pinaka-kakalimutang endpoint sa serbisyo ay /v1/stats. Madalas, ang kapaki-pakinabang na katanungan ay hindi "ano ang mga artikulo" kundi "mayroon bang kahit ano dito, at nasaan ito". Ang pagbibilang ng mga tugma ay sumasagot dito sa isang bahagyang halaga ng gastusin — humigit-kumulang dalawang daan na tokens laban sa ilang libo para sa isang pahina ng mga resulta — na nagpapakita ito bilang ang tamang unang tawagan para sa isang agent na nagpapasiya kung kailangan ba talagang patakbuhin ang paghahanap.
curl "https://freenewsapi.ai/v1/stats?q=earthquake&date=7d"Ito ay nagbabalik ng mga bilang ayon sa bansa, wika, TLD, publisher, at araw, na kinakalkula sa buong set ng mga tugma sa halip na sa kasalukuyang pahina. Ito rin ang paraan upang sukatin ang coverage bago ito tiwalaan. Ang walang filter na snapshot sa panahon ng pagsusulat:
Mga pangunahing bansa
| Bansa | Mga Artikulo |
|---|---|
| India | 2,286,014 |
| Estados Unidos | 2,180,797 |
| Turkey | 1,499,897 |
| Russia | 1,436,556 |
| Italya | 1,057,479 |
| Argentina | 826,947 |
| Spain | 812,347 |
| Ukraine | 662,041 |
| Brazil | 551,013 |
| Germany | 543,132 |
| Pransya | 502,846 |
| Griyega | 460,372 |
| Japan | 437,209 |
| Vietnam | 408,934 |
| Mexico | 402,320 |
| Timog Korea | 362,945 |
| Romania | 354,229 |
| United Kingdom | 334,379 |
| Iran | 291,782 |
| Poland | 255,599 |
Pinakamaraming wika
Ingles 5,513,650 · Espanyol 2,699,457 · Ruso 1,785,796 · Turko 1,501,004 · Italyano 992,200 · Aleman 733,677 · Pranses 689,136 · Arabe 664,016 · Portuges 637,607 · Hindi 560,840 · Griyego 466,504 · Hapon 427,085 · Biyetnamita 385,719 · Rumano 358,766 · Tsino 352,720 · Ukranyano 345,809 · Koreano 335,079 · Persyano 268,126 · Polako 238,904 · Bulgaro 183,204.
Ang distribusyong ito ay karapat-dapat na tignan ng sandali, dahil ito ay kabaligtaran ng binibigay ng karamihan sa mga API ng balita. Ang karaniwang corpus na English-first, US-first ay hindi ito: ang India ang may higit na ranking kaysa sa Estados Unidos, ang Turko ang may higit na ranking kaysa sa Aleman, at ang Griyego, Biyetnamita, Persyano at Bulgaro ay may representasyon na may anim na digit. Kung ang iyong katanungan ay tungkol sa isang hindi Ingles na press, ito ay isang makabuluhang iba pang dataset.
Bolyum
Ang araw-araw na kurba sa by_day ay sumasaklaw sa buong siamnapung-araw na window. Ang mga kamakailang araw ay nasa saklaw ng humigit-kumulang 400,000 hanggang 700,000 artikulo kada araw; noong mas maaga sa window, bago idinagdag ang RSS layer kasama ang archive ingest, ang araw-araw na bolyum ay nasa 130,000–230,000. Parehong numero ang nakikita sa parehong tugon, na ang punto — ang serbisyo ay nagpapakita sa iyo ng sarili nitong ramp sa halip na nagbibigay ng marketing average.
Mga Trend: Ano ang Talagang Sinasakop ng Press Ngayon
Ang search ay sumasagot sa "ano ang isinulat tungkol sa X". Ang trends ay sumasagot sa isang iba at madalas na mas magandang katanungan: "ano ang nangyayari" — nang walang kinakailangang X.
Isang robot ay nagkukluster ng mga artikulo sa mga kwento para sa bawat bansa at pinapanatili itong updated. Bawat limang minuto, bagong mga artikulo ay idinadagdag sa kilalang mga kwento sa pamamagitan ng kanilang mga nakakakilanlang salita, nang walang tawag sa model; bawat ilang oras, ang isang bansa ay dadaan sa isang buong pass kung saan ang isang language model ay babasa sa mga headline at pangalanin ang mga kwento mula sa simula. Sa oras ng pagsusulat, ang trend layer ay sumasaklaw sa 115 bansa, bawat isa ay recomputed sa loob ng mga nakaraang ilang minuto.
curl "https://freenewsapi.ai/v1/trends?country=US&window=24h&size=5"{
"window": "24h",
"filters": { "country": ["US"], "min_publishers": 1 },
"trends": [
{
"title": "Hurricane Marie threatens Labor Day weather",
"slug": "hurricane-marie-threatens-labor-day-weather",
"country": "US",
"category": "weather",
"articles": 57,
"publishers": 24,
"first_seen": "2026-09-05T19:24:36Z",
"latest": "2026-09-06T19:00:04Z",
"url": "https://freenewsapi.ai/trends/us/hurricane-marie-…",
"headlines": [ … ]
}
]
}Dalawang bilang ang kasama ng bawat kwento at magkaiba ang kahulugan. Ang articles ay lakas; ang publishers ay lawak. Isang kwento na may 200 artikulo mula sa 4 outlet ay obsesyon ng isang newsroom. Isang kwento na may 60 artikulo mula sa 40 outlet ay isang kaganapan. Ang default na sort ay ayon sa publishers, at ang min_publishers / min_articles ay nagbibigay-daan sa iyo na itakda ang bar sa sarili mong paraan.
Ang mga kwento ay may kategorya mula sa isang itinakdang set: politics, business, markets, tech, sport, health, science, culture, crime, conflict, weather, society.
Ang bintana ay pagpili ng mambabasa, hindi ng robot
Ito ay isang tunay na mahusay na desisyon sa disenyo. Ang bawat artikulo ay isinasaayos kasama ang oras ng paglathala nito at ikinakabit sa kanyang kwento, kaya ang anumang bintana — labindalawang minuto, isang oras, isang araw, isang tiyak na petsa sa kalendaryo — ay simpleng isang query sa saklaw sa parehong naka-save na data. Isang kalkulasyon ang naglilingkod sa lahat ng bintana sabay-sabay. Ang window=15m, window=1h, window=24h, date=2026-09-01, o isang eksplisitong since/until na pares ay lahat ay gumagana sa parehong index nang walang recomputation.
Mga keyword: ang mga salitang batayan ng balita
curl "https://freenewsapi.ai/v1/trends/keywords?country=US&size=8"Ang bawat keyword ay ibinabalik kasama ang bilang ng mga kakaibang kwento na may kasamang ito, ang bilang ng mga artikulo na mayroon ang mga kwentong iyon, at — ang pinaka-interesting — kung ilang pambansang pahayagan ang gumagamit nito. Ang huling bilang na ito ang nagpapakita ng pagkakaiba ng isang pangyayaring pandaigdig at isang lokal. Ang isang salitang lumalabas sa pitong pulong bansa ay isang kwentong pandaigdig; ang isang salitang nangingibabaw sa pahayagan ng isang bansa ay isang kwentong lokal, kahit gaano man ito malakas doon.
Aling bansa ang live
curl "https://freenewsapi.ai/v1/trends/countries"Ibinabalik ang lahat ng tracked na bansa kasama ang bilang ng live na kwento nito at kung ilang minuto ang nakalipas bago ito recomputed — ang Turkey, Russia, Iran, Greece, India, Italy, Ukraine, Romania, Argentina, Germany, at Brazil ay lahat ay kasalukuyang may libo-libong live na kwento bawat isa, na recomputed sa loob ng nakalipas na sampung minuto. At ang /v1/trends/{cc}/{slug} ay nagbubukas ng anumang iisang kwento kasama ang kanyang buong listahan ng mga artikulo.
Mga Market vs. Coverage: Presyo sa Isang Axis, Atensyon sa Iba
Ito ang pinaka-kakaibang bagay sa serbisyo, at ito ay umiiral dahil ang corpus ay halos libre sa paggawa nito. Ilagay ang isang serye ng presyo kasunod ng kung gaano karaming tao ang sumulat tungkol dito sa parehong oras, sa isang timeline.
curl "https://freenewsapi.ai/v1/markets"Apat na instrument ang sinusundan, sa apat na asset class:
| Klase | Mga Instrumento | Grain | Pinagmulan |
|---|---|---|---|
| Crypto | Bitcoin, Ethereum, Solana, XRP, BNB, Dogecoin | oras | Binance |
| Mga Metal | Ginto (USD/oz) | oras | Binance |
| FX | EUR/USD, USD/JPY, USD/TRY, USD/INR, USD/BRL, USD/PLN | araw | ECB |
| Enerhiya | Presyo ng kuryente sa Alemanya (EUR/MWh) | oras | Energy-Charts |
curl "https://freenewsapi.ai/v1/markets/usd-try?window=30d"Ang isang simpleng tawag na iyon ay nagbibigay sa iyo ng lira laban sa dolyar at ang dami ng takdang balita sa Turkish press sa parehong panahon, na iinayos oras-oras. Ang Turkish press ang ikatlong pinakamalaking bahagi ng corpus na ito, na eksaktong dahilan kung bakit ang pagtatalo na iyon ay nagha-hahain ng makabuluhan imbes na ingay.
At isang buong bloke ng sentiment para sa Bitcoin
Ang Bitcoin ay may sariling pamilya na binubuo ng pitong endpoint, dahil ito ang iisang instrumento kung saan palaging pinag-aarguhan ang tono ng balita at ang galaw ng presyo, ngunit bihira itong sinusukat:
| Endpoint | Mga Resulta |
|---|---|
/v1/btc/summary | Pinakabagong presyo, mga kamakailang galaw, at ang tono ng kasalukuyang takdang panahon. |
/v1/btc/price | Mga candlestick ng BTC/USDT ayon sa interval. |
/v1/btc/sentiment | Tono ng balita bawat panahon. |
/v1/btc/series | Presyo at tono na magkasunod sa iisang timeline. |
/v1/btc/correlation | Korelasyon sa pagitan ng tono at galaw ng presyo ayon sa paglipat ng oras — ang takdang panahon ba ang una na sumusunod sa presyo, o kaya naman ay sumusunod ito? |
/v1/btc/news | Mga artikulo tungkol sa crypto na may label ng sentiment, na maaaring i-filter ayon sa label, host, wika, at query. |
/v1/btc/sources | Aling mga outlet ang nagbibigay ng takdang pananaliksik tungkol sa crypto, at paano sila nagpapahiwatig ng kanyang pananaw. |
Ang mga label ng damdamin ay galing sa isang language model na tumatakbo sa mga bagong artikulo tungkol sa crypto bawat limang minuto, laban sa isang na-calibrate na listahan ng barya. /v1/btc/correlation na may max_shift na parameter ang dapat mong puntahan kung nais mong subukan ang pag-claim na "ang balita ang nagdulot ng galaw" imbes na paulit-ulit lamang ito.
Ang Parehong Panghahanap, bilang Isang Feed
Tatlong karagdagang endpoint ang kumuha ng parehong mga parameter ng paghahanap at ikinakalahad ang mga resulta bilang mga format ng syndication imbes na JSON:
GET /v1/rss— RSS 2.0GET /v1/atom— Atom 1.0GET /v1/feed.json— JSON Feed 1.1
https://freenewsapi.ai/v1/rss?q=semiconductor+export+controls&lang=en&date=7d&sort=dateIbigay ng ito na ang anumang naka-save na paghahanap ay nagiging feed na maaari mong i-paste sa isang reader, isang node ng n8n, isang integrasyon ng Slack, isang trigger ng Zapier o isang generator ng static site — nang walang code at walang key. Ito ay isang maliit na feature na tahimik na tinatanggal ang buong layer ng integrasyon para sa mga hindi programmer.
MCP: Walumpung Tools, Dalawang Layer
Ang server ng MCP ay naninirahan sa isang URL, nagsasalita ng Streamable HTTP (JSON-RPC 2.0 sa pamamagitan ng POST, bersyon ng protocol 2025-06-18), sumusuporta sa batching, at — tulad ng lahat ng iba — walang hakbang ng authorization at walang session id.
claude mcp add --transport http freenewsapi https://freenewsapi.ai/mcpIpinapakita nito ang 28 tools sa dalawang malinaw na layer.
Layer isa: anim na shortcuts na sumasagot sa isang buong tanong sa isang tawag
| Tool | Para sa |
|---|---|
search_news | "Ano ang isinulat tungkol sa X" — full-text search, pinagbawas na resulta. |
get_trends | "Ano ang nangyayari" — mga pinagsamang kwento imbes na isang listahan ng mga artikulo. |
trend_keywords | Mga salitang siyang pundasyon ng balita ngayon, kasama ang bilang ng mga kwento at distribusyon sa mga bansa. |
find_publishers | Maghanap ng mga outlet: pangalan, domain, bansa, wika, artikulo bawat araw. |
list_countries | Aling mga bansa ang may buhay na mga kwento, kailan sila, at kung gaano kaba-bago. |
market_vs_news | Isang serye ng presyo kasama ang dami ng coverage. Tawagin nang walang instrument upang makita kung ano ang available. |
Patong na dalawa: bawat endpoint, na nabuo mula sa serbisyo mismo
Sa ilalim ng mga shortcut, bawat raw endpoint ay inilalantad bilang sarili nitong tool na may lahat ng parameter na tinatanggap ng API — news_get_search, news_get_stats, news_get_article, news_get_trends, news_get_trends_keywords, news_get_markets_slug, ang buong pamilya ng news_get_btc_*, ang mga feed renderer, at news_get_health. Ang mga ito ay nabuo mula sa live service, kaya hindi ito maaaring lumayo sa mga tinatanggap na talagang ng API.
Dalawang meta-tool ang nagpapakawala ng loop: ang news_list_endpoints ay ibinabalik ang katalogo ng lahat ng available, at ang news_get ay gumagawa ng raw GET sa anumang path — kaya ang isang agent na makakahanap ng endpoint na hindi sakop ng kanyang listahan ng tools ay maaari pa ring abutin ito.
curl "https://freenewsapi.ai/mcp?format=json"Isang GET, walang handshake, at ikaw ay mayroon ang buong machine-readable na katalogo: server, transport, protocol, bilang ng tools, bawat tool na may deskripsyon, at bawat endpoint na may listahan ng parameter.
Ginawa upang Basahin ng Mga Makina
Ang dokumentasyon ay hindi isang afterthought na nakabitay sa API — ito ay isang first-class output nito. Ang site ay nagpapadala ng 666 static na pahina, at ilang sa mga ito ay umiiral lamang upang ang isang model ay hindi na kailangang basahin ang HTML:
- /openapi.json Ang buong schema ng OpenAPI.
- /llms.txt Isang maikling gabay na file — kung ano ang serbisyo, ang mga endpoint, kung paano mag-query nang maayos, at ang mga error.
- /llms-full.txt Ang buong dokumentasyon bilang isang plain-text file, higit sa isang daan na kilobytes, para ma-ingest ng isang agent ang buong manual sa isang fetch.
- /agents Tatlumpung pahina na direktang nakatuon sa mga agent builders: handang OpenAI function definitions, Anthropic tool-use definitions, system prompts para sa retrieval ng balita, RAG recipes, talahanayan ng gastos sa token, at mga recipe para sa agent.
- /agents/models Code para sa tool-calling para sa bawat pamilya ng model — Qwen, DeepSeek, MiniMax, Kimi, GLM, Doubao, Hunyuan, ERNIE, Yi, Step, GPT, Claude, Gemini, Grok, Mistral, Llama, Command, Nova, Phi, Jamba, Sonar, OpenRouter, Ollama, vLLM.
- /data Kung ano ang nasa loob ng corpus, ang metodolohiya, ang schema ng index, at isang pahinang may pamagat na Data quality na nagsusulat kung saan nagkakamali ang dataset.
- /sources Isang browseable na katalogo ng 11,668 publisher, na maaaring i-slice ayon sa bansa, wika, at domain zone.
- /compare Mga pahinang magkatabi laban sa NewsAPI.org, GNews.io, NewsData.io, Mediastack, Currents, TheNewsAPI, NewsCatcher, WorldNewsAPI, Perigon, APITube at FreeNewsAPI.io.
Kasama ang 168 na pahinang pang-bansa, 121 na pahinang pang-wika at 275 na pahinang pang-TLD — isang nababrowse na surface para sa bawat hiwa ng corpus, na nagpapakita ng totoong nilalaman nito.
Mula saan Dumadating ang mga Artikulo
Dalawang paraan ng pagkuha ang pampaganda ng parehong index, at mahalaga ang pagkakaiba sa pagitan nila.
Ang landas ng arkibo
Bawat sampung minuto, isang trabaho ang sinusuri ang CC-NEWS archive ng Common Crawl para sa mga bagong WARC file at pinoproseso ang anumang hindi pa nito nakikita, gamit ang apatnapung parallel workers. Ang extractor ay inilalabas ang bawat artikulo mula sa raw crawl gamit ang dokumentadong cascade para sa bawat field — at sinusukat ang mga cascade sa totoong data imbes na ipinagpalagay lamang:
| Field | Cascade | Coverage |
|---|---|---|
| description | JSON-LD → meta → OpenGraph → Twitter card → articleBody → lead paragraph | 98.1% |
| language | <html lang> → JSON-LD inLanguage → og:locale | 99.9% |
| country | ccTLD → JSON-LD addressCountry → language-region → og:locale | 79.1% |
| date | JSON-LD datePublished → meta → trafilatura → crawl time | 100% |
Ang taong itong iyon ang taong may tapat na pinagmulan, at ito ang dahilan kung bakit ipinapakita ang country_source sa bawat artikulo: humigit-kumulang ang isang kalahati ng mga rekord ay walang maaasahang senyales ng bansa, at humigit-kumulang ang isang tatlong bahagi ng mga halagang umiiral ay mga inferensya imbes na mga katotohanan. Ang API ay nagpapakita kung alin ang alin imbes na magpanggap.
Ang live na landas
Ang pangalawang robot ay nagpo-poll ng mga feed ng publisher RSS bawat limang minuto, sa isang rotasyon na may mga kondisyonal na kahilingan — isang feed na sumasagot ng 304 Not Modified ay halos walang gastusin, at ang interval ng pagpo-poll ng bawat feed ay tinunog sa kung gaano kadalas ito talagang naglilimbag. Isang outlet na nagpo-post ng limang kwento sa isang araw ay hindi pinuputol bawat labindalawang minuto.
Kinukuha rin nito lamang ang ibinigay ng publisher sa feed: pamagat, lead, at buong teksto kapag dala nito ito. Hindi ito lumalakad sa website ng publisher upang kunin ang higit pa. Ito ay isang disenyadong hangganan, at ito ang dahilan kung bakit ang serbisyo ay maaaring gawin ang mga pangako na ginagawa nito sa kanyang publisher-facing na pahinang legal.
At ang makinarya sa paligid nila
Sa paligid ng dalawang landas ng pag-ingest ay nakaupo ang dalawampung robot sa mga schedule: discovery at sync ng pinagmulan, pag-resolve ng bansa bawat domain, pagbuo at pagsusuri ng trend, pagpuno ng keyword, sentiment ng crypto, pagkuha ng merkado, katalogo ng taksonomiya, retention (ang window na siyamnapung araw ay ipinapatupad ng isang nightly query sa published_at, hindi sa edad ng index), pagpapatunay ng araw, muling pagsusuri ng walang artikulo, at isang health guard na pinapagsimula ang anumang huminto. Ang corpus ay nananatili sa isang dedicated na Elasticsearch cluster.
Kung Ano ang Mali ng Dataset na Ito
Ang serbisyo ay naglilimbag ng kanyang sariling mga limitasyon, na ang pinakamabilis na paraan upang husgahan kung angkop ito sa iyong problema.
- Ang bansa ay ininferensya Basahin ang
country_sourcesa bawat artikulo, at magdagdag ngstrict_country=truekapag ikaw ay nagbibilang ayon sa bansa imbes na nagbabrowse. - Ang
published_atay galing sa publisher Karaniwan ang pag-backdate. Ayusin ayon sacrawledkapag ikaw ay nagpo-poll para sa mga bagong bagay. - Ang
totalay capped sa 10,000 Para sa bilis. Angtotal_is_lower_bounday nagpapakita sa iyo kapag nakarating ka sa kisame. - Walang sentiment o pagkuha ng entity Sa labas ng Bitcoin block, ang mga artikulo ay walang sentiment score at walang mga pangalan na entities. Ito ay hindi sakop.
- Sampung araw lamang Walang mas malalim na arkibo. Kung kailangan mo ang 2019, maliit na ito.
- Walang SLA Libre ito. Pinagmamasdan at pinoprotektahan ito, ngunit walang sinusuportahan sa pagsulat.
- Ang teksto ay pag-aari ng mga publisher Bawat tugon ay kasama ang orihinal na URL, at inaasahang mag-link pabalik dito.
Paggamit nang Mabuti: Gastos, Paging at Mga Error
Disiplina sa Token
Para sa isang agent, ang laki ng tugon ang tunay na gastos. Ang dokumentadong hugis nito:
| Tawag | Tantyang gastos sa Token | Kailan |
|---|---|---|
/v1/stats | ~200 | Una. Desisyon kung worth it ang paghahanap. |
/v1/search metadata lamang | ilang libo lamang bawat pahina | I-scan at piliin. |
/v1/search?full_text=true | ~900 bawat artikulo | Para lamang sa iilan na talagang iyong pinili. |
Dalawampu (20) na artikulo na may full_text=true ay humigit-kumulang 40,000 na tokens. Ang inirerekomendang pattern ay laging pareho: bilangin, i-scan, tapos kunin ang mga katawan ng teksto para sa iilan na kailangan mo.
Pagpapa-page sa labas ng ceiling
Ang offset ay humihinto sa 9,900. Upang i-traverse ang isang malaking set, huwag labanan ang ceiling — sa halip, hiwain ayon sa panahon. I-loop araw-araw, o oras-oras sa isang busy na query, gamit ang from/to at sort=date. May dedicated na page sa dokumentasyon tungkol sa pag-traverse ng buong araw.
Mga Error
Ang kontrata ay direkta at madaling i-code: ang 4xx ay nangangahulugang mali ang request — ayusin ito, huwag mag-retry. Ang 5xx ay nangangahulugang baba ang serbisyo — mag-back off. Ang 429 ay nangangahulugang mabagal at mag-retry. Ang mga hindi kilalang query parameters ay pinapabayaang lang imbes na ito ay tinatanggihan, kaya ang pagdaragdag ng isang field ay hindi kailanman makakasira sa isang existing na caller.
Kilalanin ang Iyong Sarin (Opsyonal, at Tunay na Opsyonal)
Kung walang key, walang paraan upang maabot ang isang caller. Ang inirerekomendang pagpapakita ng kabutihan ay ang isang header na naglalarawan ng iyong agent, ang framework na dumaan dito at ang modelong nagpapatakbo nito:
X-Agent: agent_name=<agent>; software=<langchain|llamaindex|n8n|claude-desktop|cursor|openai-assistants|crewai|custom>; model=<model>; version=<v>; purpose=<rag|monitoring|research|digest>; contact=<url or mailto>
User-Agent: <agent>/<version> (+<contact url>)Ang mga parehong values ay maaaring gumana bilang plain na query parameters, na karaniwan ay mas madali:
https://freenewsapi.ai/v1/search?q=climate&agent_name=newsbot&software=langchain&model=gpt-4oAng mga hindi kilalang keys ay pinapabayaang lang, kaya ang pagpapadala ng dagdag na keys ay laging ligtas. Walang nava-validate, walang nathrottle para sa pagkalimot dito, at ang iisang instruksyon ay matibay: huwag ilagay ang personal na data ng end-user sa mga field na ito.
Laban sa mga Bayad na Balita APIs
Ang mga pahinang paghahambing sa site ay sumasaklaw sa labindalawang (11) mga kompetitor nang hiwalay. Ang mga structural na pagkakaiba na nananatili sa lahat ng kanila:
100 kahilingan/lang, 24-oras na pagkaantala
Ang karaniwang hugis ng libreng balita-API na antas: isang maliit na token bucket na sapat lamang para sa demo, kung saan hawak ang mga sariwang artikulo para sa mga nagbabayad na customer.
- Kinakailangang susi
- Araw-araw na limitasyon
- Mga artikulong may pagkaantala
- Para sa hindi-komersyal lamang
Walang limitasyon, walang pagkaantala, walang susi
Ang 20 kahilingan/segundo bawat IP ang tanging limitasyon. Ang pinakabagong artikulo ay karaniwang hindi hihigit sa dalawang minutong gulang, at pinapayagan ang paggamit para sa komersyo.
- Walang susi, walang pag-sign up
- Walang araw-araw o buwanang limitasyon
- Patuloy na pag-refresh
- Pinapayagan ang paggamit para sa komersyo
Una sa Ingles, una sa US
Karamihan sa mga corpus ay galing sa listahan ng mga publisher na nasa wikang Ingles, at ang iba pang bansa ay idinadagdag sa dulo.
- Dominasyon ng wikang Ingles
- Mababang sakop ng mga wala sa Latin na alpabeto
India > US, Turkish > German
Mga 100 na wika na may sukat na anim na numero sa Greek, Vietnamese, Persian, Ukrainian at Bulgarian.
- 100 na bansa
- ~100 na wika
- 11,668 na nakatalogong pinagkukunan
Ang mga bagay na patuloy na ibinibigay ng mga bayad na serbisyo na hindi ibinibigay nito: mga puntos ng damdamin at pagkuha ng mga entidad bilang karaniwang mga field, mga arkibo na bumabalik sa ilang taon, at kontrata na may SLA sa likod nito. Mga ito ay tunay, at kung kailangan mo ang mga ito, dapat mong bumili ng mga ito.
Mga Resipe
Isang live na monitor ng bansa
curl "https://freenewsapi.ai/v1/search?country=UA&lang=uk&date=today&sort=crawled&size=50"Global o lokal ang kwentong ito?
curl "https://freenewsapi.ai/v1/trends/keywords?size=30"
# read `countries` on each keyword: 1 country = domestic, 70 = world eventPundasyon ng modelo sa kasalukuyang sakop, nang mura
# 1. count first
curl "https://freenewsapi.ai/v1/stats?q=semiconductor+export+controls&date=7d"
# 2. scan metadata
curl "https://freenewsapi.ai/v1/search?q=semiconductor+export+controls&date=7d&lang=en&size=20&sort=relevance"
# 3. fetch bodies for the three you picked
curl "https://freenewsapi.ai/v1/article?url=<exact-url>&full_text=true"Nangunguna ba ang sakop sa presyo?
curl "https://freenewsapi.ai/v1/btc/correlation?interval=hour&max_shift=12"Gawing feed ang naka-save na search
https://freenewsapi.ai/v1/rss?q=central+bank+rate&lang=en&date=24h&sort=date&size=50Hanapin ang mga outlet na mahalaga sa isang merkado
curl "https://freenewsapi.ai/v1/stats?country=BR&date=30d&top=50"
# the `hosts` block is a ranked publisher list for that sliceAng Maikling Bersyon
Ang Free News API ay isang full-text search na sumasaklaw sa higit 21.5 milyon na balita mula sa higit 25,000 na publisher sa 100 bansa at humigit-kumulang 100 wika, sa isang rolling na siyamnapung-araw na window, na laging inia-refresh, na walang key, walang signup at walang quota maliban sa isang per-IP rate limit. Sa ibabaw ng search ay ang live na pag-i-cluster ng kwento bawat bansa sa 115 bansa, pagsusuri sa keyword na hiwalay ang mga pangyayari sa mundo mula sa mga lokal, labindalawang market instrument na inilalarawan laban sa dami ng coverage, isang pitong-endpoint na Bitcoin sentiment block, RSS/Atom/JSON syndication ng anumang query, at isang 28-tool na MCP server na hinubog mula sa serbisyo mismo.
Ito ay naidokumentahan ang sarili nitong mga rate ng error, ipinapakita kung paano nakuha ang bawat country value, at naglathala ng isang pahina tungkol sa kung ano ang maling data. Para sa isang agent na kailangang malaman kung ano ang sinasabi ng mundo — sa Turkish, sa Greek, sa Hindi, ngayon na lang — ang kombinasyong ito ay mahirap hanapin sa anumang presyo, at ang isa ay libre.
Ang search ay AND sa lahat ng terms. Gumamit ng 2–5 keywords, hindi isang natural-language na tanong.
Ang Free News API, kung paano ito ma-query nang mabuti
Simulan dito: freenewsapi.ai · MCP sa freenewsapi.ai/mcp · ang buong manual bilang isang file sa /llms-full.txt.