VPS.org API

Uxwebhu lwe-REST API

I-API yoLawulo lwe-DNS

Dala i-DNS yezona zibalaseleyo kwaye uphatha iziqulathi zeefayili zabo. Izona zibalaseleyo zinikezelwa yi-ns1.vps.org, ns2.vps.org ne-ns3.vps.org.

Iindawo zokugqibela 13
Indlela Esisiseko /api/v1/dns-zones, /api/v1/dns-records

Isishwankathelo

Ummandla ugcina iziqulathi zeefayili zethambeka elinye. Utshintsho ngalunye owenzayo nge-API luthunyelwe kumaseva egama e-VPS.org ngokukhawuleza. Ukuncedisa ithambeka ukusuka kule mimandla, misela amaseva egama kwi-registrar yakho kwi-ns1.vps.org, ns2.vps.org ne-ns3.vps.org.

Iinguqu zigcinwa kwaye zipapashwa kwinyathelo elinye: ukuba abancedisi begama bayeka utshintsho, isicelo sibuyisela 502 kwaye akukho nto igcinwayo. Ummandla awunakwenziwa kwithambeka elinye iakhawunti sele ilawula, umzali okanye umntwana wesinye iakhawunti yommandla, okanye igama eligcinwe kwi-VPS.org.

Iimvume ezifunekayo: dns:list (GET), dns:create (POST), dns:update (PUT, PATCH, sync), dns:delete (DELETE), dns:*

FUMANA /api/v1/dns-zones/

Dwelisa Zonke iiNdawo zeDNS

Ibuyisela imimandla yakho, entsha kuqala, 25 kwiphepha ngalinye. Iirekhodi aziqulathwe apha; khangela ummandla omnye ukufumana.

IiParamitha zoMbuzo

Iparamitha Uhlobo Kufuneka Inkcazelo
domain string Akukho nanye Buyela kuphela kwindawo enegama lethambeka elichanekileyo
page integer Akukho nanye Inani lephepha, liqala ku-1

Isicelo somzekelo

cURL
Python
JavaScript
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);

Impendulo yoMzekelo

{
  "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
    }
  ]
}

IiNdawo zeMpendulo

Iindawo Uhlobo Inkcazelo
uuid string Isichazi sendawo
domain string Igama lethambeka, ligcinwe ngeempawu ezincinci
created_at datetime Ixesha lokuvelisa (ISO 8601, UTC)
record_count integer Inani lee-records kwi-zone, kubandakanya ii-records ezintathu ze-NS

Iikhowudi zeMeko yokuphendula

200 Uphumelele
403 I-API token elahlekile okanye engasebenziyo, okanye i-token ayinazimvumelwano ezifunekayo
I-POST /api/v1/dns-zones/

Yenza i DNS

Iyenza indawo kwaye ipapashe. Indawo iqala ngee-NS ezithathu ezishicilelweyo ze-ns1, ns2 ne-ns3.vps.org, ezizishicilelo zenkqubo kwaye azikwazi ukuhlela okanye ukucima.

Cela iiParamitha zoMzimba

Iparamitha Uhlobo Kufuneka Inkcazelo
domain string Ewe Igama lethambeka, umzekelo 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"}'

Impendulo yoMzekelo

{
  "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
}

Iikhowudi zeMeko yokuphendula

201 Indawo eyenziwe
400 Igama lethambeka elilahlekileyo okanye elingasebenziyo
FUMANA /api/v1/dns-zones/{uuid}/

Fumana Iinkcukacha Zommandla we DNS

Ibuyisela ummandla omnye onke amanqaku ayo kumqolo we amanqaku. Impendulo imele ifana nohlobo lwe create response ngasentla.

curl -X GET "https://admin.vps.org/api/v1/dns-zones/c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c/" \
  -H "Authorization: Bearer YOUR_API_TOKEN"

Iikhowudi zeMeko yokuphendula

200 Uphumelele
404 Ayifumanekanga, okanye imalunga ne-akhawunti enye
CIMA /api/v1/dns-zones/{uuid}/

Cima i DNS

Susa ummandla kuzo zonke izincedisi zegama ezintathu, khangela ukuba akukho mnye wabo uhlala usebenza kuyo, kwaye emva koko cima ummandla kunye neengxelo zayo. Ukuba umncedisi wegama uhlala uphendula kummandla, isicelo asiphumelelanga kwaye ummandla ugcinwa ukuze uphinde uzame.

curl -X DELETE "https://admin.vps.org/api/v1/dns-zones/c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c/" \
  -H "Authorization: Bearer YOUR_API_TOKEN"

Iikhowudi zeMeko yokuphendula

204 Cima
400 Umncedisi wegama uhlala encedisa lo mhlaba. Lo mhlaba awucimiwanga; indawo yenkcukacha ibonisa impazamo.
404 Ayifumanekanga, okanye imalunga ne-akhawunti enye
FUMANA I-POST /api/v1/dns-zones/{uuid}/records/

Uluhlu okanye Yongeza Iirekhodi Kwindawo

GET ibuyisela yonke irekhodi kummandla njengendawo eqhelekileyo (akukho phepha), ekhoyo ngohlobo kunye negama. UTHANDO lidibanisa irekhodi kummandla kwaye lipapasha.

Cela iiParamitha zoMzimba (POST)

Iparamitha Uhlobo Kufuneka Inkcazelo
record_type string Ewe A, AAAA, CNAME, MX, NS, TXT, SRV, PTR, SOA, CAA
name string Ewe @ yethambeka ngokwalo, okanye i label njenge www. Amagama agcinwa kwigama elincinci.
value string Ewe I-data yoshicilelo, umzekelo idilesi ye IP okanye igama lomququzeleli. Igama lomququzeleli alifunanga uphawu olulandelayo kwaye amaxabiso e-TXT alifunanga ukucofa; obomi bobini bufakiwe xa ushicilelo lushicilelwa.
ttl integer Ewe Ixesha lokuphila ngemizuzwana
priority integer MX ne SRV kuphela Ifunekayo kwi MX ne SRV iirekhodi kwaye igqityiwe kwezinye iintlobo zonke. Kwi SRV, dibanisa ubunzima, isibuko nenjongo kwixabiso.

Isicelo somzekelo

cURL
Python
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())

Impendulo yoMzekelo

{
  "uuid": "9d430082-5562-42b4-a0b2-12a6f6c862f9",
  "record_type": "MX",
  "name": "@",
  "value": "mail.example.com",
  "ttl": 3600,
  "priority": 10,
  "created_at": "2026-09-14"
}

IiNdawo zeMpendulo

Iindawo Uhlobo Inkcazelo
uuid string Isichazi-magama soshicilelo, esisetyenziswa yi /api/v1/dns-records/ iziphelo
priority integer | null Uluhlu lwee-MX ne-SRV, ngaphandle koko, ayikho
created_at date Umhla wokwenza kuphela (Y-MM-DD), ngaphandle kwexesha

Iikhowudi zeMeko yokuphendula

200 GET: iirekhodi zendawo
201 Iposi: irekhodi lidalwa
400 Imposiso yoqinisekiso, umzekelo udidi lwerekhodi engaziwayo, i-ttl elahlekile, okanye i-MX okanye i-SRV rekhodi engenanto ephambili
404 Ayifumanekanga, okanye imalunga ne-akhawunti enye
I-POST /api/v1/dns-zones/{uuid}/sync/

Ushicilelo oluneenkcukacha

Ithutha ummandla kunye nazo zonke iirekhodi zayo kumncedisi wegama kwakhona. Iinketho zerekhodi zishicilelwe ngokuzenzekelayo, kodwa ukushicilela kumsebenzi olungileyo kwaye ukungaphumelelanga akusebenzisi isicelo esiphambili, ngoko sebenzisa oku xa utshintsho alubonisanga kwi DNS ukukhangela. Akukho mzimba wosicelo ofunekayo.

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"
}
FUMANA I-POST /api/v1/dns-records/

Uluhlu okanye Yenza Iirekhodi Kwiindawo

GET ibuyisela iirekhodi zonke iimvelaphi zakho, 25 kwiphepha ngalinye, elungiswe ngendawo, uhlobo negama. UTHANDO yenza iirekhodi ezifana nezona zine rekhodi zendawo, kodwa ithatha iimvelaphi kwisiqu njenge zone_ uuid.

IiParamitha zoMbuzo

Iparamitha Uhlobo Kufuneka Inkcazelo
zone string Akukho nanye Iirejista kuphela zendawo enolu uuid
record_type string Akukho nanye Iirecords ezinjalo kuphela, umzekelo. MX (igama elincinci alivakalelwa)
page integer Akukho nanye Inani lephepha, liqala ku-1
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"
    }
  ]
}

Iikhowudi zeMeko yokuphendula

200 GET: uphumelele
201 Iposi: irekhodi lidalwa
400 Impazamo yokuqinisekisa, okanye i-zone_uuid ilahlekile okanye ayiyiyo enye yezona ndawo zikhoyo
FUMANA PUT PATCH CIMA /api/v1/dns-records/{uuid}/

Fumana, Hlaziya okanye Cima Irekhodi

GET ibuyisela ingxelo enye. PUT ibuyisela kuyo kwaye ifuna i record_type, igama, ixabiso ne ttl. PATCH itshintsha kuphela imihlaba othumela kuyo. DELETE isusa ingxelo kwaye ibuyisela 204 ngaphandle komzimba. Iinguqu zishicilelwe ngokukhawuleza. Iingxelo ze NS ezidalwa nommandla ziinkqubo zeengxelo: ukuhlaziya okanye ukucima zibuyisela 403.

Xa u-PATCH ukuqala kwe-MX okanye i-SRV, thumela i-record_type kwisicelo esifanayo. I-PATCH equlethe ukuqala kodwa ngaphandle kwe-record_type icima ukuqala.
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}'

Iikhowudi zeMeko yokuphendula

200 GET, PUT okanye PATCH: irekhodi
204 Cima
400 Imposiso yoqinisekiso
403 Ushicilelo luyinkqubo ye-record, okanye i-token ayinazimvumelwano ezifunekayo
404 Ayifumanekanga, okanye imalunga ne-akhawunti enye

Imposiso Yophatho

Imposiso yoqinisekiso ibuyisela 400 ngengxaki ekhoyo ngegama lendawo:

{
  "priority": ["MX records require a priority value"]
}

Uvavanyo lwe DNS Iinguqu

Umbuzo kwi VPS.org iinzame zomsebenzisi ngokuthe ngqo ukuqinisekiswa kotshintsho luphila phambi kokuba unikezelo lwakho lobhaliso okanye uvimba weefayili olawulayo uthathe:

dig @ns1.vps.org example.com A
dig @ns2.vps.org example.com MX
dig @ns3.vps.org www.example.com