تُباع خدمات أخبار API عادةً بناءً على الطلب، وتكون محجوبة خلف مفتاح، وتُقتصر على مئة طلب يومياً في الخطة المجانية. Free News API لا تفعل أيّاً من ذلك: 21.5 مليون مقال عبر نافذة زمنية متحركة مدتها 90 يوماً، وأكثر من 25000 ناشر، بدون مفتاح، بدون تسجيل، بدون حد استهلاك، مع السماح بالاستخدام التجاري. إليك السطح الكامل — البحث، والإحصائيات، والاتجاهات، والأسواق، والتغذيات (Feeds)، وMCP — بالإضافة إلى تقييم صادق لما قد تخطئ فيه البيانات.

طبيعة المشكلة

اسأل وكيل الذكاء الاصطناعي عن ما يكتبه العالم حالياً، وستجد أمامه ثلاثة خيارات سيئة. يمكنه الحفر (Scraping) في مواقع الناشرين مباشرة، وهو أمر هش، وبطيء، ومشبك من الناحية القانونية. يمكنه الاتصال بخدمة أخبار API تجارية، مما يعني وجود حساب، ومفتاح، وفاتورة شهرية، و— في كل الخطط المجانية في السوق — مئة طلب يومياً وتأخر في المقالات لمدة أربع وعشرين ساعة. أو يمكنه التخمين بناءً على بيانات التدريب التي توقفت منذ أشهر.

تزيل Free News API سعر وخوارزمية الخيار الأوسط دون أن تزيل قدرته. طلب GET واحد، بدون بيانات اعتماد، عبر مجموعة بيانات تحتوي وقت كتابة هذا السطر على 21,557,044 مقالاً من أكثر من خمسة وعشرين ألف ناشر، محفوظة في نافذة زمنية متحركة مدتها تسعون يوماً ومحدثة باستمرار — حيث يكون أحدث مقال في الفهرس عمره عادةً أقل من دقيقتين.

21.5 مليون
مقال مُفهرس
25,000+
ناشر
100
دولة
~100
لغة
٩٠ يومًا
نافذة متحركة
0
API مفاتيح موجودة
القاعدة: لا يوجد مفتاح API، ولن يوجد. لا يوجد معلمة (parameter) له، ولا رأس (header) لإرساله، ولا حساب لإنشائه، ولا حد لعدد الطلبات — بل فقط حد لمعدل الطلبات لكل عنوان IP يبلغ 20 طلبًا في الثانية، بحيث لا يمكن لطالب واحد أن يعطل الخدمة عن باقي المستخدمين.

أربع نقاط نهاية أساسية، وأكثر

تتمحور الخدمة حول أربع نقاط نهاية GET، جميعها تحت النطاق https://freenewsapi.ai، وتُرجع بيانات JSON بتنسيق UTF-8 مع رأس Access-Control-Allow-Origin: * مما يسمح لكود المتصفح باستدعائها مباشرة، كما تُبلغ جميعها عن الوقت المستغرق على الخادم في الحقل took_ms.

نقطة النهايةالسؤال الذي تجيب عليه
GET /v1/searchبحث كامل النصوص مع خيارات التصفية. وهي النقطة التي ستستخدمها في 95% من الأوقات.
GET /v1/statsإحصائيات مجمعة لأي قسم — حسب البلد، اللغة، الامتداد (TLD)، الناشر واليوم.
GET /v1/articleمقال واحد بناءً على معرفه الدقيق URL، بما في ذلك نص المقال الكامل.
GET /healthمؤشر الحيوية بالإضافة إلى العدد الحالي للمستندات. رخيص بما يكفي للاستعلام عنه بشكل متكرر.

حول هذا النواة، توجد أربع عائلات إضافية، كل منها سيكون منتجاً خاصاً به في مكان آخر: الاتجاهات (تجميع القصص الحية حسب البلد)، الأسواق (سلاسل الأسعار الممحاذاة مع حجم التغطية)، مشاعر العملات المشفرة (كتلة بيتكوين ذات سبعة نقاط نهاية)، والتوزيع (نفس البحث يتم تقديمه كـ RSS، Atom أو JSON Feed). يتم تغطية جميعها أدناه.

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"
    }
  ]
}

ثلاثة حقول في هذا الاستحقاق تستحق اهتماماً فورياً، لأنها تشفر صدقية مجموعة البيانات بأكملها. يخبرك total_is_lower_bound متى بلغ عدد المطابقات سقفه البالغ 10,000 وتوقف عن العد. يخبرك country_source كيف تم تحديد البلد — لأنه في أي مجموعة بيانات إخبارية، يشكل استنتاج البلدان نسبة كبيرة من قيم البلد، وليست حقائق. وcrawled_at هو الطابع الزمني الموثوق: يقوم الناشرون عادةً بتأريخ published_at إلى الوراء، لكن وقت الزحف يُسند بواسطة خط الأنابيب ويتحرك للأمام فقط.

البحث: كل معلمة ذات أهمية

جميع المعاملات اختيارية. يؤدي الاستدعاء الأساسي إلى إرجاع أحدث المقالات في الفهرس.

الاستعلام

استعلم كما تفعل محركات البحث، وليس مثل روبوت الدردشة: هذه هي الخطأ الأكثر شيوعاً. البحث هو AND عبر جميع المصطلحات، لذا اكتب 2-5 كلمات مفتاحية، وليس جملة. opec production cut يعمل. what did OPEC decide about oil لا يعيد أي شيء.

المصفات

تتحد المصفات مع AND عبر المعاملات وOR ضمن معامل واحد. لذا فإن country=DE,AT&lang=de يُقرأ كـ "مقالات باللغة الألمانية من ألمانيا أو النمسا". يقبل كل منها قائمة مفصولة بفواصل من ما يصل إلى خمسين قيمة.

مصفالتنسيقملاحظات
countryرمز ISO 3166-1 alpha-2، بحروف كبيرةدولة الناشر. مستنتج، غير مُصرّح به — انظر country_source و strict_country.
langرمز ISO 639-1، بحروف صغيرةيُكتشف من المستند نفسه. تغطية بنسبة 99.9%.
tldبدون نقطةمنطقة النطاق الخاصة بالناشر. tld=ua هو حقيقة؛ بينما country=UA هو استنتاج.
hostأسماء النطاقات الدقيقةكما تظهر في URL — أضف www. إذا كان الناشر يستخدمها.
dateاليوم · الأمس · 24 ساعة · 48 ساعة · 7 أيام · 30 يومًافترة محددة مسبقاً، تُقيّم بناءً على published_at.
from / toتواريخ بتنسيق ISOنافذة واضحة عندما لا تتناسب الإعدادات المسبقة.
strict_countrytrue/falseاحسب فقط المقالات التي يكون فيها البلد حقيقة ثابتة وليس استنتاجاً.

التحكم في المخرجات

المعلمةالقيمالتأثير
sortdate · date_asc · crawled · crawled_asc · relevanceرتّب حسب crawled عند الاستعلام عن مقالات جديدة — تنشر الناشرات تواريخ النشر بأثر رجعي؛ بينما يتقدم وقت الزحف فقط إلى الأمام.
size1–100النتائج المعروضة في كل صفحة.
offset0–9900إزاحة التصفح.
full_texttrue/falseتضمين نص المقال. غير مفعّل افتراضيًا.
highlighttrue/falseإرجاع المقاطع المطابقة.
fieldsCSVتقليص الاستجابة لتشمل فقط الحقول التي تستخدمها فعليًا.
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"

العد قبل البحث

أقل نقاط النهاية استخدامًا في الخدمة هي /v1/stats. غالبًا ما يكون السؤال المفيد ليس «ما هي المقالات؟» بل «هل يوجد محتوى هنا من الأساس، وأين هو؟». يوفر العدّ إجابةً على هذا السؤال بتكلفة أقل بكثير — نحو مئتي رمز مقابل عدة آلاف لصفحة نتائج — ما يجعله الاستدعاء الأول الصحيح لأي وكيل يقرر ما إذا كان تشغيل البحث يستحق العناء.

curl "https://freenewsapi.ai/v1/stats?q=earthquake&date=7d"

يُرجع العدّ حسب البلد، واللغة، ونطاق المستوى الأعلى (TLD)، والناشر، واليوم، محسوبة على المجموعة الكاملة المطابقة وليس الصفحة الحالية. وهو أيضًا الطريقة التي تقيس بها التغطية قبل أن تثق بالنتائج. لقطة غير مصفاة في وقت الكتابة:

أفضل الدول

الدولةالمقالات
الهند2,286,014
الولايات المتحدة2,180,797
تركيا1,499,897
روسيا1,436,556
إيطاليا1,057,479
الأرجنتين826,947
إسبانيا812,347
أوكرانيا662,041
البرازيل551,013
ألمانيا543,132
فرنسا502,846
اليونان460,372
اليابان437,209
فيتنام408,934
المكسيك402,320
كوريا الجنوبية362,945
رومانيا354,229
المملكة المتحدة334,379
إيران291,782
بولندا255,599

أبرز اللغات

الإنجليزية 5,513,650 · الإسبانية 2,699,457 · الروسية 1,785,796 · التركية 1,501,004 · الإيطالية 992,200 · الألمانية 733,677 · الفرنسية 689,136 · العربية 664,016 · البرتغالية 637,607 · الهندية 560,840 · اليونانية 466,504 · اليابانية 427,085 · الفيتنامية 385,719 · الرومانية 358,766 · الصينية 352,720 · الأوكرانية 345,809 · الكورية 335,079 · الفارسية 268,126 · البولندية 238,904 · البلغارية 183,204.

توزيع اللغات هذا يستحق التأمل لحظة، لأنه عكس ما تقدمه معظم منصات الأخبار API المعتادة. مجموعة البيانات الإنجليزية-أمريكية الأولى ليست ما نبحث عنه هنا: فالهند تتفوق على الولايات المتحدة، والتركية تتفوق على الألمانية، ولغات مثل اليونانية والفارسية والبلغارية والفيتنامية لها تمثيل بأرقام سداسية (أكثر من 100,000). إذا كان سؤالك يتعلق بصحافة غير إنجليزية، فهذا مجموعة بيانات مختلفة تماماً من حيث المحتوى.

الحجم

المنحنى اليومي في by_day يغطي كامل نافذة التسعين يوماً. الأيام الأخيرة تقع في نطاق يتراوح بين 400,000 و700,000 مقال يومياً؛ أما في بداية النافذة، قبل إضافة طبقة RSS بجانب استيراد الأرشيف، كان الحجم اليومي يتراوح بين 130,000 و230,000. كلا الرقمين واضحين في نفس الاستجابة، وهذا هو الهدف — الخدمة تعرض لك مسار نموها الفعلي بدلاً من الاستناد إلى متوسط تسويقي.

الاتجاهات: ما تغطيه الصحافة فعلياً الآن

البحث يجيب على سؤال "ماذا كُتب عن X". الاتجاهات تجيب على سؤال مختلف وأفضل غالباً: "ماذا يحدث" — دون الحاجة إلى تحديد X.

تقوم خوارزمية (روبوت) بتجميع المقالات إلى قصص حسب كل دولة وتحديثها باستمرار. كل خمس دقائق، تُلصق المقالات الجديدة بالقصص المعروفة من خلال الكلمات المفتاحية المحددة لها، دون أي استدعاء لنموذج ذكاء اصطناعي؛ وكل بضع ساعات، تمر كل دولة بمرحلة مراجعة شاملة حيث يقرأ نموذج لغوي العناوين ويعيد تسمية القصص من الصفر. في وقت كتابة هذا التقرير، تغطي طبقة الاتجاهات 115 دولة، ويتم إعادة حساب كل منها خلال الدقائق القليلة الماضية.

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": [ … ]
    }
  ]
}

تأتي كل قصة مع عددين لهما معنيان مختلفان. articles (المقالات) يشير إلى حدة التغطية؛ بينما publishers (الناشرون) يشير إلى اتساع التغطية. قصة تحتوي على 200 مقال من 4 جهات هي هوس غرفة أخبار واحدة. أما قصة تحتوي على 60 مقالاً من 40 جهة فهي حدث. الترتيب الافتراضي يكون حسب عدد الناشرين، ويمكنك ضبط المعيار الخاص بك باستخدام min_publishers / min_articles.

تُصنَّف كل قصة ضمن فئة ثابتة من بين: politics (سياسة)، business (أعمال)، markets (أسواق)، tech (تكنولوجيا)، sport (رياضة)، health (صحة)، science (علوم)، culture (ثقافة)، crime (جريمة)، conflict (صراع)، weather (طقس)، society (مجتمع).

النافذة الزمنية هي خيار القارئ، وليس خيار الخوارزمية

هذا قرار تصميمي أنيق حقاً. تُخزَّن كل مقالة مع وقت نشرها وتُربط بقصتها، لذا فإن أي نافذة زمنية — سواء كانت خمسة عشر دقيقة، أو ساعة، أو يوماً، أو تاريخاً محدداً من التقويم — هي مجرد استعلام نطاق (range query) على البيانات المخزَّنة نفسها. عملية حسابية واحدة تخدم جميع النوافذ في آن واحد. تعمل window=15m، وwindow=1h، وwindow=24h، وdate=2026-09-01، أو زوج since/until الصريح، جميعها على نفس الفهرس (index) دون الحاجة إلى إعادة حساب.

الكلمات المفتاحية: الكلمات التي تُبنى عليها الأخبار

curl "https://freenewsapi.ai/v1/trends/keywords?country=US&size=8"

تعود كل كلمة مفتاحية مع عدد القصص المميزة التي تحملها، وعدد المقالات التي تحتويها تلك القصص، و—وهو الجانب الأكثر إثارة—عدد الصحف الوطنية التي تستخدمها. هذا الرقم الأخير هو الفارق بين حدث عالمي وحدث محلي. الكلمة التي تظهر في سبعين دولة هي قصة عالمية؛ والكلمة التي تهيمن على صحف دولة واحدة هي قصة محلية، بغضّ النظر عن حجم الضجيج الذي تثيره هناك.

الدول النشطة حالياً

curl "https://freenewsapi.ai/v1/trends/countries"

يعيد قائمة كل دولة يتم تتبعها مع عدد قصصها الحية المباشرة وعدد الدقائق التي مضت على آخر إعادة حساب — فالدول مثل تركيا وروسيا وإيران واليونان والهند وإيطاليا وأوكرانيا ورومانيا والأرجنتين وألمانيا والبرازيل تحمل حالياً آلاف القصص الحية، ويتم إعادة حسابها خلال آخر عشر دقائق. كما أن المسار /v1/trends/{cc}/{slug} يفتح أي قصة مفردة مع قائمة مقالاتها الكاملة.

الأسواق مقابل التغطية: السعر على محور، والاهتمام على المحور الآخر

هذا هو أكثر شيء غير اعتياداً في الخدمة، وهو موجود لأن مجموعة البيانات (corpus) تجعل بنائه شبه مجاني. ضع سلسلة الأسعار بجانب حجم الكتابة العالمية عن ذلك الشيء في نفس الساعات، على خط زمني واحد.

curl "https://freenewsapi.ai/v1/markets"

يتم تتبع أربعة عشر أداة (instrument)، عبر فئات أصول أربع:

الفئةالأدواتالفترة الزمنيةالمصدر
العملات المشفرةبيتكوين، إيثيريوم، سولانا، إكس آر بي (XRP)، بي إن بي (BNB)، دوغيكوينساعةBinance
المعادنالذهب (USD/oz)ساعةBinance
الفوركسEUR/USD, USD/JPY, USD/TRY, USD/INR, USD/BRL, USD/PLNيومECB
الطاقةسعر الكهرباء الألماني (EUR/MWh)ساعةEnergy-Charts
curl "https://freenewsapi.ai/v1/markets/usd-try?window=30d"

يكفي هذا الاتصال البسيط للحصول على سعر الليرة مقابل الدولار وحجم التغطية الصحفية التركية خلال الفترة نفسها، مُطابَقًا ساعة بساعة. وتُعدّ الصحافة التركية الشريحة الثالثة الأكبر في هذا المجموع، وهو بالضبط ما يجعل هذا الاقتران يُنتج نتائج ذات مغزى وليس ضوضاء عشوائية.

ومجموعة كاملة من مؤشرات مشاعر البيتكوين

تستحق بيتكوين عائلتها الخاصة المكونة من سبع نقاط نهاية، كونها الأداة الوحيدة التي يُجادل فيها باستمرار حول نبرة الأخبار وتحركات السعر، ونادراً ما يتم قياسها:

نقطة النهايةالنتائج
/v1/btc/summaryأحدث الأسعار، التحركات الأخيرة، ونبرة التغطية الإخبارية اليوم.
/v1/btc/priceشموع BTC/USDT حسب الفاصل الزمني.
/v1/btc/sentimentنبرة الأخبار لكل فترة.
/v1/btc/seriesمحاذاة السعر والنبرة على خط زمني واحد.
/v1/btc/correlationالارتباط بين نبرة الأخبار وتحرك السعر بفارق زمني — هل تسبق التغطية السعر، أم تتبعه؟
/v1/btc/newsمقالات عن العملات المشفرة مع تصنيف المشاعر الخاص بها، وقابلة للتصفية حسب التصنيف، المضيف، اللغة والاستعلام.
/v1/btc/sourcesأي وسائل الإعلام تغطي أخبار العملات الرقمية، وكيف يميل كل منها.

تأتي تسميات المشاعر من نموذج لغوي يعمل على تحليل أحدث مقالات العملات الرقمية كل خمس دقائق، مقابل قائمة عملات معايرة. يُعد المسار /v1/btc/correlation مع معلمة max_shift هو الخيار الأمثل إذا أردت اختبار ادعاء "الأخبار تسبب الحركة" بدلاً من تكراره.

نفس البحث، كخيار نشر

تأخذ ثلاث نقاط نهاية إضافية معايير البحث نفسها وتعرض النتائج بتنسيقات نشر بدلاً من JSON:

https://freenewsapi.ai/v1/rss?q=semiconductor+export+controls&lang=en&date=7d&sort=date

وهذا يعني أن أي بحث محفوظ يصبح خيار نشر يمكنك لصقه في قارئ، أو عقدة n8n، أو تكامل Slack، أو محفز Zapier، أو مولد مواقع ثابتة — بدون كود وبدون مفتاح. إنها ميزة صغيرة تزيل طبقة تكامل كاملة بصمت للمستخدمين غير المبرمجين.

MCP: ثمانية وعشرون أداة، طبقتان

يعيش خادم MCP في عنوان URL واحد، ويتكلم بـ HTTP القابل للنشر (JSON-RPC 2.0 عبر POST، إصدار البروتوكول 2025-06-18)، ويدعم الدفعات، و—مثل كل شيء آخر هنا—لا يتطلب خطوة مصادقة ولا معرف جلسة.

claude mcp add --transport http freenewsapi https://freenewsapi.ai/mcp

يُعرّض 28 أداة في طبقتين متعمدتين.

الطبقة الأولى: ست اختصارات تجيب على سؤال كامل في استدعاء واحد

الأداةلأجل
search_news"ماذا كُتب عن X" — بحث في النص الكامل، مع نتائج مختصرة.
get_trends"ما الذي يحدث" — قصص مُجمَّعة بدلاً من قائمة بالمقالات.
trend_keywordsالكلمات التي تُبنى عليها الأخبار حالياً، مع عددها وأين تنتشر جغرافياً.
find_publishersالبحث عن وسائل الإعلام: الاسم، النطاق، البلد، اللغة، وعدد المقالات يومياً.
list_countriesأي البلدان تحتوي على قصص حية، كم عددها، وكم هي حداثة.
market_vs_newsسلسلة أسعار بجانب حجم التغطية. استدعِ الدالة بدون أداة لمعرفة ما هو متاح.

الطبقة الثانية: كل نقطة نهاية، مُولَّدة من الخدمة نفسها

تحت الاختصارات، تُكشف كل نقطة نهاية خام كأداة مستقلة تحتوي على كل المعاملات التي يقبلها الـ API — news_get_search، news_get_stats، news_get_article، news_get_trends، news_get_trends_keywords، news_get_markets_slug، عائلة news_get_btc_* كاملة، ومُصيِّرات التغذية (feed renderers)، وnews_get_health. هذه مُولَّدة من الخدمة الحية، لذا لا يمكن أن تنحرف عن ما يقبله الـ API فعلياً.

أداتان ميتاتان تُغلق الحلقة: تُعيد news_list_endpoints فهرس كل ما هو موجود، بينما يُنفِّذ news_get طلب GET خام على أي مسار — لذا يمكن للوكيل الذي يواجه نقطة نهاية غير مغطاة في قائمة أدواته الوصول إليها.

curl "https://freenewsapi.ai/mcp?format=json"

طلب GET واحد، بدون مصافحة، وستحصل على فهرس كامل قابل للقراءة الآلية: الخادم، بروتوكول النقل، البروتوكول، عدد الأدوات، كل أداة مع وصفها، وكل نقطة نهاية مع قائمة معاملاتها.

مُصمَّمة لتكون مقروءة بواسطة الآلات

الوثائق ليست فكرة لاحقة مُلصقة على الـ API — بل هي ناتج أساسي منها. الموقع يُصدّر 665 صفحة ثابتة، وتوجد بعضها خصيصاً لضمان عدم حاجة النموذج لقراءة HTML:

إضافة إلى 168 صفحة للبلدان، و121 صفحة للغات، و275 صفحة لامتدادات النطاقات (TLDs) — كل شريحة من مجموعة البيانات لها سطح تصفح خاص بها، يعرض ما تحتويه فعلياً.

مصدر المقالات

مساران للاستيعاب يغذيان نفس الفهرس، والفرق بينهما مهم.

مسار الأرشيف

كل عشر دقائق، يتحقق مهمة مجدولة من أرشيف CC-NEWS الخاص بـ Common Crawl بحثاً عن ملفات WARC جديدة، وتعالج أي محتوى لم تره من قبل، باستخدام أربعين عاملاً متوازياً. يستخرج المستخرج كل مقال من بيانات الزحف الخام باستخدام تسلسل هرمي موثق لكل حقل — وقد تم قياس التسلسلات الهرمية مقابل بيانات حقيقية بدلاً من افتراضها:

الحقلالتسلسل الهرميالتغطية
الوصفJSON-LD → meta → OpenGraph → بطاقة Twitter → articleBody → الفقرة الافتتاحية98.1%
اللغة<html lang> → JSON-LD inLanguage → og:locale99.9%
البلدccTLD → JSON-LD addressCountry → لغة-منطقة → og:locale79.1%
التاريخJSON-LD datePublished → meta → trafilatura → وقت الزحف100%

هذه النسبة الخاصة بالدولة هي الأكثر صدقاً، ولهذا السبب يتم تعريض country_source في كل مقال: فحوالي خُمس السجلات لا تحتوي على إشارة موثوقة للدولة على الإطلاق، وحوالي ثلث القيم الموجودة هي استنتاجات وليست حقائق. يخبرك API بكيفية التمييز بين الحالتين بدلاً من التظاهر.

المسار المباشر

يتمكّن روبوت ثانٍ من استعلام مصادر RSS الخاصة بالنشر كل خمس دقائق، ضمن دورة تتضمن طلبات مشروطة — حيث يكلف استعلام المصدر الذي يعود بـ 304 Not Modified كلفة ضئيلة جداً، ويتم ضبط فترة الاستعلام لكل مصدر وفقاً لتكرار نشره فعلياً. فلا يتم إغراق منشور ينشر خمس مقالات يومياً باستعلامات كل خمس عشرة دقيقة.

كما أنه يأخذ فقط ما وضعه الناشر في المصدر: العنوان، المقدمة، والنص الكامل إذا كان المصدر يحتوي عليه. لا يتنقل إلى موقع الناشر لجلب المزيد. هذا حد متعمد، وهو السبب الذي يجعل الخدمة قادرة على الوعود التي تقدمها في صفحة شروطها القانونية الموجهة للناشرين.

والآليات المحيطة بهما

حول مسارَي الاستيعاد هذين، توجد عشرات الروبوتات الأخرى العاملة وفق جداول زمنية: اكتشاف المصادر ومزامنتها، حل مشكلة تحديد الدولة لكل نطاق، بناء الاتجاهات ومراجعتها، تعبئة الكلمات المفتاحية، تحليل المشاعر في العملات المشفرة، سحب بيانات السوق، فهرسة التصنيفات، الاحتفاظ (يُنفذ نافذة التسعين يوماً عبر استعلام ليلي على published_at وليس عبر عمر الفهرس)، التحقق من التاريخ، إعادة فحص المقالات الفارغة، وحارس الصحة الذي يعيد تشغيل أي شيء توقف. توجد مجموعة البيانات على عناقيد Elasticsearch مخصصة.

ما يغفل عنه هذا المجموعة من البيانات

تُعلن الخدمة عن قيودها الخاصة، وهي أسرع طريقة لتقييم ما إذا كانت تناسب مشكلتك.

الاستخدام الأمثل: التكلفة، التصفح (Paging) والأخطاء

ضبط استخدام الرمز المميز (Token)

بالنسبة للوكيل البرمجي (Agent)، يُعد حجم الاستجابة هو التكلفة الحقيقية. الشكل الموثق لذلك:

المكالمةالتكلفة التقريبية بالرموز المميزة (Tokens)متى
/v1/stats~200أولاً: قرر ما إذا كانت عملية البحث تستحق التنفيذ من الأساس.
/v1/search للمعطيات (Metadata) فقطبضع آلاف لكل صفحةالمسح والاختيار.
/v1/search?full_text=true~900 لكل مقالفقط للأقلية القليلة التي اخترتها فعليًا.

عشرون مقالًا مع full_text=true تمثل حوالي 40,000 رمز. النمط الموصى به دائمًا هو نفسه: العد، ثم المسح، ثم جلب النصوص الكاملة للأقلية التي تحتاجها.

التصفح ما بعد الحد الأقصى

offset يتوقف عند 9,900. للتنقل عبر مجموعة كبيرة، لا تُقاوم الحد الأقصى — بل قسّم حسب الوقت بدلًا من ذلك. كرر العملية يومًا بيوم، أو ساعة بساعة في حالة الاستعلامات المزدحمة، باستخدام from/to وsort=date. تحتوي الوثائق على صفحة مخصصة للتنقل عبر يوم كامل.

الأخطاء

العقد صريح وسهل البرمجة ضده: تعني 4xx أن الطلب خاطئ — أصلحه ولا تعيد المحاولة. تعني 5xx أن الخدمة معطلة — تراجع. تعني 429 إبطاء المعدل وإعادة المحاولة. تُتجاهل معلمات الاستعلام غير المعروفة بدلاً من رفضها، لذا فإن إضافة حقل لا يمكن أن يكسر أي متصل قائم.

عرّف عن نفسك (اختياري، واختياري حقًا)

بدون مفتاح، لا توجد طريقة للوصول إلى المتصل. مجاملة مقترحة هي رأس يحدد وكيلك، الإطار الذي يعمل من خلاله، والنموذج الذي يقوده:

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>)

نفس القيم تعمل كمعلمات استعلام عادية، وهو ما يكون أسهل عادةً:

https://freenewsapi.ai/v1/search?q=climate&agent_name=newsbot&software=langchain&model=gpt-4o

المفاتيح غير المعروفة تُتجاهل، لذا فإن إرسال مفاتيح إضافية آمن دائمًا. لا يتم التحقق من صحة أي شيء، ولا يتم تقييد المعدل بسبب عدم إرساله، والتعليمة الوحيدة ثابتة: لا تضع أبدًا بيانات المستخدمين الشخصية في هذه الحقول.

مواجهة أخبار Paid News APIs

تغطي صفحات المقارنة في الموقع أحد عشر منافسًا بشكل فردي. الفروق الهيكلية التي تبقى في جميعها:

الطبقات المجانية في أماكن أخرى

100 طلب في اليوم، مع تأخير لمدة 24 ساعة

الشكل القياسي لطبقة أخبار مجانية من API: دلو رمزي ضيق بما يكفي ليكون نسخة تجريبية، مع احتفاظ المقالات الجديدة في الانتظار لعملاء الاشتراك.

  • مفتاح مطلوب
  • حد يومي
  • مقالات مؤجلة
  • للاستخدام غير التجاري فقط
Free News API

بدون حد، بدون تأخير، بدون مفتاح

20 طلباً في الثانية لكل عنوان IP هو الحد الوحيد. عادةً ما يكون عمر أحدث مقال أقل من دقيقتين، ويُسمح بالاستخدام التجاري.

  • بدون مفتاح، بدون تسجيل
  • بدون حد يومي أو شهري
  • تحديث مستمر
  • يُسمح بالاستخدام التجاري
التغطية في أماكن أخرى

الأولوية للإنجليزية والولايات المتحدة

تُبنى معظم مجموعات البيانات من قائمة منشورات باللغة الإنجليزية، مع إضافة بقية العالم.

  • هيمنة اللغة الإنجليزية
  • تغطية رقيقة للغات غير اللاتينية
التغطية هنا

الهند > الولايات المتحدة، التركية > الألمانية

حوالي 100 لغة بحجم بيانات سداسي الأرقام في اليونانية، الفيتنامية، الفارسية، الأوكرانية والبلغارية.

  • 100 دولة
  • ~100 لغة
  • 11,668 مصدرًا مدرجًا في الكتالوج

ما تقدمه الخدمات المدفوعة حاليًا ولا تقدمه هذه الأداة: درجات المشاعر واستخراج الكيانات كحقول قياسية، وأرشيفات تعود لسنوات، وعقد يضمن مستوى خدمة (SLA). هذه ميزات حقيقية، وإذا كنت بحاجة إليها، فيجب عليك شراؤها.

وصفات

مراقب مباشر للدول

curl "https://freenewsapi.ai/v1/search?country=UA&lang=uk&date=today&sort=crawled&size=50"

هل هذه القصة عالمية أم محلية؟

curl "https://freenewsapi.ai/v1/trends/keywords?size=30"
# read `countries` on each keyword: 1 country = domestic, 70 = world event

تأسيس نموذج على التغطية الحالية، بتكلفة منخفضة

# 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"

هل تتصدر التغطية السعر؟

curl "https://freenewsapi.ai/v1/btc/correlation?interval=hour&max_shift=12"

تحويل بحث محفوظ إلى تغذية (Feed)

https://freenewsapi.ai/v1/rss?q=central+bank+rate&lang=en&date=24h&sort=date&size=50

اكتشف وسائل الإعلام ذات الأهمية في السوق

curl "https://freenewsapi.ai/v1/stats?country=BR&date=30d&top=50"
# the `hosts` block is a ranked publisher list for that slice

النسخة المختصرة

تقدم Free News API بحثاً نصياً كاملاً عبر أكثر من 21.5 مليون مقال إخباري من أكثر من 25,000 ناشر في 100 دولة وحوالي 100 لغة، ضمن نافذة زمنية متحركة تمتد تسعين يوماً، مع تحديث مستمر، وبدون مفتاح API، أو تسجيل حساب، أو حد استهلاك يتجاوز حد معدل الطلبات لكل عنوان IP. بالإضافة إلى البحث، تتوفر تجميعات أخبار حية حسب الدولة عبر 115 دولة، وتحليل للكلمات المفتاحية يميز بين الأحداث العالمية والمحلية، وأدوات سوقية أربعة عشر تُعرض مقابل حجم التغطية، وكتلة مشاعر البيتكوين المكونة من سبعة نقاط نهاية، وخدمات توزيع RSS/Atom/JSON لأي استعلام، وخادم MCP مكون من 28 أداة تم إنشاؤه من الخدمة نفسها.

توثّق معدلات الأخطاء الخاصة بها، وتكشف كيفية اشتقاق كل قيمة دولة، وتنشر صفحة توضح الأخطاء المحتملة في البيانات. بالنسبة إلى وكيل ذكي يحتاج إلى معرفة ما يُقال في العالم — باللغة التركية، أو اليونانية، أو الهندية، في الوقت الفعلي — فإن هذا المزيج من الميزات يصعب العثور عليه بأي سعر، وهذا المنتج مجاني.

يعمل البحث باستخدام عملية AND عبر جميع المصطلحات. استخدم 2–5 كلمات مفتاحية، وليس سؤالاً بصيغة اللغة الطبيعية.

Free News API، حول كيفية إجراء الاستعلامات بشكل جيد

ابدأ من هنا: freenewsapi.ai · MCP على freenewsapi.ai/mcp · الدليل الكامل كملف واحد في /llms-full.txt.