Kugadzira DNS nzvimbo uye kuchengetedza yavo zvinyorwa. Zones vanopa ns1.vps.org, ns2.vps.org uye ns3.vps.org.
Zone inogara nemashoko eimwe domain. Kana iwe ukachinja chero chinhu kuburikidza neAPI, zvichaendeswa kune VPS.org nameservers. Kuti uite domain kubva kune iyi zone, sarudza ns1.vps.org, ns2.vps.org uye ns3.vps.org.
Magadziriso anochengetwa uye anoburitswa munzira imwe chete: kana maseva ezita akabvuma kuchinja, mibvunzo inodzokera ku 502 uye hapana chinochengetwa. Iyo nzvimbo haigone kugadzirwa kune domain iyo imwe account yapfuura yakabatana, mhuri kana mwana wenzvimbo yeimwe account, kana zita rakaremara re VPS.org.
Kuda mvumo:
dns:list (GET), dns:create (POST), dns:update (PUT, PATCH, sync), dns:delete (DELETE), dns:*
Retourne vose zvinyorwa, 25 papeji. Rekords ne pasvondo.
| Parameter | Rudzi | Zvinodiwa | Kutaura |
|---|---|---|---|
domain |
string | Hapana | Return only the zone with exactly this domain name |
page |
integer | Hapana | Nhamba yepeji, inobva pa1 |
curl -X GET "https://admin.vps.org/api/v1/dns-zones/?domain=example.com" \
-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, params={"domain": "example.com"})
for zone in response.json()["results"]:
print(zone["uuid"], zone["domain"], zone["record_count"])
const response = await fetch('https://admin.vps.org/api/v1/dns-zones/?domain=example.com', {
headers: { 'Authorization': 'Bearer YOUR_API_TOKEN' }
});
const data = await response.json();
console.log(data.results);
{
"count": 1,
"next": null,
"previous": null,
"results": [
{
"uuid": "c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c",
"domain": "example.com",
"created_at": "2026-09-06T03:11:48.829693Z",
"record_count": 5
}
]
}
| _Firi | Rudzi | Kutaura |
|---|---|---|
uuid |
string | Zone identifier |
domain |
string | Domain name, stored in small letters |
created_at |
datetime | Kuumbwa kwenguva (ISO 8601, UTC) |
record_count |
integer | Nhamba yezvinyorwa munharaunda, kusanganisira matatu NS zvinyorwa |
| 200 | Kubudirira |
| 403 | Kukanganisa kweAPI Token kana kuti Token haina mvumo yakakodzera |
Zone inotanga ne NS zvinyorwa zvitatu zve ns1, ns2 uye ns3.vps.org, izvo zvinyorwa zve system uye hazvigone kugadziriswa kana kugadziriswa.
| Parameter | Rudzi | Zvinodiwa | Kutaura |
|---|---|---|---|
domain |
string | Ehe | Domain zita, semuenzaniso 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": "example.com"}'
{
"uuid": "c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c",
"domain": "example.com",
"created_at": "2026-09-14T21:02:11.402113Z",
"records": [
{
"uuid": "1f2e3d4c-5b6a-4978-8a9b-0c1d2e3f4a5b",
"record_type": "NS",
"name": "@",
"value": "ns1.vps.org",
"ttl": 86400,
"priority": null,
"created_at": "2026-09-14"
},
...
],
"record_count": 3
}
| 201 | Yakagadzirwa nzvimbo |
| 400 | Kushaya kana kusavapo kwezita redomain |
Retournes imwe nzvimbo nezvose zvemazita ayo mu mazita akafanana. The kubvunza ane imwecheteyo fomu sezvakaita kubvunza pamusoro.
curl -X GET "https://admin.vps.org/api/v1/dns-zones/c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
| 200 | Kubudirira |
| 404 | Haichawanikwa, kana kuti inobva kune imwe account |
Kubvisa nzvimbo kubva kune ese matatu servers, tarisa kuti hapana mumwe wavo achiri kushambadza, uye wozobvisa nzvimbo nerecords dzayo. Kana server yezita iri kubvunza kwenzvimbo, mibvunzo ichakundikana uye nzvimbo ichachengetwa kuti iwe ugone kuedzazve.
curl -X DELETE "https://admin.vps.org/api/v1/dns-zones/c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
| 204 | Yakagadziriswa. Kudzoka hakuna muviri. |
| 400 | Nameservers still serve the zone. The zone was not deleted; the detail field lists the errors. |
| 404 | Haichawanikwa, kana kuti inobva kune imwe account |
GET anodzokera yega yega rekodhi munharaunda semufananidzo plain (hapana paginated), akagadzirirwa nerudzi uye zita. POST anowedzera rekodhi kuti nzvimbo uye anoburitsa.
| Parameter | Rudzi | Zvinodiwa | Kutaura |
|---|---|---|---|
record_type |
string | Ehe | A, AAAA, CNAME, MX, NS, TXT, SRV, PTR, SOA, CAA |
name |
string | Ehe | @ yedomain pachayo, kana label semuenzaniso www. Amagama akachengetwa muzvinyorwa zvidiki. |
value |
string | Ehe | The record data, for example an IP address or a hostname. Hostnames don' t need a trailing dot and TXT values don' t need quotes; both are added when the record is published. |
ttl |
integer | Ehe | Time to live in seconds |
priority |
integer | MX ne SRV chete | Inodiwa kune MX uye SRV zvinyorwa uye inoonekwa kune chero imwe mhando. Kuti uwane SRV, shandisa weight, port uye target muhuwandu. |
curl -X POST "https://admin.vps.org/api/v1/dns-zones/c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c/records/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"record_type": "MX", "name": "@", "value": "mail.example.com", "ttl": 3600, "priority": 10}'
import requests
zone_uuid = "c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c"
url = f"https://admin.vps.org/api/v1/dns-zones/{zone_uuid}/records/"
headers = {"Authorization": "Bearer YOUR_API_TOKEN"}
data = {"record_type": "A", "name": "www", "value": "203.0.113.10", "ttl": 3600}
response = requests.post(url, headers=headers, json=data)
print(response.status_code, response.json())
{
"uuid": "9d430082-5562-42b4-a0b2-12a6f6c862f9",
"record_type": "MX",
"name": "@",
"value": "mail.example.com",
"ttl": 3600,
"priority": 10,
"created_at": "2026-09-14"
}
| _Firi | Rudzi | Kutaura |
|---|---|---|
uuid |
string | Record identifier, used by the /api/v1/dns-records/ endpoints |
priority |
integer | null | Priority for MX and SRV records, otherwise null |
created_at |
date | Kuumbwa kwezuva chete (Y-MM-DD), pasina nguva |
| 200 | GET: zvinyorwa zvemunharaunda |
| 201 | POST: record yakagadzirwa |
| 400 | Kuongorora kwechokwadi kwematambudziko, semuenzaniso, mhando yerecord isiri iyo, TTL isina, kana MX kana SRV record isina kukosha |
| 404 | Haichawanikwa, kana kuti inobva kune imwe account |
Inomanikidza nzvimbo nezvose zvekare zvekare kune servers. Magadziriso ekare anoburitswa otomatiki, asi kuburitswa kunoitwa nesimba uye kukundikana hakuzokanganisa chikumbiro chekutanga, saka shandisa izvi kana kuchinja kusingaratidzike mu DNS. Hapana chikumbiro chemuviri chinodarika.
curl -X POST "https://admin.vps.org/api/v1/dns-zones/c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c/sync/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
{
"detail": "Zone example.com synced to PowerDNS"
}
GET inokudzosera mazita ezvinzvimbo zvako, 25 papeji, akanyorwa nezita rezita, mhando nezita. POST inokupa zita sezita rezita renzvimbo, asi inokupa zita renzvimbo mumuviri sezone_uuid.
| Parameter | Rudzi | Zvinodiwa | Kutaura |
|---|---|---|---|
zone |
string | Hapana | Only records of the zone with this uuid |
record_type |
string | Hapana | Kuchengeta chete mashoko erudzi urwu, semuenzaniso MX (inofunga nezvemazita ezvinyorwa) |
page |
integer | Hapana | Nhamba yepeji, inobva pa1 |
curl -X GET "https://admin.vps.org/api/v1/dns-records/?zone=c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c&record_type=A" \
-H "Authorization: Bearer YOUR_API_TOKEN"
curl -X POST "https://admin.vps.org/api/v1/dns-records/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"zone_uuid": "c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c", "record_type": "TXT", "name": "@", "value": "v=spf1 mx -all", "ttl": 3600}'
{
"count": 1,
"next": null,
"previous": null,
"results": [
{
"uuid": "4b8e2c10-7d3f-4a5b-9e6c-1a2b3c4d5e6f",
"record_type": "A",
"name": "www",
"value": "203.0.113.10",
"ttl": 3600,
"priority": null,
"created_at": "2026-09-14"
}
]
}
| 200 | GET: success |
| 201 | POST: record yakagadzirwa |
| 400 | Kuongorora kwematambudziko, kana zone_uuid isiripo kana kuti kwete imwe yenzvimbo dzako |
GET anodzokera imwe rekodhi. PUT anoshandura uye inodiwa record_type, zita, kukosha uye ttl. PATCH zvinochinja chete maindasitiri iwe kutumira. DELETE anobvisa rekodhi uye anodzokera 204 pasina muviri. Zvimwe zvinoshandurwa zvinoburitswa pashure. NS makodhi akagadzirwa nenzvimbo ndezve system makodhi: kuvandudzwa kana kubvisa avo anodzokera 403.
curl -X PATCH "https://admin.vps.org/api/v1/dns-records/4b8e2c10-7d3f-4a5b-9e6c-1a2b3c4d5e6f/" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"ttl": 300}'
| 200 | GET, PUT kana PATCH: iyo rekodhi |
| 204 | Yakagadziriswa. Kudzoka hakuna muviri. |
| 400 | Kuongorora kwebasa |
| 403 | Rekodhi iri system rekodzero, kana kuti token haina zvinodiwa permission |
| 404 | Haichawanikwa, kana kuti inobva kune imwe account |
Kuongorora matambudziko anodzokera 400 nematambudziko akavharwa nezita remunda:
{
"priority": ["MX records require a priority value"]
}
Kubvunza VPS.org nameservers zvakananga kuti uone kana shanduko iri kuitika pamberi pekutumira kwako kwemumiri kana kudzokorora caches:
dig @ns1.vps.org example.com A
dig @ns2.vps.org example.com MX
dig @ns3.vps.org www.example.com