ค้นหา WHOIS และ RDAP API
ข้อมูลการจดทะเบียนของโดเมน ที่อยู่ IP หรือหมายเลขระบบอิสระใด ๆ ดึงตรงจากทะเบียนที่มีอำนาจผ่าน RDAP ผู้รับจดทะเบียน เนมเซิร์ฟเวอร์ DNSSEC วันหมดอายุ และผู้ติดต่อเรื่องการละเมิด ในรูป JSON แบบแบนราบ
ยังไม่มี API Key?
เข้าสู่ระบบบัญชีของคุณเพื่อสร้างและจัดการ API Key
คู่มือการผสานรวม
คัดลอกสนิปเพ็ต แทนที่ API key ของคุณ แล้วรัน ใช้ได้กับ HTTP client ทุกตัว — ตัวอย่างด้านล่างเป็น 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 จึงกลายเป็นนิยามเครื่องมือที่กระชับเพียงชิ้นเดียวสำหรับ LLM
ฟิลด์ในผลลัพธ์
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
| 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 | เครดิตที่เหลือในบัญชีของคุณ |
Rate limit
การจำกัดอัตราเป็นแบบต่อ API key ในหน้าต่างเลื่อน 60 วินาที เมื่อถึงขีดจำกัดคุณจะได้ 429 ที่สะอาดพร้อม header Retry-After
30req/min
ต่อ API key ต่อ endpoint หน้าต่างเลื่อน 60 วินาที
3concurrent
จำนวนคำขอที่กำลังดำเนินการพร้อมกันได้สูงสุดต่อ API key
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 ให้เป็นออบเจ็กต์ธรรมดา
ถาม: ทำไมข้อมูลผู้ติดต่อของผู้จดทะเบียนมักว่างเปล่า
ตอบ: นับตั้งแต่ GDPR ทะเบียน gTLD ส่วนใหญ่ปิดบังชื่อ อีเมล และที่อยู่ของผู้จดทะเบียนใน RDAP สาธารณะ และเปิดเผยเพียงผู้รับจดทะเบียนที่ดูแลกับผู้ติดต่อเรื่องการละเมิด การปิดบังนี้คือคำตอบของทะเบียนเอง ไม่ใช่ข้อบกพร่องของ API นี้ — ไม่มีผู้ให้บริการ WHOIS รายใดแสดงข้อมูลที่ทะเบียนไม่เผยแพร่ได้
ถาม: ใช้กับที่อยู่ IP และหมายเลขระบบอิสระได้หรือไม่
ตอบ: ได้ ส่งที่อยู่ IPv4 หรือ IPv6 เพื่อรับเครือข่ายที่จัดสรร บล็อก CIDR ผู้ถือครอง และรหัสอ้างอิง RIR หรือส่ง AS13335 หรือ 13335 เพื่อรับชื่อ AS พร้อมผู้ติดต่อฝ่ายผู้ถือครอง ฝ่ายรับแจ้งการละเมิด และฝ่ายเทคนิค ประเภทคำค้นตรวจจับได้จากข้อมูลที่ป้อน พารามิเตอร์เดียวจึงครอบคลุมทั้งสามกรณี
ถาม: โดเมนที่ยังไม่ได้จดทะเบียนจะคืนค่าอะไร
ตอบ: คืน HTTP 200 พร้อม found: false นี่คือคำตอบจริง — การตรวจว่าโดเมนว่างหรือไม่ก็ทำแบบนี้ — จึงคิดเครดิตตามปกติ มีเพียงความล้มเหลวฝั่งต้นทาง (ทะเบียนหมดเวลา หรือจำกัดอัตราคำขอ) เท่านั้นที่คืนรหัสนอกช่วง 2xx และกรณีเหล่านั้นไม่เคยถูกคิดค่าใช้จ่าย
ถาม: วันหมดอายุอัปเดตแค่ไหน
ตอบ: ดึงตรงจากบันทึก RDAP ของทะเบียนเอง ณ เวลาที่ร้องขอ โดยไม่มีชั้นแคชคั่นกลาง จึงใหม่เท่ากับตัวทะเบียนเอง นั่นทำให้เหมาะกับการเฝ้าติดตามวันหมดอายุ — ตรวจพอร์ตโฟลิโอทุกวันแล้วตั้งการแจ้งเตือนจาก expires_at