አጠቃላይ እይታ
የዲ ኤን ኤስ API የዲ ኤን ኤስ ክልሎች እና መዝገቦችን ሙሉ አስተዳደር ይሰጣል. ሁሉም ክልሎች በ VPS.org's authoritative nameservers ላይ በራስ-ሰር BIND9 ክልል ፋይል ማምረት እና ማሰራጨት ጋር ይቀመጡ.
ሰርቨር
ns1.vps.org (38.248.6.195) - የDNSSEC መስመር-መጻፍ
ns2.vps.org (38.248.6.196) - ሴኮንዶች
ns3.vps.org (38.248.6.197) - ሴኮንዶች
የቁልፍ ባህሪያት
አውቶማቲክ BIND9 የዞን ፋይል መፍጠር እና ማሰራጨት
የዞን ማስተላለፊያዎች በ TSIG ማረጋገጫ (ማስተዳደር-ስላይድ መተካት)
ለሁሉም ዋና የዲ ኤን ኤስ መዝገብ ዓይነት (A, AAAA, CNAME, MX, TXT, NS, SRV, CAA) ድጋፍ
የዶሜይን ስም ማጣሪያ እና UUID-based የዞን ማወቅ
የዞን-ልዩ መዝገብ ቤት አስተዳደር
ማረጋገጫ
ሁሉንም የዲ ኤን ኤስ API ጥያቄዎች Bearer Token ማረጋገጫን ይጠይቃሉ. API Tokens ከእርስዎ የሂሳብ ዳሽቦርድ በ ላይ ይፈጥሩ /account/developers/ የሚከተሉትን ፈቃዶች አለው:
dns:list - የዲ ኤን ኤስ ክልሎች እና መዝገቦችን አሳይ
dns:create - አዲስ ፋይል ፍጠር
dns:update - የቀድሞው ፋይል
dns:delete - መዝገብ ቤትን አጥፉ
dns:* - የዲ ኤን ኤስ አስተዳደር
ምሳሌ
Authorization: Bearer vps_abc123def456...
አስፈላጊ፦ API ቶኬኖች በፍጥነት ሲፈጠሩ አንድ ጊዜ ብቻ ይታያሉ. በደህንነት አስቀምጣቸው. ቶኬን ብትጠፉ አዲስ መሆን አለበት
ሁሉንም የዲኤንኤስ ዞኖች ዘርዝር
የዲ ኤን ኤስ ዞኖችን ሁሉ የጽሑፍ ዝርዝር ያግኙ የተረጋገጠው ተጠቃሚ. በዶሜይን ስም ማጣሪያን ይደግፋል.
የጥያቄ መለኪያዎች
መለኪያ
አይነት
ያስፈልጋል
መግለጫ የለም
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 ዝርዝሮችን ማግኘት
የዲ ኤን ኤስ ክፍል ሙሉ መረጃን ያግኙ፣ ሁሉም መዝገቦችን ጨምሮ።
የመንገድ መለኪያዎች
መለኪያ
አይነት
ያስፈልጋል
መግለጫ የለም
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 ክልል ፍጠር
አዲስ የዲ ኤን ኤስ ክልል ለዶሜይን ፍጠር። ክልሉ በፍጥነት ወደ VPS.org ስም ሰርቨሮች ይለወጣል ፡፡
የጥያቄ አካል መለኪያዎች
መለኪያ
አይነት
ያስፈልጋል
መግለጫ የለም
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 ክልል አጥፉ
ለዘለቄታው የዲ ኤን ኤስ ክልል እና የተያያዙትን ሁሉንም መዝገቦች አጥፉ ይህ ተግባሩ ሊመለስ አይችልም
የመንገድ መለኪያዎች
መለኪያ
አይነት
ያስፈልጋል
መግለጫ የለም
uuid
string
አዎ
Unique zone identifier
የምላሽ ሁኔታ ኮዶች
204
Zone deleted successfully (no response body)
403
Forbidden - Token lacks dns:delete permission
404
Zone not found
የ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"
}
]
የDNS መዝገብ ቤትን ፍጠር
አዲስ የዲ ኤን ኤስ መዝገብ ቤትን ወደተወሰነ ክልል (የተጣበቀ ርቀት) ጨምር
የጥያቄ አካል መለኪያዎች
መለኪያ
አይነት
ያስፈልጋል
መግለጫ የለም
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)
የዲ ኤን ኤስ መዝገቦችን አስተዳደር (ቀጥተኛ መዳረሻ)
የሙሉ CRUD ተግባራት በየዲ ኤን ኤ መዝገቦች ላይ UUIDን በመጠቀም መዝገቦችን ይጠቀማሉ
የተገኙ ተግባራት
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
የጥያቄው ርዝመት (ለ GET /api/v1/dns-records/)
Parameter
አይነት
መግለጫ የለም
zone
string
Filter records by zone UUID
record_type
string
Filter by record type (A, AAAA, MX, etc.)
መዝገብ ቤትን ክፈት
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 ማስተካከያ
ምርት (stable): ሰከንዶች
ከቀን 300-600 ሰከንዶች (5-10 ደቂቃዎች) - TTL ከመቀመጥ በፊት ዝቅተኛ
የሂደት መቆጣጠሪያ 300-1800 ሰከንዶች (5-30 ደቂቃዎች) ለ ፈጣን ምርመራ
የተለመዱ ንድፎች
ሩት ዶሜይን (@): A/AAAA መዝገቦችን ይጠቀሙ፣ CNAME አይደለም
የWWW ፋይል CNAME ወደ ሩት ወይም ወደ የተለየ A መዝገብ ቤት የሚያመለክት ሊጠቀም ይችላል
ኢሜይል (MX): ሁልጊዜ መጀመሪያን ጨምር፣ ዝቅተኛ ቁጥር = ከፍተኛ መጀመሪያ
_አስቀምጥ ከሌሎች መዝገብ ቤት ዓይነቶች ጋር ለተመሳሳይ ስም መኖር አይችልም
ደህንነት
CAA መዝገቦች: የምስክር ወረቀቶችን ማውጣት የሚችሉ CAsን ግለጽ
SPF/DKIM/DMARC: የዌብሜይል ማረጋገጫን ለመከላከል ያስተካክሉ
መተላለፊያ የዲ ኤን ኤስ መዝገቦችን በሦስት ወር ውስጥ ይመልከቱ፣ ያልተጠቀሙባቸውን መዝገቦች ያስወግዱ
ስህተት
የተለመዱ ስህተቶች
የሁኔታ ኮድ
ስህተት
መተላለፊያ
400
ያልተገኘ ዶሜን ስም
የዶሜይን ስም የዲ ኤን ኤ ስም ማውጣት ደንቦችን ይከተላል
400
MX መዝገብ ቤት ፋይል
ጨምር priority MX እና SRV መዝገቦችን ለማስገባት
401
የማይሰራ API ቶኬን
የቶኬን ቅርጽ (በዚህ መጀመሩን ማረጋገጥ አለብህ) vps_)
403
የፈቀደው
አዲስ ቶኬን በፈለጉት ይምረጡ dns:* የይለፍ ቃል
404
ፋይል አልተገኘም
UUIDን ያረጋግጡና ፋይል ለእርስዎ ግልባጭ የሚሆን መሆኑን ያረጋግጡ
ስህተት መልስ
{
"detail": "MX records require a priority value",
"error_code": "validation_error",
"field": "priority"
}
የዲ ኤን ኤ ለውጦችን በመሞከር ላይ
መዝገብ ቤትን ክፈት
# 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
የመስመር ላይ መሣሪያዎችን በመጠቀም
whatsmydns.net: Check global DNS propagation
dnschecker.org: Multi-location DNS lookup
mxtoolbox.com: Email-related DNS testing