ခြုံငုံသုံးသပ်ချက်
DNS API ကို DNS နယ်မြေများနှင့်မှတ်တမ်းများ၏အပြည့်အဝစီမံခန့်ခွဲမှုပေးသည်။ အားလုံးနယ်မြေများအလိုအလျောက် BIND9 နယ်မြေဖိုင်မျိုးဆက်နှင့်ဖြန့်ချိနှင့်အတူ VPS.org ၏အာဏာပိုင်နာမည်ဆာဗာများပေါ်တွင် hosting နေကြသည်။
နာမည်ဆာဗာ အခြေခံအဆောက်အအုံ
ns1.vps.org (38.248.6.195) - DNSSEC inline-လက်မှတ်ရေးထိုးနှင့်အတူပထမဦးဆုံးမန်နေဂျာ
ns2.vps.org (38.248.6.196) - ဒုတိယတန်းစား
ns3.vps.org (38.248.6.197) - ဒုတိယတန်းစား
အဓိကအင်္ဂါရပ်များ
အလိုအလျောက် BIND9 zone file generation နှင့်ဖြန့်ချိ
TSIG authentication (master-slave replication) မှတဆင့် Zone လွှဲပြောင်း
အားလုံးအဓိက DNS မှတ်တမ်းအမျိုးအစားများအတွက်ထောက်ခံမှု (A, AAAA, CNAME, MX, TXT, NS, SRV, CAA)
domain name filtering နှင့် UUID-based zone ခွဲခြားသိရှိခြင်း
နယ်မြေ-သီးသန့်မှတ်တမ်းစီမံခန့်ခွဲမှုအတွက် Nested လမ်းကြောင်းများ
အထောက်အထားစိစစ်ခြင်း
အားလုံး DNS API ကိုတောင်းဆိုမှုများကို Bearer token ကိုအတည်ပြုလိုအပ်. တွင်သင့်အကောင့် dashboard မှ API ကို token များကို generate /account/developers/ အောက်ပါခွင့်ပြုချက်များနှင့်အတူ:
dns:list - DNS ဧရိယာများနှင့်မှတ်တမ်းများကိုကြည့်ရှု
dns:create - နယ်မြေအသစ်နှင့်မှတ်တမ်းများဖန်တီးပါ
dns:update - ရှိနေသော နယ်မြေနှင့်မှတ်တမ်းများကို ပြုပြင်ပါ
dns:delete - ဧရိယာများနှင့်မှတ်တမ်းများကိုပယ်ဖျက်ပါ
dns:* - အပြည့်အဝ DNS ကိုစီမံခန့်ခွဲမှု access ကို
နမူနာ
Authorization: Bearer vps_abc123def456...
အရေးကြီးသည်- API tokens များဖန်တီးမှုကာလအတွင်းတစ်ကြိမ်သာပြသကြသည်. သူတို့ကိုလုံခြုံစွာသိမ်းဆည်း. သင်တစ်ဦး token ကိုဆုံးရှုံးလျှင်, သင်အသစ်တစ်ခုကို generate ဖို့လိုအပ်ပါတယ်.
DNS ဇုန်အားလုံးကို စာရင်းပြုစုပါ
အားလုံး DNS ကိုဒေသများအတည်ပြုအသုံးပြုသူပိုင်ဆိုင်၏ pageted စာရင်းကိုရယူပါ. domain name ကိုအားဖြင့် filtering ကိုထောက်ခံ.
မေးမြန်းချက် ကန့်သတ်ချက်များ
သတ်မှတ်ချက်
အမျိုးအစား
လိုအပ်သည်
ဖော်ပြချက်
domain
string
ဟုတ်ကဲ့
Filter zones by exact domain name (e.g., example.com)
နမူနာတောင်းဆိုချက်
curl -X GET "https://admin.vps.org/api/v1/dns-zones/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
မိတ္တူကူးပါ
import requests
url = "https://admin.vps.org/api/v1/dns-zones/"
headers = {"Authorization": "Bearer YOUR_API_TOKEN"}
response = requests.get(url, headers=headers)
print(response.json())
မိတ္တူကူးပါ
const response = await fetch('https://admin.vps.org/api/v1/dns-zones/', {
headers: {'Authorization': 'Bearer YOUR_API_TOKEN'}
});
const zones = await response.json();
console.log(zones);
မိတ္တူကူးပါ
ဥပမာတုံ့ပြန်မှု
[
{
"uuid": "abc123-def456-ghi789",
"domain": "example.com",
"created_at": "2024-01-15T10:30:00Z",
"record_count": 12
},
{
"uuid": "xyz789-uvw456-rst123",
"domain": "myapp.io",
"created_at": "2024-06-20T14:15:00Z",
"record_count": 8
}
]
တုံ့ပြန်မှု ကွက်လပ်များ
နယ်မြေ
အမျိုးအစား
ဖော်ပြချက်
uuid
string
Unique zone identifier (used in API requests)
domain
string
Domain name for this DNS zone
created_at
datetime
Zone creation timestamp (ISO 8601 format)
record_count
integer
Total number of DNS records in this zone
တုံ့ပြန်မှု အခြေအနေ ကုဒ်များ
200
Successfully retrieved DNS zones list
401
Unauthorized - Invalid or missing API token
403
Forbidden - Token lacks dns:list permission
DNS Zone အသေးစိတ်အချက်အလက်များ Get
အားလုံးမှတ်တမ်းများအပါအဝင်, တိကျတဲ့ DNS zone ကိုအကြောင်းကိုအသေးစိတ်အချက်အလက်များကိုရယူပါ.
လမ်းကြောင်း ကန့်သတ်ချက်များ
သတ်မှတ်ချက်
အမျိုးအစား
လိုအပ်သည်
ဖော်ပြချက်
uuid
string
ဟုတ်ကဲ့
Unique zone identifier
ဥပမာတုံ့ပြန်မှု
{
"uuid": "abc123-def456-ghi789",
"domain": "example.com",
"created_at": "2024-01-15T10:30:00Z",
"record_count": 5,
"records": [
{
"uuid": "rec-001",
"record_type": "A",
"name": "@",
"value": "192.0.2.1",
"ttl": 3600,
"priority": null,
"created_at": "2024-01-15T10:30:00Z"
},
{
"uuid": "rec-002",
"record_type": "MX",
"name": "@",
"value": "mail.example.com",
"ttl": 3600,
"priority": 10,
"created_at": "2024-01-15T10:32:00Z"
}
]
}
တုံ့ပြန်မှု အခြေအနေ ကုဒ်များ
200
Successfully retrieved zone details
404
Zone not found or not owned by user
DNS Zone ကိုဖန်တီးပါ
ဒိုမိန်းအတွက်အသစ်တစ်ခု DNS ကို zone ကိုဖန်တီးပါ။ အဆိုပါ zone ကိုချက်ချင်း VPS.org nameservers များသို့ဖြန့်ချိလိမ့်မည်။
ခန္ဓာကိုယ် ကန့်သတ်ချက်များ တောင်းဆိုပါ
သတ်မှတ်ချက်
အမျိုးအစား
လိုအပ်သည်
ဖော်ပြချက်
domain
string
ဟုတ်ကဲ့
Domain name (e.g., example.com)
နမူနာတောင်းဆိုချက်
curl -X POST "https://admin.vps.org/api/v1/dns-zones/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"domain": "newdomain.com"}'
မိတ္တူကူးပါ
import requests
url = "https://admin.vps.org/api/v1/dns-zones/"
headers = {
"Authorization": "Bearer YOUR_API_TOKEN",
"Content-Type": "application/json"
}
data = {"domain": "newdomain.com"}
response = requests.post(url, headers=headers, json=data)
print(response.json())
မိတ္တူကူးပါ
const response = await fetch('https://admin.vps.org/api/v1/dns-zones/', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({domain: 'newdomain.com'})
});
const zone = await response.json();
console.log(zone);
မိတ္တူကူးပါ
ဥပမာတုံ့ပြန်မှု
{
"uuid": "new-zone-uuid",
"domain": "newdomain.com",
"created_at": "2026-01-18T16:45:00Z",
"record_count": 0,
"records": []
}
တုံ့ပြန်မှု အခြေအနေ ကုဒ်များ
201
DNS zone created successfully
400
Bad Request - Invalid domain name or zone already exists
403
Forbidden - Token lacks dns:create permission
DNS Zone ကိုပယ်ဖျက်
DNS ဧရိယာနှင့်ဆက်စပ်မှတ်တမ်းအားလုံးကိုအမြဲတမ်းပယ်ဖျက်ပါ
လမ်းကြောင်း ကန့်သတ်ချက်များ
သတ်မှတ်ချက်
အမျိုးအစား
လိုအပ်သည်
ဖော်ပြချက်
uuid
string
ဟုတ်ကဲ့
Unique zone identifier
တုံ့ပြန်မှု အခြေအနေ ကုဒ်များ
204
Zone deleted successfully (no response body)
403
Forbidden - Token lacks dns:delete permission
404
Zone not found
Zone တွင် DNS မှတ်တမ်းများစာရင်း
တိကျတဲ့ဇုန် (nested လမ်းကြောင်း) အတွက်အားလုံး DNS မှတ်တမ်းများကိုရယူပါ.
လမ်းကြောင်း ကန့်သတ်ချက်များ
သတ်မှတ်ချက်
အမျိုးအစား
လိုအပ်သည်
ဖော်ပြချက်
uuid
string
ဟုတ်ကဲ့
Zone UUID
နမူနာတောင်းဆိုချက်
curl -X GET "https://admin.vps.org/api/v1/dns-zones/{uuid}/records/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
ဥပမာတုံ့ပြန်မှု
[
{
"uuid": "rec-001",
"record_type": "A",
"name": "@",
"value": "192.0.2.1",
"ttl": 3600,
"priority": null,
"created_at": "2024-01-15T10:30:00Z"
},
{
"uuid": "rec-002",
"record_type": "MX",
"name": "@",
"value": "mail.example.com",
"ttl": 3600,
"priority": 10,
"created_at": "2024-01-15T10:32:00Z"
}
]
Zone တွင် DNS Record ကိုဖန်တီး
တိကျတဲ့ဇုန် (nested လမ်းကြောင်း) ကို DNS record ကိုအသစ်တစ်ခုကို add ။
ခန္ဓာကိုယ် ကန့်သတ်ချက်များ တောင်းဆိုပါ
သတ်မှတ်ချက်
အမျိုးအစား
လိုအပ်သည်
ဖော်ပြချက်
record_type
string
ဟုတ်ကဲ့
Record type: A, AAAA, CNAME, MX, TXT, NS, SRV, CAA
name
string
ဟုတ်ကဲ့
Record name (@ for root, subdomain, or FQDN)
value
string
ဟုတ်ကဲ့
Record value (IP address, hostname, text)
ttl
integer
No
Time to live in seconds (default: 3600)
priority
integer
For MX/SRV
Priority (required for MX and SRV records)
နမူနာတောင်းဆိုချက်
curl -X POST "https://admin.vps.org/api/v1/dns-zones/{uuid}/records/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"record_type": "A",
"name": "www",
"value": "192.0.2.1",
"ttl": 3600
}'
မိတ္တူကူးပါ
import requests
url = f"https://admin.vps.org/api/v1/dns-zones/{zone_uuid}/records/"
headers = {
"Authorization": "Bearer YOUR_API_TOKEN",
"Content-Type": "application/json"
}
data = {
"record_type": "A",
"name": "www",
"value": "192.0.2.1",
"ttl": 3600
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
မိတ္တူကူးပါ
တုံ့ပြန်မှု အခြေအနေ ကုဒ်များ
201
DNS record created successfully
400
Bad Request - Invalid parameters or validation error (e.g., MX record missing priority)
DNS မှတ်တမ်းများကိုစီမံခန့်ခွဲ (တိုက်ရိုက် Access)
မှတ်တမ်း UUID ကိုအသုံးပြုခြင်းတစ်ဦးချင်းစီ DNS မှတ်တမ်းများအပေါ်အပြည့်အဝ CRUD လုပ်ငန်းစဉ်များ.
ရရှိနိုင်သော လုပ်ဆောင်ချက်များ
GET /api/v1/dns-records/{uuid}/ - Retrieve record details
PUT /api/v1/dns-records/{uuid}/ - Full update (all fields required)
PATCH /api/v1/dns-records/{uuid}/ - Partial update (only changed fields)
DELETE /api/v1/dns-records/{uuid}/ - Delete record
Query Parameters (GET /api/v1/dns-records/ အတွက်)
Parameter
အမျိုးအစား
ဖော်ပြချက်
zone
string
Filter records by zone UUID
record_type
string
Filter by record type (A, AAAA, MX, etc.)
ဥပမာ: မှတ်တမ်း၏ TTL ကို update
curl -X PATCH "https://admin.vps.org/api/v1/dns-records/{rec-uuid}/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"ttl": 1800}'
Supported DNS Record Types
အမျိုးအစား
Purpose
Example Value
Priority Required
A
Maps domain to IPv4 address
192.0.2.1
ဟုတ်ကဲ့
AAAA
Maps domain to IPv6 address
2001:0db8::1
ဟုတ်ကဲ့
CNAME
Creates alias to another domain
example.com
ဟုတ်ကဲ့
MX
Mail server for domain
mail.example.com
ဟုတ်ကဲ့
TXT
Text record (SPF, DKIM, verification)
v=spf1 include:_spf.google.com ~all
ဟုတ်ကဲ့
NS
Nameserver delegation
ns1.example.com
ဟုတ်ကဲ့
SRV
Service location record
10 5060 sip.example.com
ဟုတ်ကဲ့
CAA
Certificate authority authorization
0 issue "letsencrypt.org"
ဟုတ်ကဲ့
အကောင်းဆုံးအလေ့အကျင့်များ
TTL တည်ဆောက်မှု
ထုတ်လုပ်မှု (တည်ငြိမ်): 3600-86400 စက္ကန့် (1-24 နာရီ)
ပြောင်းရွှေ့ခြင်းမပြုမီ: 300-600 စက္ကန့် (5-10 မိနစ်) - စီစဉ်ထားသောပြောင်းလဲမှုများမတိုင်မီ Lower TTL
ဖွံ့ဖြိုးတိုးတက်မှု: 300-1800 စက္ကန့် (5-30 မိနစ်) ပိုမိုမြန်ဆန်စမ်းသပ်မှုများအတွက်
အများသုံး နမူနာပုံစံများ
root ဒိုမိန်း (@): A / AAAA မှတ်တမ်းများကိုအသုံးပြုပါ, CNAME မဟုတ်
www subdomain: CNAME ကို root သို့မဟုတ်သီးခြားမှတ်တမ်းတစ်ခုညွှန်ပြအသုံးပြုနိုင်သည်
အီးမေးလ် (MX): အမြဲတမ်းအလိုရှိသော, အောက်ခြေနံပါတ် = အမြင့်ဆုံးအလိုရှိသောပါဝင်သည်
CNAME: အခြားမှတ်တမ်းအမျိုးအစားများဖြင့် အတူတူအမည်အတွက် အတူတကွတည်ရှိနိုင်ခြင်းမရှိပါ
လုံခြုံရေး
CAA မှတ်တမ်းများ: အသိအမှတ်ပြုလွှာထုတ်ပေးနိုင်သော CA များကိုဖော်ပြပါ
SPF/DKIM/DMARC: လျှို့ဝှက်ချက်ဖောက်ဖျက်ခြင်းကိုကာကွယ်ရန် အီးမေးလ်အတည်ပြုချက်ကို ချိန်ညှိပါ
ပုံမှန် Audits: သုံးလတစ်ကြိမ် DNS မှတ်တမ်းများကိုပြန်လည်ဆန်းစစ်ခြင်း, အသုံးပြုခြင်းမရှိသော entry များကိုဖယ်ရှား
အမှား ကိုင်တွယ်ခြင်း
အများဆုံးအမှားများ
အခြေအနေကုဒ်
ချို့ယွင်းချက်
ဖြေရှင်းနည်း
400
မမှန်ကန်သော ဒိုမိန်းအမည်
domain ကို DNS ကိုအမည်ပေးစည်းမျဉ်းစည်းကမ်းများကိုလိုက်နာကြောင်းသေချာ
400
MX မှတ်တမ်းသည် အဆင့်အတန်းလိုအပ်သည်
ထည့်သွင်းပါ priority MX နှင့် SRV မှတ်တမ်းများအတွက် Field
401
API တန်ကိန်း မမှန်ကန်ပါ
တန်ဖိုးကိုစစ်ဆေးပါ ပုံစံ (နှင့်စတင်ရမည် vps_)
403
ခွင့်ပြုချက် လွတ်နေသည်
လိုအပ်ချက်များနှင့်အတူ တန်ကိန်းအသစ်ကို ထုတ်လုပ်ပါ dns:* ခွင့်ပြုချက်
404
ရှာမတွေ့ပါ
UUID ကိုစစ်ဆေးပြီး သင့်အကောင့်ပိုင်ဆိုင်မှုရှိမရှိသေချာအောင်လုပ်ပါ
ဥပမာအမှားတုံ့ပြန်မှု
{
"detail": "MX records require a priority value",
"error_code": "validation_error",
"field": "priority"
}
DNS ပြောင်းလဲမှုများစမ်းသပ်ခြင်း
မှတ်တမ်း ပျံ့နှံ့မှုကို စစ်ဆေးပါ
# Query A record
dig example.com A
# Query specific nameserver
dig @ns1.vps.org example.com
# Query MX records
dig example.com MX
# Check all records
dig example.com ANY
အွန်လိုင်း Tools များကိုအသုံးပြုခြင်း
whatsmydns.net: Check global DNS propagation
dnschecker.org: Multi-location DNS lookup
mxtoolbox.com: Email-related DNS testing