الاستعلام عن IPv4

الموقع والمنطقة الزمنية وتفاصيل الشبكة لعنوان IPv4. اترك العنوان فارغًا للاستعلام عن المتصل.

GEThttps://api.mygeocode.com/v1/ipv4

المعاملات

المعاملالنوعالوصف
ipاختياريسلسلة نصيةعنوان IPv4 بالصيغة النقطية. القيمة الافتراضية: العنوان الذي جاء منه الطلب.
ipsاختياريسلسلة نصيةعناوين مفصولة بفواصل، حتى 100، لدفعة واحدة. يعيد مصفوفة results بالترتيب نفسه. يُحتسب كل عنوان طلبًا واحدًا.
langاختياريسلسلة نصيةرمز ISO 639-1 لأسماء الدول والمناطق والمدن. القيمة الافتراضية en.
keyاختياريسلسلة نصيةمفتاح API، إذا لم يُرسل في ترويسة.

مثال

$ curl -H "X-API-Key: YOUR_KEY" "https://api.mygeocode.com/v1/ipv4?ip=1.1.1.1"
// In a browser, with no ip parameter, this returns the visitor's own address
const geo = await (await fetch("https://api.mygeocode.com/v1/ipv4", { headers: { "X-API-Key": "YOUR_KEY" } })).json();
console.log(geo.country_code, geo.timezone);
import requests

geo = requests.get("https://api.mygeocode.com/v1/ipv4", params={"ip": "1.1.1.1"}, headers={"X-API-Key": "YOUR_KEY"}, timeout=5).json()
print(geo["country_code"], geo["org"], geo["is_datacenter"])
الاستجابة
{
  "status": "ok",
  "ip": "1.0.164.165",
  "version": 4,
  "found": true,
  "prefix": "1.0.164.0/24",
  "country": "Thailand",
  "country_code": "TH",
  "continent": "Asia",
  "continent_code": "AS",
  "region": "Krung Thep Maha Nakhon",
  "region_code": null,
  "city": "Bangkok",
  "postcode": "10200",
  "lat": 13.749976,
  "lon": 100.516819,
  "timezone": "Asia/Bangkok",
  "utc_offset": "+07:00",
  "utc_offset_seconds": 25200,
  "is_eu": false,
  "asn": 23969,
  "as_name": "TOT Public Company Limited",
  "org": "TOT Public Company Limited",
  "usage_type": "Eyeball",
  "registry": "apnic",
  "allocated": "2008-10-22",
  "tags": ["dsl"],
  "is_anycast": false,
  "is_satellite": false,
  "is_datacenter": false,
  "is_proxy": false,
  "is_vpn_provider": false,
  "is_tor": false,
  "is_private": false,
  "abuse_email": "abuse@totisp.net",
  "threat": {
    "listed": true,
    "score": 90,
    "source_count": 2,
    "categories": ["abuse", "attacker"],
    "is_tor": false,
    "is_tor_exit": false,
    "is_bogon": false,
    "listings": [
      { "category": "abuse", "confidence": 100, "recency_days": 1 },
      { "category": "attacker", "confidence": null, "recency_days": null }
    ]
  },
  "updated_at": "2026-09-18 06:53:39"
}

حقول الاستجابة

الحقلالنوعالوصف
ip, versionسلسلة نصية، عدد صحيحالعنوان الذي جرى الاستعلام عنه، بصيغته القياسية، و4 أو 6.
foundمنطقيfalse عندما لا تغطي أي شبكة العنوان، وتكون حقول الموقع حينها null.
prefixسلسلة نصيةأدق شبكة تحتوي على العنوان، بصيغة CIDR.
country, country_codeسلسلة نصيةاسم الدولة ورمز ISO 3166-1 alpha-2 بأحرف كبيرة.
continent, continent_codeسلسلة نصيةاسم القارة ورمزها المكوّن من حرفين.
region, region_codeسلسلة نصيةالتقسيم الإداري من المستوى الأول ورمزه المختصر. يُملأ الرمز للولايات المتحدة وكندا وأستراليا، وفي غيرها لا يوجد إلا حيث تتضمنه مجموعة البيانات.
city, postcodeسلسلة نصيةأفضل تقدير، وnull إذا كان غير معروف.
lat, lonرقممركز أدق منطقة معروفة.
elevation_mرقم أو nullالارتفاع فوق متوسط مستوى سطح البحر عند تلك النقطة بالأمتار، من شبكة 15 ثانية قوسية نفسها المستخدمة في نقطة نهاية الارتفاع. قيمة سالبة فوق قاع البحر.
timezone, utc_offset, utc_offset_secondsسلسلة نصية، سلسلة نصية، رقممنطقة IANA، والإزاحة السارية الآن بصيغة +HH:MM، والإزاحة نفسها بالثواني. تُحدَّد المنطقة وفق الإحداثيات وحدود المناطق الزمنية، لذا تتفق دائمًا مع lat وlon.
is_euمنطقيالدولة عضو في الاتحاد الأوروبي.
asn, as_name, orgعدد صحيح، سلسلة نصيةرقم النظام المستقل واسمه والمؤسسة التي تقف خلفه.
usage_typeسلسلة نصيةطبيعة المشغّل: Eyeball (مزوّد إنترنت للمستهلكين)، أو Carrier، أو Content، أو Hosting، أو Enterprise، أو Education، أو NSP، أو unknown.
registry, allocatedسلسلة نصيةالسجل الإقليمي الذي خصّص رقم ASN وتاريخ التخصيص.
tagsمصفوفةوسوم على مستوى المشغّل مثل dsl وcdn وvpsh (استضافة VPS) وvpn وsatnet. تصف مشغّل الشبكة لا العنوان المنفرد.
is_anycast, is_satelliteمنطقيالبادئة من نوع anycast، والمشغّل شبكة أقمار صناعية.
is_datacenterمنطقيشبكة استضافة أو محتوى. اعتبر المدينة غير موثوقة وضع في حسبانك أن حركة المرور قد تكون آلية.
is_proxy, is_torمنطقيدليل على مستوى العنوان على أنه مرحّل أو نقطة خروج لشبكة Tor، أو أنه مدرج كنقطة نهاية لوكيل أو VPN.
is_vpn_providerمنطقييشغّل المشغّل خدمات VPN أو وكيل في مكان ما من شبكته (مؤشر على مستوى المشغّل، أضعف من is_proxy).
is_privateمنطقيعنوان محجوز أو خاص أو غير قابل للتوجيه بطريقة أخرى. عندما تكون القيمة true لا تحمل الاستجابة إلا ip وversion وis_private وreason.
abuse_emailسلسلة نصيةجهة الاتصال المسجلة للإبلاغ عن إساءة الاستخدام في الشبكة.
threatكائنالسمعة: listed، وscore من 0 إلى 100 (وزن أسوأ بلاغ، مع خصم للبلاغات القديمة)، وsource_count (عدد البلاغات المستقلة التي تدرجه)، وcategories، وعلامات Tor وbogon، والإدراجات الفردية listings مع الفئة والثقة وعدد الأيام منذ الإبلاغ عن كل منها.
updated_atسلسلة نصيةآخر مرة جرى فيها تحديث سجل هذه الشبكة.

أي من الإصدارين في استدعاء واحد

تقبل GET /v1/ip عنوان IPv4 أو IPv6 (أو لا شيء، للاستعلام عن المتصل) وتعيد السجل نفسه الذي تعيده نقاط النهاية الخاصة بكل إصدار. استخدمها عندما لا تعرف مسبقًا نوع العنوان الذي ستتلقاه.

ملاحظات

الاستعلام نفسه بصيغ المزوّدين الآخرين

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

المزوّدالمضيفالمسار
Geoapifygeoapify.mygeocode.com/v1/ipinfo?ip=...
ip-api.comipapi.mygeocode.com/json/{ip}
/json/
/batch (POST, JSON array)
ipinfo.ioipinfo.mygeocode.com/{ip}/json
/{ip}
/json
/{ip}/{field}
ipstackipstack.mygeocode.com/{ip}
/check
/{ip},{ip},{ip}

الأخطاء

400 invalid_request عندما لا يكون ip عنوان IPv4 صالحًا، أو عندما يُرسل عنوان IPv6 إلى نقطة النهاية هذه (استخدم /v1/ipv6)، أو عندما يحتوي ips على أكثر من 100 إدخال.