Ħarsa ġenerali
Id-DNS API jipprovdi ġestjoni sħiħa taż-żoni u r-rekords tad-DNS Iż-żoni kollha huma ospitati fuq is-servers tal-isem awtorevoli ta' VPS.org bil-ġenerazzjoni u l-iskjerament awtomatiku tal-fajl taż-żona BIND9.
Infrastruttura tal-Nameserver
ns1.vps.org (38.248.6.195) - Master primarju b'iffirmar inline DNSSEC
ns2.vps.org (38.248.6.196) - Skjavi sekondarju
ns3.vps.org (38.248.6.197) - Skjavi sekondarju
Karatteristiċi ewlenin
Ġenerazzjoni u skjerament awtomatiku tal-fajl taż-żona BIND9
Trasferimenti taż-żona permezz ta’ awtentikazzjoni TSIG (replikazzjoni master-slave)
Appoġġ għat-tipi kollha ta ’rekords tad-DNS ewlenin (A, AAAA, CNAME, MX, TXT, NS, SRV, CAA)
Filtrazzjoni tal-isem tad-dominju u identifikazzjoni taż-żona bbażata fuq l-UUID
Rotta mibruma għall-ġestjoni tar-rekords speċifiċi għaż-żona
Awtentikazzjoni
It-talbiet kollha tal-API tad-DNS jeħtieġu awtentikazzjoni tat-tokens tal-Bearer. /account/developers/ bil-permessi li ġejjin:
dns:list - Ara żoni DNS u rekords
dns:create - Oħloq żoni ġodda u rekords
dns:update - Immodifika ż-żoni u r-rekords eżistenti
dns:delete - Ħassar żoni u rekords
dns:* - Aċċess sħiħ għall-ġestjoni tad-DNS
Eżempju
Authorization: Bearer vps_abc123def456...
Importanti: It-tokens tal-API jintwerew darba biss waqt il-ħolqien. Ħżinhom b'mod sigur. Jekk titlef token, trid tiġġenera wieħed ġdid.
Elenka ż-Żoni DNS Kollha
Iġbor lista paginazzjoni taż-żoni DNS kollha proprjetà tal-utent awtentikat. Appoġġ filtrazzjoni mill-isem tad-dominju.
Parametri tal-Mistoqsija
Parametru
Tip
Meħtieġ
Deskrizzjoni
domain
string
Nru
Filter zones by exact domain name (e.g., example.com)
Eżempju ta' Talba
curl -X GET "https://admin.vps.org/api/v1/dns-zones/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
Kopja
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())
Kopja
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);
Kopja
Eżempju ta' Rispons
[
{
"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
}
]
Oqsma ta' Rispons
Qasam
Tip
Deskrizzjoni
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
Kodiċijiet tal-Istatus tar-Rispons
200
Successfully retrieved DNS zones list
401
Unauthorized - Invalid or missing API token
403
Forbidden - Token lacks dns:list permission
Ikseb id-Dettalji taż-Żona DNS
Iġbor informazzjoni dettaljata dwar żona DNS speċifiku, inklużi r-rekords kollha.
Parametri tal-Mogħdija
Parametru
Tip
Meħtieġ
Deskrizzjoni
uuid
string
Iva
Unique zone identifier
Eżempju ta' Rispons
{
"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"
}
]
}
Kodiċijiet tal-Istatus tar-Rispons
200
Successfully retrieved zone details
404
Zone not found or not owned by user
Oħloq Żona DNS
Oħloq żona DNS ġdida għal dominju.Iż-żona se tiġi immedjatament imħaddma għal VPS.org nameservers.
Parametri tal-Korp tat-Talba
Parametru
Tip
Meħtieġ
Deskrizzjoni
domain
string
Iva
Domain name (e.g., example.com)
Eżempju ta' Talba
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"}'
Kopja
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())
Kopja
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);
Kopja
Eżempju ta' Rispons
{
"uuid": "new-zone-uuid",
"domain": "newdomain.com",
"created_at": "2026-01-18T16:45:00Z",
"record_count": 0,
"records": []
}
Kodiċijiet tal-Istatus tar-Rispons
201
DNS zone created successfully
400
Bad Request - Invalid domain name or zone already exists
403
Forbidden - Token lacks dns:create permission
Ħassar Żona DNS
Ħassar b’mod permanenti żona DNS u r-rekords kollha assoċjati. Din l-azzjoni ma tistax titħassar.
Parametri tal-Mogħdija
Parametru
Tip
Meħtieġ
Deskrizzjoni
uuid
string
Iva
Unique zone identifier
Kodiċijiet tal-Istatus tar-Rispons
204
Zone deleted successfully (no response body)
403
Forbidden - Token lacks dns:delete permission
404
Zone not found
Lista Rekords DNS fiż-Żona
Iġbor ir-rekords kollha tad-DNS għal żona speċifika (rotta mibruxa).
Parametri tal-Mogħdija
Parametru
Tip
Meħtieġ
Deskrizzjoni
uuid
string
Iva
Zone UUID
Eżempju ta' Talba
curl -X GET "https://admin.vps.org/api/v1/dns-zones/{uuid}/records/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
Eżempju ta' Rispons
[
{
"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"
}
]
Oħloq Rekord DNS fiż-Żona
Żid rekord DNS ġdid għal żona speċifika (rotta mibruma).
Parametri tal-Korp tat-Talba
Parametru
Tip
Meħtieġ
Deskrizzjoni
record_type
string
Iva
Record type: A, AAAA, CNAME, MX, TXT, NS, SRV, CAA
name
string
Iva
Record name (@ for root, subdomain, or FQDN)
value
string
Iva
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)
Eżempju ta' Talba
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
}'
Kopja
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())
Kopja
Kodiċijiet tal-Istatus tar-Rispons
201
DNS record created successfully
400
Bad Request - Invalid parameters or validation error (e.g., MX record missing priority)
Immaniġġja r-Rekords DNS (Aċċess Dirett)
Operazzjonijiet CRUD sħaħ fuq rekords DNS individwali bl-użu ta’ UUID tar-rekord.
Operazzjonijiet Disponibbli
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
Parametri tal-mistoqsija (għall-GET /api/v1/dns-records/)
Parameter
Tip
Deskrizzjoni
zone
string
Filter records by zone UUID
record_type
string
Filter by record type (A, AAAA, MX, etc.)
Eżempju: Aġġornament TTL ta’ Rekord
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
Tip
Purpose
Example Value
Priority Required
A
Maps domain to IPv4 address
192.0.2.1
Nru
AAAA
Maps domain to IPv6 address
2001:0db8::1
Nru
CNAME
Creates alias to another domain
example.com
Nru
MX
Mail server for domain
mail.example.com
Iva
TXT
Text record (SPF, DKIM, verification)
v=spf1 include:_spf.google.com ~all
Nru
NS
Nameserver delegation
ns1.example.com
Nru
SRV
Service location record
10 5060 sip.example.com
Iva
CAA
Certificate authority authorization
0 issue "letsencrypt.org"
Nru
L-aħjar prattiki
Konfigurazzjoni TTL
Produzzjoni (stabbli): 3600-86400 sekonda (1-24 siegħa)
Qabel il-migrazzjoni: 300-600 sekonda (5-10 minuti) - TTL aktar baxx qabel bidliet ippjanati
Żvilupp: 300-1800 sekonda (5-30 minuta) għal ittestjar aktar mgħaġġel
Mudelli Komuni
Domeniu bażiku (@): Uża rekords A/AAAA, mhux CNAME
www subdomain: Jistgħu jużaw CNAME li jindika l-għerq jew separati A rekord
Email (MX): Dejjem jinkludu prijorità, numru aktar baxx = prijorità ogħla
CNAME: Ma jistgħux koeżistenti ma’ tipi oħra ta’ rekord għall-istess isem
Sigurtà
Rekords tas-CAA: Speċifika liema CAs jistgħu joħorġu ċertifikati
SPF/DKIM/DMARC: Kkonfigurat awtentikazzjoni email biex jipprevjenu spoofing
Verifiki regolari: Reviżjoni rekords DNS kull tliet xhur, neħħi entrati mhux użati
Immaniġġjar ta’ żbalji
Żbalji komuni
Kodiċi tal-Istatus
Żball
Soluzzjoni
400
Isem tad-dominju mhux validu
Jiżguraw dominju isegwi DNS ismijiet konvenzjonijiet
400
Ir-rekord MX jeħtieġ prijorità
Inkludi priority qasam għar-rekords MX u SRV
401
Token tal-API invalidu
Iċċekkja l-format tat-token (għandu jibda b' vps_)
403
Permess nieqes
Iġġenera token ġdid bil-ħtieġa dns:* permessi
404
Żona/rekord mhux misjub
Iċċekkja l-UUID u kun żgur li r-riżorsa tappartjeni għall-kont tiegħek
Eżempju Żball Rispons
{
"detail": "MX records require a priority value",
"error_code": "validation_error",
"field": "priority"
}
Ittestjar tal-Bidliet tad-DNS
Iċċekkja l-Propagazzjoni tar-Rekord
# 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
Bl-użu ta' Għodod Online
whatsmydns.net: Check global DNS propagation
dnschecker.org: Multi-location DNS lookup
mxtoolbox.com: Email-related DNS testing