Têgihiştinî
دی ئێن ئێس ئەپی پی بەڕێوەبردنی تەواو دەدات بە ناوچەکانی دی ئێن ئێس و تۆمارەکان. هەموو ناوچەکان لەسەر VPS.org's authority name servers دادەنرێن لەگەڵ دروستکردنی ئۆتۆماتیکی BIND9 zone file و دابەشکردنی.
ناو:
ns1.vps.org (38.248.6.195) - پەرەپێدەری سەرەکی بە ئیمزاکردنی ناوەوەی DNSSEC
ns2.vps.org (38.248.6.196) - بەندەی دووهەم
ns3.vps.org (38.248.6.197) - بەندەی دووهەم
تایبەتمەندی سەرەکی
دروستکردنی خۆکارانەی فایلی ناوچەی BIND9 و دابەشکردنی
گەڕان بەدوای شوێندا لە ڕێگەی TSIG (Master-Slave replication)
پشتگیری بۆ هەموو جۆرەکانی تۆماری DNS (A, AAAA, CNAME, MX, TXT, NS, SRV, CAA)
ناوەکانی دۆمەینەکان پاڵاوتن دەکەن و شوێنی UUID-ی پێناسەیان پێدەدرێت
ڕێگایەکی بەستراو بۆ بەڕێوەبردنی تۆماری تایبەت بە ناوچەی
Rastkirin
هەموو داواکاریەکانی ئەپی پی ئێن پێویستی بە ناساندنی نیشانەی بارکەر هەیە. نیشانەی ئەپی پی لە داشبۆردی هەژمارەکەت دروست بکە لە /account/developers/ بە مۆڵەتی خوارەوە:
dns:list - بینینی ناوچەکانی DNS و تۆمارەکان
dns:create - دروستکردنی شوێن و تۆماری نوێ
dns:update - گۆڕینی ناوچەکان و تۆمارە هەنووکەییەکان
dns:delete - نوسراوەکانت بگۆڕە
dns:* - گەیشتنی تەواو بۆ بەڕێوەبردنی DNS
نمونە
Authorization: Bearer vps_abc123def456...
گرنگ: توكەکانی ئەپی بی ئی تەنها جارێک نیشان دەدرێن لە کاتی دروستکردنیدا. بە دڵنیاییەوە بیپارێزە. ئەگەر توكێکت لەدەستدا، دەبێت توكێکی نوێ دروست بکەیت.
Hemû Herêmên DNS-ê Lîst bike
لیستێکی پەڕەیی لە هەموو ناوچەکانی DNS وەرگرە کە خاوەنەکەی بەکارهێنەرێکی ڕاستەوخۆیە. پشتگیری لە پاڵاوتن دەکات بە ناوی دۆمەین.
Parametreyên Lêpirsînê
پارامەتر
Awa
Pêwîst
باسکردن
domain
string
نەخێر
Filter zones by exact domain name (e.g., example.com)
Daxwaza Nimûne
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);
_نەخشە
Bersiva Mînakî
[
{
"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
}
]
Zeviyên Bersivê
بەشی ناوەوەی پەڕەکە
Awa
باسکردن
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
Kodên Rewşa Bersivê
200
Successfully retrieved DNS zones list
401
Unauthorized - Invalid or missing API token
403
Forbidden - Token lacks dns:list permission
زانیارییەکانی ناوچەی DNS بەدەست بهێنە
زانیارییە وردەکان دەربارەی ناوچەی دیاریکراوی DNS بەدەست بهێنە، لەگەڵ هەموو تۆمارەکان.
Parametreyên Rêyê
پارامەتر
Awa
Pêwîst
باسکردن
uuid
string
Erê
Unique zone identifier
Bersiva Mînakî
{
"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"
}
]
}
Kodên Rewşa Bersivê
200
Successfully retrieved zone details
404
Zone not found or not owned by user
دروستکردنی ناوچەی DNS
Create a new DNS zone for a domain. The zone will be immediately deployed to VPS.org nameservers.
Parametreyên Laşê Daxwazê
پارامەتر
Awa
Pêwîst
باسکردن
domain
string
Erê
Domain name (e.g., example.com)
Daxwaza Nimûne
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);
_نەخشە
Bersiva Mînakî
{
"uuid": "new-zone-uuid",
"domain": "newdomain.com",
"created_at": "2026-01-18T16:45:00Z",
"record_count": 0,
"records": []
}
Kodên Rewşa Bersivê
201
DNS zone created successfully
400
Bad Request - Invalid domain name or zone already exists
403
Forbidden - Token lacks dns:create permission
بەشی DNS هەڵبگرە
بۆ هەمیشە ناوچەیەکی DNS و هەموو تۆمارە پەیوەندیدارەکانت هەڵبگرە. ئەم کردارە ناتوانرێت هەڵبگیرێت.
Parametreyên Rêyê
پارامەتر
Awa
Pêwîst
باسکردن
uuid
string
Erê
Unique zone identifier
Kodên Rewşa Bersivê
204
Zone deleted successfully (no response body)
403
Forbidden - Token lacks dns:delete permission
404
Zone not found
تۆماری DNS لە ناوچەکەدا تۆمار بکە
هەموو تۆمارەکانی DNS بۆ ناوچەی دیاریکراو وەرگرە (ڕێگای بەستراو).
Parametreyên Rêyê
پارامەتر
Awa
Pêwîst
باسکردن
uuid
string
Erê
Zone UUID
Daxwaza Nimûne
curl -X GET "https://admin.vps.org/api/v1/dns-zones/{uuid}/records/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
Bersiva Mînakî
[
{
"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 لە ناوچەی
تۆماری نوێی DNS زیاد بکە بۆ ناوچەی دیاریکراو (ڕێگای ناوەوەی).
Parametreyên Laşê Daxwazê
پارامەتر
Awa
Pêwîst
باسکردن
record_type
string
Erê
Record type: A, AAAA, CNAME, MX, TXT, NS, SRV, CAA
name
string
Erê
Record name (@ for root, subdomain, or FQDN)
value
string
Erê
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)
Daxwaza Nimûne
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())
_نەخشە
Kodên Rewşa Bersivê
201
DNS record created successfully
400
Bad Request - Invalid parameters or validation error (e.g., MX record missing priority)
بەڕێوەبردنی تۆمارەکانی DNS (دەسەڵاتی ڕاستەوخۆ)
پڕۆسەی تەواوکردنی CRUD لەسەر تۆماری DNS بە بەکارهێنانی تۆماری 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
Awa
باسکردن
zone
string
Filter records by zone UUID
record_type
string
Filter by record type (A, AAAA, MX, etc.)
نمونە: نوێکردنەوەی TTL ی تۆمارێک
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
Awa
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
Erê
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
Erê
CAA
Certificate authority authorization
0 issue "letsencrypt.org"
نەخێر
باشترین کار
ڕێکخستنی TTL
بەرهەمهێنان (ستاندارد): 3600-86400 چرکە (1-24 کاتژمێر)
پێش گواستنەوەی: 300-600 چرکە (5-10 خولەک) - کەمکردنەوەی TTL پێش گۆڕانکارییە پلاندارەکان
گەشەپێدان: 300-1800 چرکە (5-30 خولەک) بۆ تاقیکردنەوە خێراتر
نمونە گشتیەکان
دامەزرێنەر تۆماری A/AAAA بەکاربهێنە نەک CNAME
ماڵپەڕی ژێر: دەتوانیت نیشاندانی CNAME بەکاربهێنیت بۆ ریشە یان تۆماری A دابەشکراو
ئیمەیلی (MX): هەمیشە پێشەنگی تێدابکە، ژمارەی کەمتر = پێشەنگی بەرزتر
_ناو: ناتوانرێت لەگەڵ جۆرەکانی تۆماری تردا بۆ هەمان ناو بژین
_پارێزە
تۆماری CAA: Specify which CAs can issue certificates
SPF/DKIM/DMARC: ڕێکخستنی ناساندنی ئیمەیڵ بۆ ڕێگریکردن لە دزینی زانیاری
چاودێریکردنی ئاسایی: تۆمارەکانی DNS بە چوار قۆناغ پشکنین، تۆمارە بەکارنەهاتووەکان لادەبە
هەڵە
هەڵە گشتیەکان
Koda Rewşê
هەڵە
چارەسەر
400
ناوێکی دامەزرێنەر نامۆ
دڵنیابە لەوەی کە دامەزرێنەرەکەت شوێنی ڕێکەوتنی ناونووسی DNS دەکەوێت
400
تۆماری ئیمکس پێویستی بە پێشەنگی هەیە
_بگرە ناو priority بۆ تۆمارەکانی MX و SRV
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
بەکارهێنانی ئامرازەکانی ئینتەرنێت
whatsmydns.net: Check global DNS propagation
dnschecker.org: Multi-location DNS lookup
mxtoolbox.com: Email-related DNS testing