News APIs są zwykle sprzedawane na zasadzie rozliczenia za żądanie, ukryte za kluczem API i ograniczone do stu zapytań dziennie w warstwie darmowej. Free News API nie ma nic wspólnego z tymi ograniczeniami: 21,5 mln artykułów w obracającym się oknie 90 dni, ponad 25 000 wydawców, brak klucza, brak rejestracji, brak limitów, dozwolone użycie komercyjne. Oto cała powierzchnia interfejsu — wyszukiwanie, statystyki, trendy, rynki, kanały i MCP — oraz szczera ocena tego, gdzie dane mogą się mylić.
Kształt problemu
Zapytaj agenta AI, o czym pisze świat w tej chwili, a on ma trzy złe opcje. Może skanować wydawców bezpośrednio, co jest kruche, wolne i prawnie niejasne. Może wywołać komercyjny news API, co oznacza konto, klucz, miesięczny rachunek i — w każdej darmowej warstwie na rynku — sto żądań dziennie i artykuły opóźnione o dobę. A może zgadywać na podstawie danych treningowych, które są stare od miesięcy.
Free News API usuwa cenę i biurokrację środkowej opcji, nie usuwając jej możliwości. Jedno żądanie GET, bez poświadczeń, po korpusie, który w momencie pisania zawiera 21 557 044 artykuły od ponad dwudziestu pięciu tysięcy wydawców, przechowywane w obracającym się oknie 90 dni i odświeżane nieprzerwanie — najnowszy artykuł w indeksie ma zwykle mniej niż dwie minuty.
Cztery główne punkty końcowe i nie tylko
Sercem usługi są cztery punkty końcowe GET, wszystkie dostępne pod adresem https://freenewsapi.ai, zwracające dane w formacie UTF-8 JSON z nagłówkiem Access-Control-Allow-Origin: *, co pozwala na bezpośrednie wywoływanie ich z kodu przeglądarki, oraz informujące o czasie wykonania po stronie serwera w polu took_ms.
| Punkt końcowy | Na jakie pytanie odpowiada |
|---|---|
GET /v1/search | Wyszukiwanie pełnotekstowe z filtrami. Punkt końcowy używany w 95% przypadków. |
GET /v1/stats | Zagregowane liczby dla dowolnego wycinka danych — według kraju, języka, domeny najwyższego poziomu, wydawcy i dnia. |
GET /v1/article | Jeden artykuł według jego dokładnego URL, w tym pełny tekst. |
GET /health | Liveness oraz bieżąca liczba dokumentów. Tani koszt, aby można było go regularnie odpytywać. |
Wokół tego rdzenia znajdują się cztery kolejne grupy, z których każda w innych miejscach stanowiłaby osobny produkt: trends (grupowanie żywych newsów według krajów), markets (szeregi cenowe powiązane z wolumenem publikacji), crypto sentiment (siedmiopunktowa ocena nastrojów wokół Bitcoin) oraz syndication (to samo wyszukiwanie dostępne jako RSS, Atom lub JSON Feed). Wszystkie zostały opisane poniżej.
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"
}
]
}Trzy pola w tej odpowiedzi zasługują na natychmiastową uwagę, ponieważ kodują one uczciwość całego zbioru danych. total_is_lower_bound informuje, kiedy liczba trafień osiągnęła próg 10 000 i przestała być dokładna. country_source wyjaśnia jak ustalono kraj — ponieważ w dowolnym zbiorze newsów duża część wartości krajowych to wnioski, a nie fakty. A crawled_at to wiarygodny znacznik czasu: wydawcy często cofają datę publikacji published_at, ale czas indeksowania jest przypisywany przez pipeline i zawsze idzie do przodu.
Wyszukiwanie: każdy istotny parametr
Wszystkie parametry są opcjonalne. Wywołanie bez parametrów zwraca najnowsze artykuły w indeksie.
Zapytanie
- q Dopasowywane do tytułu (waga 3), opisu (waga 2) i treści artykułu. Semantyka AND — każdy termin musi być obecny, więc dodanie słowa zawęża, a nie poszerza wyniki. Maksymalnie 500 znaków.
opec production cut zadziała. what did OPEC decide about oil zwróci pusty wynik.Filtry
Filtry łączą się z AND między parametrami i OR w ramach jednego parametru. Zapytanie country=DE,AT&lang=de oznacza „artykuły w języku niemieckim z Niemiec lub Austrii”. Każdy parametr akceptuje listę wartości oddzielonych przecinkiem, do pięćdziesięciu wartości.
| Filtr | Format | Uwagi |
|---|---|---|
country | ISO 3166-1 alpha-2, wielkie litery | Kraj wydawcy. Wyprowadzony, a nie zadeklarowany — zob. country_source oraz strict_country. |
lang | ISO 639-1, małe litery | Wykryty bezpośrednio z dokumentu. Pokrycie 99,9%. |
tld | bez kropki | Strefa domenowa wydawcy. tld=ua to fakt; country=UA to wniosek. |
host | dokładne nazwy hostów | Tak jak występują w URL — uwzględnij www., jeśli wydawca go używa. |
date | dzisiaj · wczoraj · 24h · 48h · 7d · 30d | Okres predefiniowany, oceniany na podstawie pola published_at. |
from / to | Daty w formacie ISO | Jawny zakres, w którym predefiniowane ustawienia nie pasują. |
strict_country | true/false | Liczone są tylko artykuły, których przynależność do kraju jest twardym faktem, a nie wnioskowaniem. |
Kontrola wyjścia
| Parametr | Wartości | Skutek |
|---|---|---|
sort | date · date_asc · crawled · crawled_asc · relevance | Sortuj według pola crawled przy odpytywaniu o nowe artykuły — wydawcy cofają daty publikacji; czas pobrania (crawl) tylko się przesuwa do przodu. |
size | 1–100 | Wyników na stronę. |
offset | 0–9900 | Przesunięcie paginacji. |
full_text | true/false | Dołączanie treści artykułu. Domyślnie wyłączone. |
highlight | true/false | Zwracanie dopasowanych fragmentów. |
fields | CSV | Ogranicz odpowiedź do pól, których faktycznie używasz. |
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"Liczenie przed wyszukiwaniem
Najmniej wykorzystywanym punktem końcowym w usłudze jest /v1/stats. Często istotnym pytaniem nie jest „jakie są artykuły”, ale „czy w ogóle coś tu jest i gdzie to się znajduje”. Liczenie wyników odpowiada na to pytanie ułamkiem kosztów — około dwieście tokenów w porównaniu do kilku tysięcy na stronę wyników — co czyni je właściwym pierwszym wywołaniem dla agenta decydującego, czy wyszukiwanie jest warte wykonania.
curl "https://freenewsapi.ai/v1/stats?q=earthquake&date=7d"Zwraca liczniki podzielone według kraju, języka, domeny najwyższego poziomu (TLD), wydawcy i dnia, obliczone dla całego zbioru pasujących wyników, a nie tylko bieżącej strony. Jest to również sposób pomiaru zasięgu przed zaufaniem danym. Nieprzetworzony snapshot w momencie pisania:
Najlepsze kraje
| Kraj | Artykuły |
|---|---|
| Indie | 2,286,014 |
| Stany Zjednoczone | 2,180,797 |
| Turcja | 1,499,897 |
| Rosja | 1,436,556 |
| Włochy | 1,057,479 |
| Argentyna | 826,947 |
| Hiszpania | 812,347 |
| Ukraina | 662,041 |
| Brazylia | 551,013 |
| Niemcy | 543,132 |
| Francja | 502,846 |
| Grecja | 460,372 |
| Japonia | 437,209 |
| Wietnam | 408,934 |
| Meksyk | 402,320 |
| Korea Południowa | 362,945 |
| Rumunia | 354,229 |
| Wielka Brytania | 334,379 |
| Iran | 291,782 |
| Polska | 255,599 |
Najpopularniejsze języki
angielski 5 513 650 · hiszpański 2 699 457 · rosyjski 1 785 796 · turecki 1 501 004 · włoski 992 200 · niemiecki 733 677 · francuski 689 136 · arabski 664 016 · portugalski 637 607 · hindi 560 840 · grecki 466 504 · japoński 427 085 · wietnamski 385 719 · rumuński 358 766 · chiński 352 720 · ukraiński 345 809 · koreański 335 079 · perski 268 126 · polski 238 904 · bułgarski 183 204.
Taki rozkład jest warty chwili uwagi, ponieważ jest odwrotnością tego, co zwykle oferują Ci większość news APIów. Typowy korpus, w którym dominuje język angielski i Stany Zjednoczone, nie jest tym, czym jest ten zbiór: Indie wyprzedzają Stany Zjednoczone, Turcja wyprzedza Niemcy, a Grecja, Wietnam, Persja i Bułgaria mają reprezentację liczącą sześć cyfr. Jeśli Twoje pytanie dotyczy nieangielskiej prasy, jest to zupełnie inny zestaw danych.
Wolumen
Krzywa dzienna w by_day obejmuje pełne okno czasowe dziewięćdziesięciu dni. Ostatnie dni mieszczą się w przedziale około 400 000 do 700 000 artykułów dziennie; wcześniej w tym oknie, przed dodaniem warstwy RSS wraz z przetwarzaniem archiwum, dzienny wolumen wynosił 130 000–230 000. Obie te wartości są widoczne w tej samej odpowiedzi, co jest istotą — usługa pokazuje Ci własny wzrost, a nie cytuje marketingową średnią.
Trendy: Czym naprawdę zajmuje się prasa w tym momencie
Wyszukiwanie odpowiada na pytanie „co napisano na temat X”. Trendy odpowiadają na inne, często lepsze pytanie: co się dzieje — bez konieczności podawania X.
Robot grupuje artykuły w historie według krajów i aktualizuje je. Co pięć minut nowe artykuły są dołączane do znanych historii na podstawie ich słów kluczowych, bez żadnego wywołania modelu; co kilka godzin dany kraj przechodzi pełną analizę, w której model językowy czyta nagłówki i od nowa nadaje nazwy historiom. W momencie pisania tego tekstu warstwa trendów obejmuje 115 krajów, z których każdy jest przeliczany w ciągu ostatnich kilku minut.
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": [ … ]
}
]
}Każda historia zawiera dwa liczniki, które oznaczają różne rzeczy. articles to głośność; publishers to szerokość. Historia z 200 artykułami z 4 redakcji to obsesja jednego domu wydawniczego. Historia z 60 artykułami z 40 redakcji to wydarzenie. Domyślne sortowanie odbywa się według liczby wydawców, a min_publishers / min_articles pozwalają Ci samodzielnie ustawić próg.
Opowieści przypisują kategorię ze stałej listy: politics, business, markets, tech, sport, health, science, culture, crime, conflict, weather, society.
Okno wyboru należy do czytelnika, a nie do robota
To naprawdę eleganckie rozwiązanie architektoniczne. Każdy artykuł jest przechowywany wraz z czasem publikacji i powiązany ze swoją opowieścią, więc każde okno — piętnaście minut, godzina, dzień, konkretna data kalendarzowa — to po prostu zapytanie o zakres nad tymi samymi danymi. Jedno obliczenie obsługuje wszystkie okna jednocześnie. window=15m, window=1h, window=24h, date=2026-09-01 lub jawna para since/until działają na tym samym indeksie bez potrzeby ponownego przetwarzania.
Słowa kluczowe: słowa, na których zbudowana jest wiadomość
curl "https://freenewsapi.ai/v1/trends/keywords?country=US&size=8"Każde słowo kluczowe zwraca liczbę różnych opowieści, które je zawierają, liczbę artykułów w tych opowieściach oraz — to najbardziej interesujące — liczbę krajowych mediów, które je używają. Ta ostatnia liczba rozróżnia wydarzenie globalne od krajowego. Słowo pojawiające się w siedemdziesięciu krajach to historia światowa; słowo dominujące w prasie jednego kraju to historia krajowa, niezależnie od tego, jak głośno się o niej mówi.
Które kraje są na żywo
curl "https://freenewsapi.ai/v1/trends/countries"Zwraca wszystkie śledzone kraje z liczbą opowieści na żywo oraz liczbą minut temu, kiedy zostały ponownie obliczone — Turcja, Rosja, Iran, Grecja, Indie, Włochy, Ukraina, Rumunia, Argentyna, Niemcy i Brazylia mają obecnie tysiące opowieści na żywo, ponownie obliczanych w ciągu ostatnich dziesięciu minut. A /v1/trends/{cc}/{slug} otwiera dowolną pojedynczą opowieść z pełną listą artykułów.
Rynki vs. Relacje: Cena na jednej osi, Uwaga na drugiej
To najbardziej niezwykła rzecz w usłudze i istnieje, ponieważ korpus sprawia, że jej zbudowanie jest niemal darmowe. Umieść szereg cenowy obok tego, ile świat napisał o tej rzeczy w tych samych godzinach, na jednej osi czasu.
curl "https://freenewsapi.ai/v1/markets"Śledzone są czternaście instrumentów, w ramach czterech klas aktywów:
| Klasa | Instrumenty | Granularność | Źródło |
|---|---|---|---|
| Krypto | Bitcoin, Ethereum, Solana, XRP, BNB, Dogecoin | godzina | Binance |
| Surowce | Złoto (USD/oz) | godzina | Binance |
| Forex | EUR/USD, USD/JPY, USD/TRY, USD/INR, USD/BRL, USD/PLN | dzień | EBC |
| Energia | Cena energii w Niemczech (EUR/MWh) | godzina | Energy-Charts |
curl "https://freenewsapi.ai/v1/markets/usd-try?window=30d"To jedno zapytanie zwraca kurs liry do dolara oraz objętość relacji w prasie tureckiej w tym samym okresie, z synchronizacją godzinową. Tureńska prasa stanowi trzecią co do wielkości część tego zbioru danych, co właśnie sprawia, że to zestawienie dostarcza wartościowych informacji, a nie szumu.
A pełny blok sentymentu dotyczący Bitcoina
Bitcoin zyskuje własną rodzinę siedmiu punktów końcowych, ponieważ to właśnie na tym aktywie stale toczy się debata na temat wpływu nastrojów z mediów na ruchy cenowych, a rzadko dokonuje się ich pomiaru:
| Punkt końcowy | Zwroty |
|---|---|
/v1/btc/summary | Najnowsza cena, ostatnie zmiany oraz ton obecnych doniesień. |
/v1/btc/price | Kandele BTC/USDT w zależności od interwału. |
/v1/btc/sentiment | Ton wiadomości w poszczególnych okresach. |
/v1/btc/series | Cena i nastroje na jednej osi czasu. |
/v1/btc/correlation | Korelacja między tonem a ruchem cenowym z przesunięciem w czasie — czy doniesienia wyprzedzają ceny, czy je podążają? |
/v1/btc/news | Artykuły kryptowalutowe z etykietą sentymentu, filtrowalne według etykiety, hosta, języka i zapytania. |
/v1/btc/sources | Które media zajmują się tematyką kryptowalut i jakie mają w tym zakresie nastawienie. |
Etykiety nastroju pochodzą od modelu językowego, który co pięć minut analizuje świeże artykuły o kryptowalutach w oparciu o zweryfikowaną listę monet. Endpoint /v1/btc/correlation z parametrem max_shift jest tym, którego należy użyć, jeśli chcesz przetestować tezę „nowiny powodują ruch rynku”, zamiast ją powtarzać.
To samo wyszukiwanie jako strumień danych
Trzy kolejne endpointy przyjmują identyczne parametry wyszukiwania i zwracają wyniki w formatach syndykacji zamiast w formacie 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=dateOznacza to, że każda zapisana wyszukiwarka zamienia się w strumień danych, który można wkleić do czytnika newsów, węzła n8n, integracji ze Slackiem, wyzwalacza w Zapierze lub generatora stron statycznych — bez konieczności pisania kodu ani posiadania klucza API. To niewielka funkcja, która w sposób dyskretny eliminuje całą warstwę integracji dla osób nieprogramujących.
MCP: Dwadzieścia osiem narzędzi, dwie warstwy
Serwer MCP działa pod jednym URL, obsługuje Streamable HTTP (JSON-RPC 2.0 przez metodę POST, wersja protokołu 2025-06-18), obsługuje partii żądań i — podobnie jak wszystko inne w tym zestawie — nie wymaga autoryzacji ani identyfikatora sesji.
claude mcp add --transport http freenewsapi https://freenewsapi.ai/mcpUdostępnia 28 narzędzi w dwóch świadomie zaprojektowanych warstwach.
Warstwa pierwsza: sześć skrótów, które odpowiadają na całe pytanie jednym wywołaniem
| Narzędzie | Do czego służy |
|---|---|
search_news | "Co napisano o X" — wyszukiwanie pełnotekstowe, skrócony wynik. |
get_trends | "Co się dzieje" — pogrupowane historie, a nie lista artykułów. |
trend_keywords | Słowa, na których opiera się obecnie wiadomości, wraz z liczbą historii i rozłożeniem geograficznym. |
find_publishers | Wyszukaj media: nazwa, domena, kraj, język, liczba artykułów dziennie. |
list_countries | Które kraje mają aktywne historie, ile ich jest i jak świeże są dane. |
market_vs_news | Szeregi cen obok wolumenu relacji. Wywołaj bez podania instrumentu, aby zobaczyć, co jest dostępne. |
Warstwa druga: każde endpointy generowane przez samą usługę
Poniżej skrótów każdy surowy endpoint jest wystawiony jako osobne narzędzie ze wszystkimi parametrami, jakie przyjmuje API — news_get_search, news_get_stats, news_get_article, news_get_trends, news_get_trends_keywords, news_get_markets_slug, cała rodzina news_get_btc_*, renderery kanałów oraz news_get_health. Są one generowane z żywej usługi, więc nie mogą odbiegać od tego, co faktycznie akceptuje API.
Dwa narzędzia meta zamykają pętlę: news_list_endpoints zwraca katalog tego, co istnieje, a news_get wykonuje surowe GET dla dowolnej ścieżki — dzięki czemu agent, który napotka endpoint nieobjęty listą swoich narzędzi, nadal może do niego dotrzeć.
curl "https://freenewsapi.ai/mcp?format=json"Jedno GET, bez uzgadniania, a masz cały katalog czytelny dla maszyn: serwer, transport, protokół, liczbę narzędzi, każde narzędzie z opisem oraz każdy endpoint z listą parametrów.
Zaprojektowane do odczytu przez maszyny
Dokumentacja nie jest poślednie doklejoną dodatkiem do API — jest jej pierwszorzędnym produktem. Strona udostępnia 665 statycznych podstron, a kilka z nich istnieje specjalnie po to, aby model nigdy nie musiał czytać HTML:
- /openapi.json Pełny schemat OpenAPI.
- /llms.txt Krótki plik orientacyjny — opis usługi, punkty końcowe, sposoby skutecznego zapytania oraz błędy.
- /llms-full.txt Cała dokumentacja w jednym pliku tekstowym, zajmującym ponad sto kilobajtów, dzięki czemu agent może załadować cały podręcznik jednym pobraniem.
- /agents Trzydzieści dziewięć stron przeznaczonych specjalnie dla twórców agentów: gotowe definicje funkcji OpenAI, definicje narzędzi Anthropic, prompty systemowe do pobierania wiadomości, przepisy RAG, tabele kosztów tokenów oraz receptury agentów.
- /agents/models Kod wywoływania narzędzi dla każdej rodziny modeli — 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 To, co znajduje się w korpusie, metodologia, schemat indeksu oraz strona zatytułowana Jakość danych, która dokumentuje błędy w zbiorze danych.
- /sources Przeglądalny katalog 11 668 wydawców, z możliwością filtrowania według kraju, języka i strefy domenowej.
- /compare Strony porównawcze z NewsAPI.org, GNews.io, NewsData.io, Mediastack, Currents, TheNewsAPI, NewsCatcher, WorldNewsAPI, Perigon, APITube oraz FreeNewsAPI.io.
Dodatkowo 168 podstron krajowych, 121 podstron językowych i 275 podstron TLD — jedna przeglądarkowa powierzchnia dla każdej części korpusu, pokazująca jego rzeczywistą zawartość.
Skąd pochodzą artykuły
Dwie ścieżki indeksowania zasilają ten sam indeks, a różnica między nimi ma znaczenie.
Ścieżka archiwum
Co dziesięć minut zadanie sprawdza archiwum CC-NEWS Common Crawl pod kątem nowych plików WARC i przetwarza te, których jeszcze nie widziało, przy użyciu czterdziestu równoległych workerów. Ekstraktor wyciąga każdy artykuł z surowego spisu za pomocą udokumentowanej kaskady dla każdego pola — a kaskady zostały zmierzone na rzeczywistych danych, a nie założone:
| Pole | Kaskada | Pokrycie |
|---|---|---|
| opis | JSON-LD → meta → OpenGraph → karta Twitter → articleBody → akapit wstępny | 98.1% |
| język | <html lang> → JSON-LD inLanguage → og:locale | 99.9% |
| kraj | ccTLD → JSON-LD addressCountry → język-region → og:locale | 79.1% |
| data | JSON-LD datePublished → meta → trafilatura → czas spisu | 100% |
Ta kolumna z krajem jest rzetelna, dlatego country_source jest udostępniany w każdym artykule: około piąta część rekordów nie zawiera wiarygodnej informacji o kraju, a około jedna trzecia istniejących wartości to wnioski logiczne, a nie fakty. API informuje, która z tych sytuacji ma miejsce, zamiast zgadywać.
Ścieżka bezpośrednia
Drugi robot pobiera dane z kanałów RSS wydawcy co pięć minut, w cyklu z żądaniami warunkowymi — kanał zwracający kod 304 Not Modified generuje niemal zerowe koszty, a częstotliwość odpytywania każdego kanału jest dostosowana do tego, jak często faktycznie publikuje on treści. Wydawnictwo publikujące pięć artykułów dziennie nie jest odpytywane co piętnaście minut.
Pobiera również tylko to, co wydawca umieścił w kanale: tytuł, wstęp i pełny tekst, jeśli kanał go zawiera. Nie wchodzi na stronę wydawcy, aby pobrać więcej treści. To świadome ograniczenie, które jest powodem, dla którego usługa może składać zapewnienia widoczne na jej stronie prawnej dla wydawców.
A mechanizmy je otaczające
Wokół dwóch ścieżek pobierania danych działa ponad tuzin robotów o ustalonym harmonogramie: wyszukiwanie i synchronizacja źródeł, rozwiązywanie kwestii krajowej dla każdej domeny, budowanie trendów i audyt, uzupełnianie brakujących słów kluczowych, analiza sentymentu kryptowalut, pobieranie danych rynkowych, katalog taksonomii, retencja (okno dziewięćdziesięciodniowe jest egzekwowane przez codzienną zapytanie do kolumny published_at, a nie przez wiek indeksu), weryfikacja dni, ponowne sprawdzanie pustych artykułów oraz strażnik zdrowia, który restartuje wszystko, co przestało działać. Korpus znajduje się na dedykowanym klastrze Elasticsearch.
Co w tym zbiorze danych jest niepoprawne
Usługa publikuje swoje własne ograniczenia, co jest najszybszym sposobem na ocenę, czy pasuje ona do Twojego problemu.
- Kraj jest wnioskowany Sprawdzaj
country_sourcew każdym artykule i dodajstrict_country=true, gdy liczyłeś według krajów, a nie przeglądasz dane. - published_at jest dostarczany przez wydawcę Cofanie dat wstecz jest powszechne. Sortuj po
crawled, gdy odpytujesz o najnowsze treści. - total jest ograniczony do 10 000 Dla szybkości.
total_is_lower_boundinformuje Cię, gdy osiągniesz limit. - Brak analizy sentymentu i ekstrakcji encji Poza kontekstem bitcoinowym artykuły nie zawierają wyniku sentymentu ani nazwanych encji. Nie jest to objęte zakresem.
- Dziewięćdziesiąt dni i nie więcej Brak głębszego archiwum. Jeśli potrzebujesz danych z 2019 roku, to nie jest właściwe narzędzie.
- Brak SLA Usługa jest darmowa. Jest również monitorowana i chroniona, ale nic nie jest gwarantowane na piśmie.
- Tekst należy do wydawców Każda odpowiedź zawiera oryginalny URL, a użytkownicy powinni linkować do niego.
Skuteczne wykorzystanie: koszty, paginacja i błędy
Dyscyplina tokenów
Dla agenta rozmiar odpowiedzi to rzeczywisty koszt. Udokumentowany kształt tego kosztu:
| Zapytanie | Szacunkowy koszt tokenów | Kiedy |
|---|---|---|
/v1/stats | ~200 | Po pierwsze. Zdecyduj, czy wyszukiwanie w ogóle ma sens. |
/v1/search tylko metadane | kilka tysięcy na stronę | Skanuj i wybierz. |
/v1/search?full_text=true | ~900 na artykuł | Tylko dla nielicznych, które faktycznie wybrałeś. |
Dwudziestu artykułów z full_text=true to około 40 000 tokenów. Zalecany wzorzec jest zawsze taki sam: policz, zeskanuj, a następnie pobieraj treści tylko dla tych, których naprawdę potrzebujesz.
Przechodzenie przez limit paginacji
offset zatrzymuje się na wartości 9900. Aby przejść przez duży zbiór danych, nie walcz z tym limitem — zamiast tego dziel go według czasu. Iteruj dzień po dniu lub godzina po godzinie przy intensywnym zapytaniu, używając from/to i sort=date. Dokumentacja zawiera dedykowaną stronę na temat przeglądania całych dni.
Błędy
Umowa jest jasna i łatwa do zaimplementowania: 4xx oznacza, że zapytanie jest błędne — napraw je, nie powtarzaj. 5xx oznacza awarię usługi — zmniejsz częstotliwość. 429 oznacza zwolnienie i ponowienie. Nieznane parametry zapytania są ignorowane, a nie odrzucane, więc dodanie nowego pola nigdy nie zepsuje istniejącego klienta.
Zidentyfikuj się (Opcjonalne i Naprawdę Opcjonalne)
Bez klucza nie ma sposobu na dotarcie do klienta. Sugerowaną formą grzeczności jest nagłówek zawierający nazwę Twojego agenta, framework, przez który działa, oraz model, który go napędza:
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>)Te same wartości można przekazać jako zwykłe parametry zapytania, co zwykle jest łatwiejsze:
https://freenewsapi.ai/v1/search?q=climate&agent_name=newsbot&software=langchain&model=gpt-4oNieznane klucze są ignorowane, więc wysyłanie dodatkowych kluczy jest zawsze bezpieczne. Nic nie jest walidowane, a brak ich nie powoduje ograniczeń, a jedynym jasnym wytycznym jest: nigdy nie umieszczaj w tych polach danych osobowych użytkowników końcowych.
Przeciwko płatnym wiadomościom API
Strony porównawcze na stronie internetowej szczegółowo omawiają jedenastu konkurentów. Strukturalne różnice, które przetrwają w przypadku wszystkich z nich:
100 zapytań/dzień, opóźnienie 24 godziny
Standardowy kształt darmowego planu news-API: mały kubelek tokenów wystarczający do demonstracji, ze świeżymi artykułami rezerwowanymi dla klientów płatnych.
- Wymagany klucz API
- Dzienny limit
- Opóźnione artykuły
- Tylko niekomercyjne
Brak limitów, brak opóźnień, brak klucza
Jedynym ograniczeniem jest 20 zapytań na sekundę na adres IP. Najnowszy artykuł ma zwykle mniej niż dwie minuty, a użycie komercyjne jest dozwolone.
- Bez klucza, bez rejestracji
- Brak dziennego lub miesięcznego limitu
- Nieprzerwane odświeżanie
- Dozwolone użycie komercyjne
Przede wszystkim angielski, przede wszystkim USA
Większość korpusów buduje się na podstawie listy wydawców anglojęzycznych, do której dołącza się resztę świata.
- Dominacja języka angielskiego
- Słabe pokrycie języków nielacińskich
Indie > USA, turecki > niemiecki
Około 100 języków z liczbą wierszy sześciocyfrową w greckim, wietnamskim, perskim, ukraińskim i bułgarskim.
- 100 krajów
- ~100 języków
- 11 668 skatalogowanych źródeł
Co nadal oferują płatne usługi, czego ta nie dostarcza: standardowe pola z wynikami analizy sentymentu i ekstrakcji encji, archiwa sięgające lat wstecz oraz umowa z gwarancją poziomu usług (SLA). To są realne zalety, a jeśli ich potrzebujesz, powinieneś je kupić.
Przepisy
Monitor kraju w czasie rzeczywistym
curl "https://freenewsapi.ai/v1/search?country=UA&lang=uk&date=today&sort=crawled&size=50"Czy ta historia ma charakter globalny, czy krajowy?
curl "https://freenewsapi.ai/v1/trends/keywords?size=30"
# read `countries` on each keyword: 1 country = domestic, 70 = world eventTanie osadzenie modelu w bieżącym pokryciu informacyjnym
# 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"Czy zasięg wyznacza cenę?
curl "https://freenewsapi.ai/v1/btc/correlation?interval=hour&max_shift=12"Przekształć zapisane wyszukiwanie w kanał
https://freenewsapi.ai/v1/rss?q=central+bank+rate&lang=en&date=24h&sort=date&size=50Znajdź media, które mają znaczenie na danym rynku
curl "https://freenewsapi.ai/v1/stats?country=BR&date=30d&top=50"
# the `hosts` block is a ranked publisher list for that sliceKrótkie streszczenie
Free News API to wyszukiwanie pełnotekstowe po ponad 21,5 miliona artykułów prasowych pochodzących z ponad 25 tysięcy wydawców z 100 krajów i około 100 języków, z oknem danych obejmującym 90 dni, stale aktualizowane, bez klucza API, bez rejestracji i bez limitów zapytań poza ograniczeniem szybkości na adres IP. Na bazie wyszukiwania działają żywe klastry newsów dla każdego kraju w 115 krajach, analiza słów kluczowych rozróżniająca wydarzenia międzynarodowe od krajowych, czternaście instrumentów rynkowych nakładanych na wolumen relacji, siedmioelementowy moduł analizy sentymentu Bitcoin, syndikacja RSS/Atom/JSON dowolnego zapytania oraz serwer MCP składający się z 28 narzędzi, wygenerowany bezpośrednio z usługi.
Usługa dokumentuje własne wskaźniki błędów, ujawnia sposób wyliczenia wartości dla każdego kraju oraz publikuje stronę z informacjami o tym, gdzie dane mogą być błędne. Dla agenta, który musi wiedzieć, co dzieje się na świecie — po turecku, po grecku, po hindi, w czasie rzeczywistym — taka kombinacja cech jest trudna do znalezienia w dowolnej cenie, a ta usługa jest darmowa.
Wyszukiwanie działa na zasadzie operatora AND dla wszystkich słów. Używaj 2–5 słów kluczowych, a nie pytania w języku naturalnym.
Free News API, jak skutecznie formułować zapytania
Zacznij tutaj: freenewsapi.ai · MCP w freenewsapi.ai/mcp · cały podręcznik jako jeden plik w /llms-full.txt.