كل ما يمكنك فعله في لوحة التحكم على الويب (إضافة النطاقات وحذفها، وإدارة سجلات DNS) متاح أيضًا برمجيًا عبر واجهة REST API.
تستقبل جميع نقاط النهاية بيانات JSON وتعيدها. تتطلب المصادقة مفتاح API (انظر أدناه). لا يوجد حاليًا ترقيم للصفحات ولا حد لعدد الطلبات.
https://ns.nrnic.com/api
يمكنك إنشاء مفتاح API من إعدادات الحساب. يُعرض المفتاح الجديد مرة واحدة فقط، لذا احرص على حفظه في مكان آمن.
أضف ترويسة Authorization التالية في كل طلب:
Authorization: Bearer nrnic_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
عند حدوث خطأ، تستخدم الاستجابة رمز حالة HTTP المناسب (401/404/409/422/500 وغيرها) مع بنية JSON التالية.
{
"error": {
"code": "domain_not_found",
"message": "Domain not found."
}
}
| الطريقة | المسار | الوصف |
|---|---|---|
| GET | /api/domains | عرض قائمة النطاقات الخاصة بالمستخدم الموثَّق |
| POST | /api/domains | إضافة نطاق |
| GET | /api/domains/{id} | جلب نطاق مع حالة مزامنة NS وحالة التفويض |
| DELETE | /api/domains/{id} | حذف نطاق |
| POST | /api/domains/{id}/resync | إعادة إرسال منطقة DNS إلى جميع خوادم الأسماء (ns1–ns4) |
| POST | /api/domains/{id}/delegation-check | التحقق مما إذا كان النطاق مفوَّضًا إلى NRNIC |
| GET | /api/domains/{id}/records | عرض سجلات DNS الخاصة بنطاق |
| POST | /api/domains/{id}/records | إضافة سجل DNS |
| PUT | /api/domains/{id}/records/{record_id} | تحديث سجل DNS |
| DELETE | /api/domains/{id}/records/{record_id} | حذف سجل DNS |
# عرض قائمة النطاقات الخاصة بالمستخدم الموثَّقcurl -s https://ns.nrnic.com/api/domains \
-H "Authorization: Bearer nrnic_xxxxxxxx"
# إضافة نطاقcurl -s https://ns.nrnic.com/api/domains \
-H "Authorization: Bearer nrnic_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"fqdn": "example.com"}'
# حذف نطاقcurl -s -X DELETE https://ns.nrnic.com/api/domains/123 \
-H "Authorization: Bearer nrnic_xxxxxxxx"
# إضافة سجل DNScurl -s https://ns.nrnic.com/api/domains/123/records \
-H "Authorization: Bearer nrnic_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"type": "A", "name": "@", "content": "192.0.2.1", "ttl": 3600}'
# تحديث سجل DNScurl -s -X PUT https://ns.nrnic.com/api/domains/123/records/456 \
-H "Authorization: Bearer nrnic_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"type": "A", "name": "@", "content": "192.0.2.2", "ttl": 3600}'
# حذف سجل DNScurl -s -X DELETE https://ns.nrnic.com/api/domains/123/records/456 \
-H "Authorization: Bearer nrnic_xxxxxxxx"
| type | نوع السجل. أحد القيم: A وAAAA وCNAME وMX وTXT وNS وSRV وCAA. |
| name | اسم المضيف (جزء النطاق الفرعي). استخدم "@" لقمة المنطقة. |
| content | قيمة السجل (عنوان IP أو اسم المضيف الهدف وغير ذلك). |
| ttl | TTL بالثواني، من 60 إلى 604800. القيمة الافتراضية 3600 عند عدم تحديدها. |
| priority | الأولوية لسجلات MX/SRV (0–65535). |
| weight | الوزن لسجلات SRV (0–65535). |
| port | رقم المنفذ لسجلات SRV (0–65535). |