Create DNS zones and manage their records. Zones are served by ns1.vps.org, ns2.vps.org and ns3.vps.org.
A zone holds the records for one domain. Every change you make through the API is pushed to the VPS.org nameservers straight away. To serve a domain from these zones, set its nameservers at your registrar to ns1.vps.org, ns2.vps.org and ns3.vps.org.
Changes are saved and published in one step: if the nameservers refuse a change, the request returns 502 and nothing is saved. A zone cannot be created for a domain another account already manages, a parent or child of another account's zone, or a VPS.org reserved name.
అనుమతించు:
dns:list (GET), dns:create (POST), dns:update (PUT, PATCH, sync), dns:delete (DELETE), dns:*
మీ మండలాలను తిరిగి, అత్యద్భుతంగా, మొదటి పేజీలో 25 కొత్తగా తిరిగి ప్రవేశిస్తుంది. రికార్డులు ఇక్కడ చేర్చబడలేదు; వాటిని పొందడానికి ఒకే జోన్ తీసుకెళ్లండి.
| పెరామీటరు | రకం | అవసరం | విశదీకరణము |
|---|---|---|---|
domain |
string | వద్దు | ఈ డొమైన్ పేరుతో జోన్ మాత్రమే సమ్మేళనంనందు తిరుగుము |
page |
integer | వద్దు | పుట సంఖ్య, 1 నుంచి ప్రారంభము |
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
}
]
}
| క్షేత్రము | రకం | విశదీకరణము |
|---|---|---|
uuid |
string | జోన్ గుర్తింపుకారి |
domain |
string | సున్నితమైననందు నిల్వవుంచబడిన డొమైన్ పేరు, |
created_at |
datetime | సృష్టి సమయం (ఐఎస్ ఓ 8601, యు డి ఐ) |
record_count |
integer | మూడు NS రికార్డులుతో పాటు జోన్లోని రికార్డుల సంఖ్య |
| 200 | సఫలం |
| 403 | చెల్లని API గుర్తు లేదా అవసరమైన సూచనకు లేదా గుర్తించవలసిన అనుమతి లేదు |
Creates a zone and publishes it. The zone starts with three NS records for ns1, ns2 and ns3.vps.org, which are system records and cannot be edited or deleted.
| పెరామీటరు | రకం | అవసరం | విశదీకరణము |
|---|---|---|---|
domain |
string | అవును | ఉదాహరణకు, డొమైన్ నామము. 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 | జోన్ సృష్టించబడింది |
| 400 | చెల్లని డొమైన్ పేరు |
ఒక జోన్ను అన్ని రిపోర్టుల వరుసలో పాటు పంపుతుంది. స్పందన దానికి అసలైన స్పెక్షన్ను వుంటుంది, అది పైన రూపొందించిన స్పందనను పోలివుంటుంది.
curl -X GET "https://admin.vps.org/api/v1/dns-zones/c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
| 200 | సఫలం |
| 404 | దొరకలేదు, లేక మరొక ఖాతాకి చెందినది అదిలేదు |
మూడు పేరు సేవికలనుండి జోన్ని తీసివేస్తుంది, వాటిలో ఏదీ ఇంకా సేవ చేయదన్నట్లు పరిశీలించును, ఆ తర్వాత ఆ జోన్ మరయూ దాని రికార్డ్లను తీసివేస్తుంది. ఒక పేరు సేవిక లోమన్ కొరకు ఇంకా సమాధానం తెలిస్తే, అభ్యర్ధన విఫలమైంది మరియు మీరు తిరిగిప్రదింపవచ్చు.
curl -X DELETE "https://admin.vps.org/api/v1/dns-zones/c7a1e3f0-2b4d-4e6a-9c8b-0d1f2e3a4b5c/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
| 204 | తీసివేసిన. స్పందనకు ఏ శరీరం కూడా లేదు |
| 400 | A nameserver still serves the zone. The zone was not deleted; the detail field lists the errors. |
| 404 | దొరకలేదు, లేక మరొక ఖాతాకి చెందినది అదిలేదు |
GET returns every record in the zone as a plain array (not paginated), sorted by type and name. POST adds a record to the zone and publishes it.
| పెరామీటరు | రకం | అవసరం | విశదీకరణము |
|---|---|---|---|
record_type |
string | అవును | A, AAAA, CNAME, MX, NS, TXT, SRV, PTR, SOA, CAA |
name |
string | అవును | @ for the domain itself, or a label such as www. Names are stored in lowercase. |
value |
string | అవును | రికార్డు డాటా ఉదాహరణకు IP చిరునామా లేదా హోస్ట్ పేరు. ట్రెప్ డాట్స్(trast) కు హోస్ట్ డాట్స్( లొకటీ) అవసరంలేదు మరియు TXT విలువలు ఉల్లేఖించబడినప్పుడు జతపడవు; రెండు జతలు చేర్చబడతాయి |
ttl |
integer | అవును | సెకనులలో నివసించే సమయం |
priority |
integer | ఎంఎక్స్ మరియు ఎస్ ఆర్వి మాత్రమే | MX మరియు SRV రికార్డులకు అవసరం మరియు అన్ని రకాలకు విస్మరించబడింది. SRVకు బరువును, పోర్ట్ను మరియు లక్ష్యాన్ని విలువగా ఉంచుము. |
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"
}
| క్షేత్రము | రకం | విశదీకరణము |
|---|---|---|
uuid |
string | Record identifier, used by the /api/v1/dns-records/ endpoints |
priority |
integer | null | MX మరియు SRV రికార్డుల కొరకు ప్రాధాన్యత, లేకపోతే ఖాళీ |
created_at |
date | సృష్టి తేదీ మాత్రమే (YYY- MD- DD), ఇక ఏ సమయం లేకుండా |
| 200 | Get: జోన్ యొక్క రికార్డులు |
| 201 | పోస్ట్: రికార్డు సృష్టించబడింది |
| 400 | ఉదాహరణకు, తెలియని రికార్డు రకము, కనబడని ttl లేదా MX లేదా SRV ని ప్రాధాన్యత లేకుండా గుర్తించునది |
| 404 | దొరకలేదు, లేక మరొక ఖాతాకి చెందినది అదిలేదు |
జోన్ మరియు దాని అన్ని రికార్డ్లను మరలా పేరు సర్వర్లకు పంపుతుంది. రికార్డ్ మార్పులను స్వయంచాలకంగా ప్రచురించబడుతుంది, అయితే ప్రింగు శ్రేష్ఠమైన కృషి మరియు వైఫల్యం వెనుక సమ్మతి విఫలం కాదు, అందుకని మార్పు DNS లుప్స్ లో ప్రదర్శించబడనప్పుడు దీనిని వుపయోగించుము. ఏ మనవి లేదు.
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 మీ అన్ని ప్రాంతముల, 25, పేజీ, కంటైన్, టైప్ మరియు పేరుచేత నిర్దేశించబడిన రికార్డులను తిరిగిస్పందిస్తుంది. Pource reports of the default evice వలె ను సృష్టిస్తుంది, అయితే జోన్ను స్థితి థీమరీతినందు ను symid_ uidguid గా యిస్తుంది.
| పెరామీటరు | రకం | అవసరం | విశదీకరణము |
|---|---|---|---|
zone |
string | వద్దు | ఈ uuid తో జోన్ యొక్క రికార్డ్లు మాత్రమే |
record_type |
string | వద్దు | ఈ రకమైన రికార్డులు మాత్రమే, ఉదాహరణకు MX (ప్రమాదంలేని) |
page |
integer | వద్దు | పుట సంఖ్య, 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"
}
]
}
| 200 | గెట్: విజయం |
| 201 | పోస్ట్: రికార్డు సృష్టించబడింది |
| 400 | సరిచూడుట దొషం, లేదా జోన్_ uuid తప్పిపోయినది లేదా మీ మండలాలలో ఒకటికాదు |
GET ఒక రికార్డ్ తిరిగివుంచుతుంది. దానిని పునఃస్థాపించుము మరియు రికార్డు_type, పేరు, విలువ, tl. PTCC మార్పులను మాత్రమే బదిలీ చేస్తుంది. DEE ట్రాక్ట్ తీసివేస్తుంది మరియు ఏ శరీరంతోనైనా 204ని పంపుతుంది. నేరుగా ప్రచురించబడుతుంది. ఎన్ఎస్ సిస్టమ్ తో సృష్టించబడిన మార్పులు సరిపోతుంది. లేదా తీసివేయబడతాయి: వాటిని 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 | పొందండి, ఉంచండి లేదా PATCH: |
| 204 | తీసివేసిన. స్పందనకు ఏ శరీరం కూడా లేదు |
| 400 | ச்చెయబడిన దోషం |
| 403 | నివేదిక సిస్టమ్ రికార్డ్ లేదా సూచనకు అవసరమైన అనుమతి లేదు |
| 404 | దొరకలేదు, లేక మరొక ఖాతాకి చెందినది అదిలేదు |
ఫీల్డ్ పేరుతో సమస్యతో పరిశీలన చేసిన దోషం 400కు తిరిగివుంది:
{
"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