Zones DNS creavit et inscriptiones eius administravit. Zones servantur a ns1.vps.org, ns2.vps.org et ns3.vps.org.
Zona inscriptiones pro dominio habet. Quaemquam mutatio per API facta est, in servum nominis VPS.org immediate invenitur. Ad dominium ex hoc zona servum nominis in registro tuum in ns1.vps.org, ns2.vps.org et ns3.vps.org configurandum.
Variationes in una passio conservatae et publicae sunt: si servus nominarum modificationem refutat, petitio 502 restituit et nihil conservatur. Zona non potest creatae esse pro dominio quod alius conatus praeteritus administrat, pro patre vel filio zonae alii conatus, vel pro VPS.org nomina reservata.
Permissio necesse:
dns:list (GET), dns:create (POST), dns:update (PUT, PATCH, sync), dns:delete (DELETE), dns:*
Retortit zonae tuae, novae primum, 25 per paginam. Recordes non sunt in hoc inclusae; obtinuit sola zonam ut obtinuit.
| Parametrus | Typus | Requisitum | Descriptio |
|---|---|---|---|
domain |
string | No | Retorta solum zona cum exacte hoc nomini dominio |
page |
integer | No | Numerus paginarum, a 1 incipiens |
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
}
]
}
| Campo | Typus | Descriptio |
|---|---|---|
uuid |
string | Indicem communium praefecturae Aeoliae |
domain |
string | Nomen dominii, in minusculis conservum |
created_at |
datetime | Tempore UTC (ISO 8601) |
record_count |
integer | Numerus inscriptionum in zona, inter quas tres NS inscriptiones |
| 200 | Successus |
| 403 | Token API mancant vel invalidus, aut token permissum necesse non habet |
Zonam creat et publicat. Zona cum tres NS inscriptionibus pro ns1, ns2 et ns3.vps.org incepit, quae sunt inscriptiones systematicae et non editae vel deletae sunt.
| Parametrus | Typus | Requisitum | Descriptio |
|---|---|---|---|
domain |
string | Ita | Nomen dominii, exempli gratia 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 | Area creata |
| 400 | Nomen dominii mancant vel non validum est |
Restituit unam zonam cum omnes eius inscriptionibus in array inscriptionum. Respuesta est formae similis cum creatio inscriptionis supra.
curl -X GET "https://admin.vps.org/api/v1/dns-zones/c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
| 200 | Successus |
| 404 | Non repertus, aut ad alium contum pertinet |
Zonam ex omnis tres servibus nominalibus removit, et verificavit si nonnumquam ex eo servit, et postea zonam et eius inscriptiones eliminavit. Si servus nominalis ad zonam respondet, petitio fallus est et zona conservatur ut reprobare possit.
curl -X DELETE "https://admin.vps.org/api/v1/dns-zones/c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
| 204 | Eliminatum. Respuesta non habet corpus. |
| 400 | Servitor nominis zonam etiam servit. Zona non est eliminata; campo descriptivo errores enumeratur. |
| 404 | Non repertus, aut ad alium contum pertinet |
GET restituit omnes inscriptiones in zona ut array (non paginatum), ordinatum per genus et nomen. POST inscriptionem ad zonam adiit et publicat.
| Parametrus | Typus | Requisitum | Descriptio |
|---|---|---|---|
record_type |
string | Ita | A, AAAA, CNAME, MX, NS, TXT, SRV, PTR, SOA, CAA |
name |
string | Ita | In hoc modo, nomen est nomen proprium, et non nomen familiae, quod in familiam inscriptum est. |
value |
string | Ita | Data inscriptionis, exempli gratia, address IP aut hostname. Hostnames punctum postscriptum non necessitat et valores TXT citationem non necessitat; ambo sunt aggregatae cum inscriptionis publicatur. |
ttl |
integer | Ita | Tempore in secundis vivere |
priority |
integer | MX et SRV solum | Requiescit pro MX et SRV inscriptis et ignoratur pro omnes alios generis. Pro SRV, ponderem, portum et propositum in valorem mettere. |
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"
}
| Campo | Typus | Descriptio |
|---|---|---|
uuid |
string | Record identifier, used by the /api/v1/dns-records/ endpoints |
priority |
integer | null | Prioritas pro MX et SRV inscriptionibus, aliquando nullum |
created_at |
date | Creatio data solum (Y-MM-DD), sine tempore |
| 200 | Novi Eboraci: The Record Company. |
| 201 | Post: record creatus |
| 400 | Errore validationis, exempli gratia, genus recordi ignotum, ttl mancant, vel recordum MX aut SRV sine prioritate |
| 404 | Non repertus, aut ad alium contum pertinet |
Zonam et omnes eius inscriptiones in servum nominis re- inscripsit. Cambii inscriptionis automatice publicati sunt, sed publicatio est optima probatio et fallus originalem petitionem non fallit, ergo hoc utitur cum mutatio in DNS investigationibus non apparet. Corpus petitionis non est necesse.
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 restituit inscriptiones omnes zonarum, 25 pro pagina, ordinatas per dominium, genus et nomen. POST creat inscriptionem similem inscriptionum zonarum finali, sed in corpore zonam cum zone_uuid appellatur.
| Parametrus | Typus | Requisitum | Descriptio |
|---|---|---|---|
zone |
string | No | Solum inscriptiones zonae cum hoc uuid |
record_type |
string | No | Solum inscriptiones hoc generis, exempli gratia MX (majusculae et minusculae non distinguuntur) |
page |
integer | No | Numerus paginarum, a 1 incipiens |
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 | Novi Eboraci: Success |
| 201 | Post: record creatus |
| 400 | Errore validationis, vel zone_uuid manet vel non est una ex tuis zonis |
GET recordum restituit. PUT substituit et record_type, name, value et ttl necessitat. PATCH solum campos quae tu invenis mutatur. DELETE recordum removit et 204 restituit corpus non esse. Mutationes imediate publicae sunt. NS records creati cum zona sunt systema records: actualizationes aut eliminationes 403 restituunt.
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, PATCH: Registrum |
| 204 | Eliminatum. Respuesta non habet corpus. |
| 400 | Errore validationis |
| 403 | Recordum est systematicus recordum, aut token permissio necata est |
| 404 | Non repertus, aut ad alium contum pertinet |
Errores validationis 400 restituunt cum problema per nomen campi clavis:
{
"priority": ["MX records require a priority value"]
}
Query the VPS.org nameservers directly to confirm a change is live before your registrar delegation or resolver caches catch up:
dig @ns1.vps.org example.com A
dig @ns2.vps.org example.com MX
dig @ns3.vps.org www.example.com