VPS.org API

Tahirin-kevitra REST API

API Fitantanana DNS

Mamorona faritra DNS ary mitantana ny rakitry ny faritra. Ny ns1.vps.org, ns2.vps.org ary ny ns3.vps.org no miasa amin'ny faritra.

Teboka farany 13
Lalana fototra /api/v1/dns-zones, /api/v1/dns-records

Topimaso

Ny faritra iray dia mitahiry ny angon-drakitra ho an'ny sehatra iray. Ny fanovana rehetra atao amin'ny alalan'ny API dia alefa avy hatrany any amin'ny mpizara anarana VPS.org. Raha te-hanome sehatra iray avy amin'ireny faritra ireny ianao, dia apetraho amin'ny ns1.vps.org, ns2.vps.org ary ns3.vps.org ny mpizara anarana ao amin'ny mpiandraikitra ny kaontinao.

Raha toa ka tsy manaiky ny fanovana ny mpizara anarana, dia hamaly ny 502 ny fangatahana ary tsy misy zavatra raikitra. Tsy azo atao ny mamorona faritra ho an'ny domain efa fehezin'ny kaonty hafa, na faritra ray na zanaka an'ny kaonty hafa, na anarana voatokana VPS.org.

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

ALAO /api/v1/dns-zones/

Tanisao ny Faritra DNS rehetra

Mamaly ny faritrao, ny vaovao indrindra aloha, 25 isan-pejy. Tsy tafiditra eto ny angona; raisina ny faritra iray tokana mba hahazoana azy ireo.

Paramètres de requête

Mpizahaky ny macro Karazana ilaina Fanoritsoritana
domain string Tsy misy Ny faritra manana io anaran-domena io ihany no averina
page integer Tsy misy Isan'ny pejy, manomboka amin'ny 1

Ohatra amin'ny fangatahana

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);

Ohatra amin'ny Valiny

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

Saha Valiny

Field Karazana Fanoritsoritana
uuid string Mpamantatra faritra
domain string Anaran'ny domena, voatahiry amin'ny endri-tsoratra madinika
created_at datetime Fotoana namoronana (ISO 8601, UTC)
record_count integer Isan'ny raki-tahiry ao amin'ny faritra, tafiditra amin'izany ny raki-tahiry NS telo

Kaody momba ny satan'ny valiny

200 Fahombiazana
403 Token API tsy misy na tsy mitombina, na tsy manana ny fahazoan-dàlana ilaina ilay token
POST /api/v1/dns-zones/

Hamorona faritra DNS

Mamorona faritra iray ary mamoaka azy. Miainga amin'ny raki-tsoratra NS telo ho an'ny ns1, ns2 ary ns3.vps.org ilay faritra, izay raki-tsoratra rafitra tsy azo ovaina na fafàna.

Fangatahana masontsivana momba ny vatana

Mpizahaky ny macro Karazana ilaina Fanoritsoritana
domain string ENY Ny anaran'ny domena, ohatra 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"}'

Ohatra amin'ny Valiny

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

Kaody momba ny satan'ny valiny

201 Toerana noforonina
400 Anaran'ny domena tsy misy na tsy mety
ALAO /api/v1/dns-zones/{uuid}/

Maka ny antsipirian'ny faritra DNS

Mamaly faritra iray ahitana ny lahatahiry rehetra ao anatin'ny filaharan'ny tahirin-kevitra. Mitovy endrika amin'ny valin'ny famoronana etsy ambony ny valin'ny fanontaniana.

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

Kaody momba ny satan'ny valiny

200 Fahombiazana
404 Tsy hita, na an'ny kaonty hafa izy io
Fafao /api/v1/dns-zones/{uuid}/

Fafao ny faritra DNS

Manaisotra ilay faritra avy amin'ireo mpizara anarana telo rehetra, mijery raha mbola tsy misy amin'izy ireo no miasa amin'izany, dia manafoana ilay faritra sy ny raki-tahirin'ny faritra. Raha mbola mamaly ilay faritra ny mpizara anarana iray, dia tsy nahomby ilay fangatahana ary tazonina ilay faritra mba hahafahanao miezaka indray.

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

Kaody momba ny satan'ny valiny

204 Fafaina. Tsy misy vatana ilay valinteny.
400 Mbola misy mpizara anarana iray mbola miasa amin'ilay faritra. Tsy nofafana ilay faritra; ny sehatr'asa antsipiriany dia mampiseho ny lisitry ny tsy fetezana.
404 Tsy hita, na an'ny kaonty hafa izy io
ALAO POST /api/v1/dns-zones/{uuid}/records/

Lisitry ny angon-drakitra na ampidiro anatin'ny faritra iray

Ny GET dia mamerina ny lahatahiry rehetra ao amin'ny faritra amin'ny endrika tabilao tsotra (tsy misy pejy), voalamina araka ny karazana sy ny anarana. Ny POST dia mampiditra tahirin-kevitra ao amin'ny faritra ary mamoaka azy.

Fangatahana masontsivana momba ny vatana (POST)

Mpizahaky ny macro Karazana ilaina Fanoritsoritana
record_type string ENY A, AAAA, CNAME, MX, NS, TXT, SRV, PTR, SOA, CAA
name string ENY @ ho an'ny domena, na marika toy ny www. Ao anatin'ny litera madinika no ametrahana ny anarany.
value string ENY Ny data ao amin'ilay raki-tahiry, toy ny adiresy IP na ny anaran'ny mpampiantrano. Tsy mila teboka amin'ny farany ny anaran'ny mpampiantrano ary tsy mila voambolana ny sanda TXT; ampiana rehefa avoaka ilay raki-tahiry izy roa ireo.
ttl integer ENY Fotoana iasana (segaondra)
priority integer MX sy SRV ihany Tsy maintsy atao amin'ny raki-tatitra MX sy SRV ary tsy raharahaina amin'ny karazan-kafa. Ho an'ny SRV, ampidiro anatin'ny sanda ny lanja, ny port ary ny tanjona.

Ohatra amin'ny fangatahana

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

Ohatra amin'ny Valiny

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

Saha Valiny

Field Karazana Fanoritsoritana
uuid string Mpamantatra ny raki-tahiry, ampiasaina amin'ny /api/v1/dns-records/ endpoints
priority integer | null Hamehana ho an'ny takelaka kelin'ny MX sy SRV, raha tsy izany dia tsy misy
created_at date Datin'ny famoronana ihany (Y-MM-DD), tsy misy ora

Kaody momba ny satan'ny valiny

200 GET: ny rakitry ny faritra
201 POST: namorona ny raki-tatitra
400 Tsy fetezan'ny fanamarinana, ohatra, karazana raki-tahiry tsy fantatra, ttl tsy misy, na raki-tahiry MX na SRV tsy misy laharam-pahamehana
404 Tsy hita, na an'ny kaonty hafa izy io
POST /api/v1/dns-zones/{uuid}/sync/

Hampiditra faritra iray

Manosika indray ny faritra sy ny rakitry ny faritra rehetra mankany amin'ny mpizara anarana. Avoaka hoazy ireo fanovana atao amin'ny rakitry ny faritra, saingy ny famoahana dia ezaka tsara indrindra ary tsy miteraka tsy fahombiazan'ny fangatahana voalohany ny tsy fahombiazan'ny fangatahana, ka ampiasaina io raha tsy miseho amin'ny fikarohana DNS ny fanovana. Tsy ilaina ny vatana.

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

Mamorona tahirin-kevitra

Ny GET dia mamerina ny tahirin'ny faritra rehetra, 25 isaky ny pejy, araka ny domain, karazana ary anarana. Ny POST dia mamorona tahirin-kevitra tahaka ny farany amin'ny tahirin'ny faritra, saingy mandray ny faritra ao amin'ny vatana ho toy ny zone_uuid.

Paramètres de requête

Mpizahaky ny macro Karazana ilaina Fanoritsoritana
zone string Tsy misy Ireo rakitry ny faritra manana io uid io ihany
record_type string Tsy misy Ireo raki-tahiry amin'ity karazana ity ihany, ohatra MX (tsy miraharaha ny haben'ny litera)
page integer Tsy misy Isan'ny pejy, manomboka amin'ny 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"
    }
  ]
}

Kaody momba ny satan'ny valiny

200 GET: fahombiazana
201 POST: namorona ny raki-tatitra
400 Tsy fetezana amin'ny fanamarinana, na tsy misy ny zone_uuid na tsy iray amin'ireo faritrao
ALAO PUT PATCH Fafao /api/v1/dns-records/{uuid}/

Maka, manavao na manafoana tahirin-kevitra iray

Ny GET dia mamerina tahirin-kevitra iray. Ny PUT dia mametraka azy ary mila ny record_type, name, value ary ttl. Ny PATCH dia manova ny sehatr'asa alefao ihany. Ny DELETE dia manaisotra ny tahirin-kevitra ary mamerina 204 tsy misy vatana. Avoaka avy hatrany ny fanovana. Ireo tahirin-kevitra NS noforonina tamin'ny alalan'ny faritra dia tahirin-kevitra rafitra: ny fanavaozana na ny fanafoanana azy ireo dia mamerina 403.

Raha toa ka PATCH ny laharam-pahamehan'ny raki-tahiry MX na SRV iray ianao, dia mandefa ny record_type anatin'ilay fangatahana ihany. Ny PATCH misy laharam-pahamehana nefa tsy misy record_type dia manafoana ny laharam-pahamehana.
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}'

Kaody momba ny satan'ny valiny

200 GET, PUT na PATCH: ny raki-tahiry
204 Fafaina. Tsy misy vatana ilay valinteny.
400 Tsy fetezan'ny fanamarinana
403 Rakitry ny rafitra ilay raki-tahiry, na tsy manana ny fahazoan-dàlana ilaina ilay token
404 Tsy hita, na an'ny kaonty hafa izy io

Fifehezana ny tsy fetezana

400 no atolotry ny tsy fetezan'ny fanamarinana miaraka amin'ny olana voalaza amin'ny anaran'ny sehatr'asa:

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

Manandrana ny fanovana DNS

Manontania mivantana ny mpizara anarana VPS.org mba hanamafisana fa misy ny fanovana alohan'ny hisian'ny fisoloana toerana amin'ny mpiandraikitra ny kaonty na ny cache-n'ny mpisolovava:

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