Semua yang dapat Anda lakukan di dasbor web (menambah dan menghapus domain, mengelola catatan DNS) juga tersedia secara terprogram melalui REST API.
Semua endpoint menerima dan mengembalikan JSON. Autentikasi memerlukan kunci API (lihat di bawah). Saat ini belum ada paginasi maupun pembatasan laju permintaan.
https://ns.nrnic.com/api
Anda dapat membuat kunci API dari Pengaturan Akun. Kunci yang baru dibuat hanya ditampilkan satu kali, jadi pastikan untuk menyimpannya di tempat yang aman.
Sertakan header Authorization berikut pada setiap permintaan:
Authorization: Bearer nrnic_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Jika terjadi kesalahan, respons menggunakan kode status HTTP yang sesuai (401/404/409/422/500, dll.) dan format JSON berikut.
{
"error": {
"code": "domain_not_found",
"message": "Domain not found."
}
}
| Metode | Path | Deskripsi |
|---|---|---|
| GET | /api/domains | Menampilkan daftar domain milik pengguna yang terautentikasi |
| POST | /api/domains | Menambahkan domain |
| GET | /api/domains/{id} | Mengambil domain, termasuk status sinkronisasi NS dan delegasi |
| DELETE | /api/domains/{id} | Menghapus domain |
| POST | /api/domains/{id}/resync | Mengirim ulang zona DNS ke semua nameserver (ns1–ns4) |
| POST | /api/domains/{id}/delegation-check | Memeriksa apakah domain sudah didelegasikan ke NRNIC |
| GET | /api/domains/{id}/records | Menampilkan daftar catatan DNS sebuah domain |
| POST | /api/domains/{id}/records | Menambahkan catatan DNS |
| PUT | /api/domains/{id}/records/{record_id} | Memperbarui catatan DNS |
| DELETE | /api/domains/{id}/records/{record_id} | Menghapus catatan DNS |
# Menampilkan daftar domain milik pengguna yang terautentikasicurl -s https://ns.nrnic.com/api/domains \
-H "Authorization: Bearer nrnic_xxxxxxxx"
# Menambahkan domaincurl -s https://ns.nrnic.com/api/domains \
-H "Authorization: Bearer nrnic_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"fqdn": "example.com"}'
# Menghapus domaincurl -s -X DELETE https://ns.nrnic.com/api/domains/123 \
-H "Authorization: Bearer nrnic_xxxxxxxx"
# Menambahkan catatan 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}'
# Memperbarui catatan 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}'
# Menghapus catatan DNScurl -s -X DELETE https://ns.nrnic.com/api/domains/123/records/456 \
-H "Authorization: Bearer nrnic_xxxxxxxx"
| type | Jenis catatan. Salah satu dari A, AAAA, CNAME, MX, TXT, NS, SRV, CAA. |
| name | Nama host (bagian subdomain). Gunakan "@" untuk apex zona. |
| content | Nilai catatan (alamat IP, nama host tujuan, dll.). |
| ttl | TTL dalam detik, 60–604800. Jika dihilangkan, nilai bawaannya 3600. |
| priority | Prioritas untuk catatan MX/SRV (0–65535). |
| weight | Bobot untuk catatan SRV (0–65535). |
| port | Nomor port untuk catatan SRV (0–65535). |