استعلام WHOIS وRDAP API
بيانات تسجيل أي نطاق أو عنوان IP أو رقم نظام مستقل، مباشرة من السجل المرجعي عبر RDAP. المسجِّل وخوادم الأسماء وDNSSEC وتواريخ الانتهاء وجهات الإبلاغ بصيغة JSON بسيطة.
لا تملك مفتاح API؟
سجّل الدخول إلى حسابك لإنشاء وإدارة مفاتيح API.
دليل التكامل
انسخ المقتطف، استبدل مفتاح API الخاص بك، ثم شغّله. يعمل مع أي عميل HTTP — أمثلة أدناه بـ cURL وJavaScript وPython.
/api/whoishttps://www.apipick.comRegistration data for a domain, IP address, or AS number
querystringمطلوبA domain name, IPv4/IPv6 address, or AS number. The type is detected automatically. github.com
curl -X GET "https://www.apipick.com/api/whois" \
-H "x-api-key: YOUR_API_KEY"{
"query": "github.com",
"type": "domain",
"found": true,
"domain": "github.com",
"unicode_domain": null,
"nameservers": [
"dns1.p08.nsone.net",
"ns-421.awsdns-52.com"
],
"dnssec": false,
"handle": "1264983250_DOMAIN_COM-VRSN",
"status": [
"client delete prohibited",
"client transfer prohibited"
],
"country": null,
"registrar": "MarkMonitor Inc.",
"registered_at": "2007-10-09T18:20:50Z",
"updated_at": "2024-09-07T09:16:32Z",
"expires_at": "2026-10-09T18:20:50Z",
"contacts": [
{
"roles": [
"registrar"
],
"handle": "292",
"name": "MarkMonitor Inc.",
"organization": null,
"email": null,
"phone": null,
"address": null,
"country": null
}
],
"source": "RDAP (IANA bootstrap via rdap.org)",
"credits_used": 2,
"remaining_credits": 98
}مبني لحالات استخدام واقعية
مراقبة تواريخ الانتهاء
استعلم دوريًا عن محفظة نطاقاتك ونبِّه قبل مواعيد التجديد. البيانات حيّة من السجل، فلا يتأخر شيء بسبب دورة تخزين مؤقت.
العناية الواجبة بالنطاقات
تحقّق من عمر التسجيل والمسجِّل ورموز الحالة قبل الوثوق بنطاق طرف مقابل أو اعتماد مورِّد.
الإبلاغ عن إساءة الاستخدام
حوِّل عنوان IP أو رقم ASN إلى مالكه وجهة الإبلاغ لديه، كي تصل البلاغات الآلية إلى بريد يقرأه أحد فعلًا.
إثراء بيانات الوكلاء
معامل واحد يغطي النطاقات وعناوين IP وأرقام ASN، ما يجعله تعريف أداة واحدًا وواضحًا لنموذج لغوي.
حقول الاستجابة
| الحقل | النوع | الوصف |
|---|---|---|
| type | string | نوع الاستعلام المكتشَف: domain أو ip أو autnum |
| found | boolean | يكون false عندما يكون العنصر غير مسجَّل أو غير مخصَّص |
| registrar | string | null | المسجِّل الراعي (النطاقات) |
| registered_at | string | null | تاريخ التسجيل بصيغة ISO 8601 |
| expires_at | string | null | تاريخ الانتهاء بصيغة ISO 8601 (النطاقات) |
| updated_at | string | null | تاريخ آخر تعديل للسجل بصيغة ISO 8601 |
| status | string[] | رموز حالة EPP، مثل client transfer prohibited |
| nameservers | string[] | خوادم الأسماء المفوَّضة (النطاقات) |
| dnssec | boolean | null | ما إذا كان التفويض موقَّعًا بـ DNSSEC |
| cidr | string[] | كتل CIDR الخاصة بالتخصيص (استعلامات IP) |
| asn | integer | null | رقم النظام المستقل (استعلامات ASN) |
| contacts[] | object[] | كيانات jCard مُسطَّحة مع الأدوار والمؤسسة والبريد والهاتف |
| credits_used | integer | الأرصدة المخصومة عن هذا الطلب |
| remaining_credits | integer | الأرصدة المتبقية في حسابك |
حدود المعدل
يُطبَّق التقييد لكل مفتاح API، بنافذة منزلقة مدتها 60 ثانية. عند بلوغ الحد تحصل على رمز 429 نظيف مع ترويسة Retry-After.
30req/min
لكل مفتاح API ولكل نقطة نهاية. نافذة منزلقة مدتها 60 ثانية.
3concurrent
الحد الأقصى للطلبات الجارية المتزامنة لكل مفتاح API.
X-RateLimit-Limitالحد الأقصى للطلبات المسموح بها في الدقيقةX-RateLimit-Remainingالطلبات المتبقية في النافذة الحاليةX-RateLimit-Resetعدد الثواني حتى إعادة ضبط النافذة الحاليةRetry-Afterعدد الثواني التي يجب انتظارها قبل إعادة المحاولة (عند 429 فقط)HTTP/1.1 429 Too Many Requests
Retry-After: 12
X-RateLimit-Limit: 30
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 12
{
"error": "rate_limit_exceeded",
"message": "Rate limit exceeded: 30 requests/minute per API key. Retry after 12s.",
"retry_after": 12
}مصدر البيانات والترخيص
تأتي السجلات من الجهة المرجعية لكل عنصر — Verisign وNominet وسائر مشغّلي السجلات للنطاقات؛ وARIN وRIPE NCC وAPNIC وLACNIC وAFRINIC لنطاقات IP وأرقام الأنظمة المستقلة — عبر آلية RDAP bootstrap التابعة لـ IANA. لا نخزّن شيئًا مؤقتًا ولا نعيد نشره: ترى ما يقدّمه السجل لحظة الطلب.
الأسئلة الشائعة
س: بمَ يختلف هذا عن WHOIS التقليدي؟
ج: RDAP هو بديل IETF لبروتوكول WHOIS على المنفذ 43. فبينما يعيد WHOIS نصًّا حرًّا يختلف من سجل إلى آخر ويستلزم الكشط، يعيد RDAP بيانات JSON منظَّمة بمخطط قياسي، عبر HTTPS، مع رموز 404 صحيحة. نستعلم من السجل المرجعي عبر آلية bootstrap التابعة لـ IANA ونُسطِّح كتل jCard إلى كائنات عادية.
س: لماذا تكون بيانات المُسجِّل الشخصية غائبة غالبًا؟
ج: منذ اللائحة العامة لحماية البيانات، تحجب معظم سجلات نطاقات gTLD اسم المالك وبريده وعنوانه في RDAP العام ولا تنشر سوى المسجِّل الراعي وجهة إبلاغ عن إساءة الاستخدام. هذا الحجب هو إجابة السجل نفسه لا نقص في هذه الواجهة — فلا يمكن لأي مزوّد WHOIS أن يعرض بيانات لا ينشرها السجل.
س: هل يعمل مع عناوين IP وأرقام الأنظمة المستقلة؟
ج: نعم. مرِّر عنوان IPv4 أو IPv6 لتحصل على الشبكة المخصَّصة وكتل CIDR والمالك ومُعرِّف الـ RIR؛ ومرِّر AS13335 أو 13335 لتحصل على اسم النظام المستقل وجهات اتصال المالك والإبلاغ والدعم الفني. يُكتشف نوع الاستعلام من المدخل، فمعامل واحد يغطي الحالات الثلاث.
س: ماذا يُعيد نطاق غير مسجَّل؟
ج: يُعيد HTTP 200 مع found: false. هذه إجابة حقيقية — وبها يُتحقَّق من توافر النطاق — ولذلك تُحتسب بالرصيد المعتاد. ولا يُعاد رمز خارج نطاق 2xx إلا عند إخفاق من الطرف الأعلى (انتهاء مهلة السجل أو تقييد المعدل)، وهذه الحالات لا تُحتسب أبدًا.
س: ما مدى حداثة تاريخ الانتهاء؟
ج: يأتي مباشرة من سجل RDAP الخاص بالجهة المسجِّلة لحظة الطلب، دون أي طبقة تخزين مؤقت بينهما، فهو حديث بقدر حداثة السجل نفسه. وهذا ما يجعله مناسبًا لمراقبة تواريخ الانتهاء — استعلم عن محفظتك يوميًا وأطلق تنبيهات بناءً على expires_at.