VPS.org API

Ukufaka idokhumende

I-DNS Management API

Dala izifunda ze-DNS futhi uphatha izibalo zabo. Izifunda zihlinzekwa ngu-ns1.vps.org, ns2.vps.org kanye no-ns3.vps.org.

Amaphoyinti Okugcina 13
Indlela Eyisisekelo /api/v1/dns-zones, /api/v1/dns-records

Ukubuka konke

Isifunda sigcina izibalo zendawo eyodwa. Ushintsho oluthile olukwenzayo nge-API luthunyelwe kumaseva wegama we-VPS.org ngokushesha. Ukunikeza indawo kusuka ezizindani, hlela amaseva egama eregistratori yakho ku-ns1.vps.org, ns2.vps.org ne-ns3.vps.org.

Ushintsho lugcinwa futhi lushicilelwe ngenye indlela: uma izisebenzisi zegama ziphoqa ushintsho, isicelo sibuyisela 502 futhi akukho okugcinwa. Indawo ayikwazi ukudalwa kundawo eminye i-akhawunti ephathayo, umzali noma ingane yendawo ye-akhawunti ehlukile, noma igama eligcinwe le-VPS.org.

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

THOLA /api/v1/dns-zones/

Bhala Zonke Izindawo Ze-DNS

Ibuyisela izizinda zakho, ezisha kuqala, 25 ngakhasi. Izinkomba azibandakanyi lapha; thola indawo eyodwa ukuze uzithole.

Amapharamitha Ombuzo

Amapharamitha Uhlobo Kuyadingeka Incazelo
domain string Akukho Buyela kuphela endaweni enegama lendawo
page integer Akukho Inani lekhasi, liqala ku-1

Isicelo Sesibonelo

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 Yesibonelo

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

Izinkambu Zempendulo

Isigaba Uhlobo Incazelo
uuid string Isibonisi sendawo
domain string Igama lethambeka, ligcinwe ngegama elincane
created_at datetime Isikhathi sokudalwa (ISO 8601, UTC)
record_count integer Inani lemibhalo ezindaweni, kufaka phakathi imibhalo NS emithathu

Amakhodi Esimo Sempendulo

200 Uphumelela
403 I-API token elahlekile noma engasebenziyo, noma i-token ayinayo imvume edingekayo
ISITHUTHUKO /api/v1/dns-zones/

Dala i-DNS Zone

Ikwenza indawo futhi ishicilele. Indawo iqala nge-NS record ezintathu ze-ns1, ns2 ne-ns3.vps.org, eziyi-system records futhi azikwazi ukuhlela noma ukususa.

Cela Amapharamitha Omzimba

Amapharamitha Uhlobo Kuyadingeka Incazelo
domain string Yebo Igama lendawo, isibonelo 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 Yesibonelo

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

Amakhodi Esimo Sempendulo

201 Isifunda sidalwa
400 Igama lendawo engasebenziyo noma elilahlekile
THOLA /api/v1/dns-zones/{uuid}/

Thola imingwane yendawo ye-DNS

Ibuyisela indawo eyodwa ngazo zonke izingeniso zayo ku-record array. Uphendulo lufana ne-create response ngaphesheya.

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

Amakhodi Esimo Sempendulo

200 Uphumelela
404 Ayitholakali, noma ikhona kwezinye i-akhawunti
SUSA /api/v1/dns-zones/{uuid}/

Cima i-DNS Zone

Isusa isifunda kusuka kuzo zonke izisebenzisi zegama ezintathu, ibheka ukuthi akukho kubo osebenza ngayo, bese icima isifunda kanye nezingcezu zayo. Uma isisebenzisi segama siphendula isifunda, isicelo sihlulekile futhi isifunda sigcinwa 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"

Amakhodi Esimo Sempendulo

204 Cishiwe. Uphendulo alufuphi.
400 Umsekeli wegama uhlala esiza isifunda. Isifunda asikucishelwanga; indawo yolwazi ikhombisa amaphutha.
404 Ayitholakali, noma ikhona kwezinye i-akhawunti
THOLA ISITHUTHUKO /api/v1/dns-zones/{uuid}/records/

Uhlu noma Yongeza amarekhodi ezindaweni

GET ibuyisela yonke irekhodi ezindaweni njenge-array elula (ayi-paginated), ehlukaniswe ngohlobo negama. POST ifaka irekhodi ezindaweni futhi ishicilele.

Cela Amapharamitha Omzimba (POST)

Amapharamitha Uhlobo Kuyadingeka Incazelo
record_type string Yebo A, AAAA, CNAME, MX, NS, TXT, SRV, PTR, SOA, CAA
name string Yebo @ ikheli lendawo, noma isihloko njenge www. Amagama agcinwa ngegama elincane.
value string Yebo I-data yokufaka isingeniso, isibonelo ikheli le-IP noma igama lomnikazi. Igama lomnikazi alidingi inhlamvu elandelayo futhi amaxabiso we-TXT alidingi ukuphawula; obobabili bafakwa uma isingeniso sishicilelwa.
ttl integer Yebo Isikhathi sokuphila ngezisekondi
priority integer MX ne SRV kuphela Kudingekayo ku-MX ne-SRV ukurekhoda futhi kulahlekile kunoma iyiphi enye indidi. Ku-SRV, faka ubunzima, isibuko kanye nenjongo kuxabiso.

Isicelo Sesibonelo

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 Yesibonelo

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

Izinkambu Zempendulo

Isigaba Uhlobo Incazelo
uuid string Isibonisi se-record, sisetshenziswa yi /api/v1/dns-records/ iziqephu eziphelile
priority integer | null Ukukhethwa kwezinkomba ze-MX ne-SRV, uma kungenjalo ku-null
created_at date Usuku lokudalwa kuphela (Y-MM-DD), ngaphandle kwesikhathi

Amakhodi Esimo Sempendulo

200 GET: izibalo zendawo
201 POST: isingeniso sidalwa
400 Iphutha lokuqinisekiswa, isibonelo, uhlobo lwe-record olungaziwayo, i-ttl elahlekile, noma i-MX noma i-SRV record ngaphandle kokuqala
404 Ayitholakali, noma ikhona kwezinye i-akhawunti
ISITHUTHUKO /api/v1/dns-zones/{uuid}/sync/

Phinda ushicilele indawo

Isusa indawo kanye nanoma yiziphi izingeniso zayo ku-nameservers futhi. Izingeniso ziguqulwa ngokuzenzakalela, kodwa ukushicilela kunzima kakhulu futhi ukunqoba akudingeki ukuthi kunqobe isicelo sokuqala, ngakho sebenzisa lokhu uma ushintsho alukho ku-DNS searches. Akukho ngxenye yesicelo edingekayo.

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"
}
THOLA ISITHUTHUKO /api/v1/dns-records/

Uhlu noma Dala amarekhodi phakathi kwezindawo

GET ibuyisela izingeniso zazo zonke izifunda zakho, 25 ngakhasi, ezilungiswe ngendawo, uhlobo negama. POST idala isingeniso njengezingeniso zesifunda isiqephu esiphelile, kodwa ithatha isizinda esingaphakathi kwengxenye njenge zone_uuid.

Amapharamitha Ombuzo

Amapharamitha Uhlobo Kuyadingeka Incazelo
zone string Akukho Izinkomba kuphela zendawo ngalesi uuid
record_type string Akukho Izingeniso kuphela zoluhlobo, isibonelo MX (igama elincane liyingozi)
page integer Akukho Inani lekhasi, 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"
    }
  ]
}

Amakhodi Esimo Sempendulo

200 GET: ukuphumelela
201 POST: isingeniso sidalwa
400 Iphutha lokuqinisekiswa, noma i-zone_uuid ilahlekile noma ayiyona enye yezindawo zakho
THOLA PUT PATCH SUSA /api/v1/dns-records/{uuid}/

Thola, Hlaziya noma Cima irekhodi

GET ibuyisela umbhalo owodwa. PUT ibuyisela umbhalo futhi idinga i-record_type, igama, inani kanye ne-ttl. PATCH ishintsha kuphela ama-fields othumela kuwo. DELETE isusa umbhalo futhi ibuyisela 204 ngaphandle kwe-body. Izinkinga zishicilelwa ngokushesha. I-NS ishicilelwe eyenziwe ngendawo yi-system shicilelwe: ukuvuselela noma ukucisha ibuyisela 403.

Uma u-PATCH isinqumo se-MX noma i-SRV, thumela i-record_type kulowo mbuzo. I-PATCH body enesinqumo kodwa ngaphandle kwe-record_type isusa isinqumo.
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}'

Amakhodi Esimo Sempendulo

200 GET, PUT noma PATCH: irekhodi
204 Cishiwe. Uphendulo alufuphi.
400 Iphutha lokuqinisekiswa
403 Irekhodi liyirekhodi lendlela yokusebenza, noma i-token ayinayo imvume edingekayo
404 Ayitholakali, noma ikhona kwezinye i-akhawunti

Ukuphatha iphutha

Iphutha lokuqinisekiswa libuyisela 400 nenkinga eqoshwe ngegama lendawo:

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

Ukuhlolwa kwe DNS

Qiniseka ukuthi amaseva wegama VPS.org axhunywe ngokuqondile ukuqinisekiswa ukuthi ushintsho luphila ngaphambi kokuba ubambe iqhaza lakho lokufaka incwadi noma uxazulule ama-caches afinyelele:

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