VPS.org API

Documentazione REST API

Domini

Ccàrca i nomi di duminiu dispunibbili, riggistra e rinnuva duminii, e gestisci li so sirvizzi di nomi e lu rinnuvu automaticu. I duminii sunnu identificati di u so uuid.

Punti finali 7
Percorsu di Base /api/v1/domains
OTTIENI /api/v1/domains/

Elencu di tutti i duminii

Ritorna i dumini riggistrati ntô vostru contu, 25 pi pagina. A lista nun havi filtri.

Permessi richiesti: domains:list

Esempiu di dumanda

cURL
Python
JavaScript
curl -X GET "https://admin.vps.org/api/v1/domains/" \
  -H "Authorization: Bearer YOUR_API_TOKEN"
import requests

url = "https://admin.vps.org/api/v1/domains/"
headers = {"Authorization": "Bearer YOUR_API_TOKEN"}

response = requests.get(url, headers=headers)
for domain in response.json()["results"]:
    print(domain["domain_name"], domain["status"], domain["expiration_date"])
const response = await fetch('https://admin.vps.org/api/v1/domains/', {
  headers: { 'Authorization': 'Bearer YOUR_API_TOKEN' }
});

const data = await response.json();
console.log(data.results);

Esempiu di risposta

{
  "count": 1,
  "next": null,
  "previous": null,
  "results": [
    {
      "uuid": "e4b7a2c9-1d3f-4e5a-8b6c-7d8e9f0a1b2c",
      "domain_name": "example.com",
      "status": "active",
      "registrar": "dynadot",
      "registration_date": "2026-01-15T10:30:00Z",
      "expiration_date": "2027-01-15T10:30:00Z",
      "days_until_expiration": 122,
      "is_expired": false,
      "needs_renewal_soon": false,
      "auto_renew": true,
      "renewal_period_years": 1,
      "registration_price": "12.64",
      "renewal_price": "12.64",
      "whois_privacy": true,
      "nameserver1": "ns1.vps.org",
      "nameserver2": "ns2.vps.org",
      "nameserver3": "ns3.vps.org",
      "nameserver4": null,
      "transfer_lock": true,
      "created_at": "2026-01-15T10:30:00Z",
      "updated_at": "2026-09-01T08:12:40Z"
    }
  ]
}

Campi di risposta

Campu Tipu Descrizzioni
uuid string L'identificativu di duminiu usatu di l'autri punti finali di duminiu
status string active, pending, expired, cancelled, transferred
registrar string Registrar u duminiu hè tenutu à
registration_date, expiration_date datetime Quannu lu duminiu fu riggistratu e quannu scadi. expiration_date pò èssiri null.
days_until_expiration integer | null Giorni interi finu a scadenza_data, negativu una vota scaduta
is_expired, needs_renewal_soon boolean Se u duminiu è scadutu, e si scadrà tra 30 ghjorni
auto_renew, renewal_period_years boolean, integer Se u duminiu si rinniva automaticamenti, e pi quanti anni
registration_price, renewal_price string Prezzi in USD comu stringhe dicimali
whois_privacy, transfer_lock boolean Privacità WHOIS e impostazioni di lu bloccu di trasferimentu di registru
nameserver1 to nameserver4 string | null Li sirvizzi di nomi di duminiu
created_at, updated_at datetime Quannu u record fu criatu e canciatu l'ultima vota (ISO 8601, UTC)
OTTIENI /api/v1/domains/{uuid}/

Otteni i detalli di u duminiu

Ritorna un oggettu di duminiu cu li campi supra.

Permessi richiesti: domains:list

curl -X GET "https://admin.vps.org/api/v1/domains/e4b7a2c9-1d3f-4e5a-8b6c-7d8e9f0a1b2c/" \
  -H "Authorization: Bearer YOUR_API_TOKEN"

Codici di Statu di Risposta

200 Successu
404 Non truvatu, o appartiene a un altru contu
POST /api/v1/domains/search/

Ricerchi di Domain Disponibilità

Verifica si un nomu è dispunibbili tra circa 20 estensioni pupulari (com, net, org, io, dev, co, app, ai e àutri), e puru l'estensioni ca avete scrittu si nun è tra i so. I risultati cumincianu cu a currispondenza esatta, poi i nomi dispunibbili, poi i nomi usati.

Permessi richiesti: domains:search

Parametri di u Corpu di a Richiesta

Parametri Tipu Obbligatoriu Descrizzioni
domain string Iè Un nomu cu o senza estensioni, pi esempiu mysite o mysite.com (da 2 a 63 caratteri)

Esempiu di dumanda

cURL
Python
curl -X POST "https://admin.vps.org/api/v1/domains/search/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"domain": "mysite.com"}'
import requests

url = "https://admin.vps.org/api/v1/domains/search/"
headers = {"Authorization": "Bearer YOUR_API_TOKEN"}

response = requests.post(url, headers=headers, json={"domain": "mysite.com"})
for result in response.json()["results"]:
    if result["available"]:
        print(result["domain"], result["registration_price"], result["renewal_price"])

Esempiu di risposta

{
  "results": [
    {
      "domain": "mysite.com",
      "available": false,
      "price": null,
      "registration_price": null,
      "renewal_price": null,
      "tld": "com",
      "is_exact_match": true
    },
    {
      "domain": "mysite.dev",
      "available": true,
      "price": 17.24,
      "registration_price": 17.24,
      "renewal_price": 17.24,
      "tld": "dev",
      "is_exact_match": false
    }
  ],
  "base_domain": "mysite",
  "search_count": 20
}

I prezzi sò numeri in USD per un annu è sò nulli per i nomi chì ùn sò micca dispunibili. I prezzi mostrati sò illustrativi.

Codici di Statu di Risposta

200 Successu
400 Manca lu duminiu, o cunteni carattirìstichi diversi di littirali, cifri e trattini
500 A ricerca di registru a fallitu. Ripruvari cchiù tardu.
POST /api/v1/domains/register/

Registrà un novu duminiu

Riggistra un duminiu e addebita u vostru metudu di pagamentu salvatu. A disponibilità è u prezzu sò ripruvisi cu u registrar prima di l'addebitu. I dati di cuntattu di u registrante sò presi di u vostru profilu di contu. Se u registrar rifiuta a registrazione dopu l'addebitu, u pagamentu hè rimbursatu.

Permessi richiesti: domains:register (cunceduta di dumini:*)

Parametri di u Corpu di a Richiesta

Parametri Tipu Obbligatoriu Descrizzioni
domain string Iè U nomu di duminiu cumpletu, cu l'estensioni, pi esempiu example.com
years integer No U periodu di riggistrazzioni, 1 à 10 (predefinitu 1). U prezzu è u prezzu annuali moltiplicatu pi anni..ai richiede almenu 2 anni; un valuri cchiù nicu riturnerà 400.
curl -X POST "https://admin.vps.org/api/v1/domains/register/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"domain": "mysite.dev", "years": 1}'

Esempiu di risposta

{
  "success": true,
  "domain_uuid": "e4b7a2c9-1d3f-4e5a-8b6c-7d8e9f0a1b2c",
  "domain_name": "mysite.dev",
  "message": "mysite.dev registered successfully!"
}

Codici di Statu di Risposta

201 Dominiu riggistratu
400 U duminiu ùn hè micca validu, u duminiu ùn hè più dispunibule, u prezzu ùn pò esse verificatu, u metudu di pagamentu hè obsoletu, o u pagamentu ùn hè micca riesciutu
402 Nudda manera di pagà in archiviu, o fatture non pagate
500 U pagamentu nun po èssiri processatu, o u registratore rifiutò a registrazione dopu u pagamentu. Ntô sicunnu casu u messagiu d'errore dice si u rimborsu hè statu fattu.
POST /api/v1/domains/{uuid}/renew/

Rinnova un duminiu

Rinnova u duminiu e fattura u so renewal_price per ogni annu à u vostru metudu di pagamentu salvatu.

Permessi richiesti: domains:renew

Parametri di u Corpu di a Richiesta

Parametri Tipu Obbligatoriu Descrizzioni
years integer No Anni da agghiunciri, da 1 a 10 (predefinitu 1)
curl -X POST "https://admin.vps.org/api/v1/domains/e4b7a2c9-1d3f-4e5a-8b6c-7d8e9f0a1b2c/renew/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"years": 1}'
{
  "success": true,
  "domain_uuid": "e4b7a2c9-1d3f-4e5a-8b6c-7d8e9f0a1b2c",
  "new_expiration": "2028-01-15T10:30:00+00:00",
  "message": "example.com renewed successfully for 1 year(s)!"
}

Codici di Statu di Risposta

200 Dominiu rinuvatu
400 Anni non validi, nuddu prezzu di rinnovu pi lu duminiu, nuddu mètudu di pagamentu usabbili, o u pagamentu falliu
404 Non truvatu, o appartiene a un altru contu
500 U pagamentu nun po èssiri processatu, o u pagamentu è statu fattu ma u rinnovu di u registraru hà fallitu. Cuntattate u supportu in stu casu.
PUT /api/v1/domains/{uuid}/nameservers/

Aggiustà i nomi di servituri

Imposta i nomi di i servitori di u duminiu in u registrar e ritorna l'oggettu di duminiu aggiornatu. Per gestiri DNS cu l'API DNS, usa ns1.vps.org, ns2.vps.org e ns3.vps.org e cria una zona pi u duminiu.

Permessi richiesti: domains:update

Parametri di u Corpu di a Richiesta

Parametri Tipu Obbligatoriu Descrizzioni
nameserver1 string Iè Primu nomu di servituri
nameserver2, nameserver3, nameserver4 string No Nomi di servituri addizziunali
curl -X PUT "https://admin.vps.org/api/v1/domains/e4b7a2c9-1d3f-4e5a-8b6c-7d8e9f0a1b2c/nameservers/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"nameserver1": "ns1.vps.org", "nameserver2": "ns2.vps.org", "nameserver3": "ns3.vps.org"}'

Codici di Statu di Risposta

200 Nameservers updated; the body is the domain object
400 nameserver1 missing
404 Non truvatu, o appartiene a un altru contu
500 L'aggiornamentu ùn hè statu capaci; u corpu hà campi di messaggiu e d'errori
PUT /api/v1/domains/{uuid}/auto-renew/

Attivà o disattivu u rinnovu automaticu

Imposta auto_renew e riturna l'uggettu di duminiu aggiornatu. Mandatu comu boolean JSON: ogni stringa nun vuca, puru la stringa false, attiva u rinnovu automaticu.

Permessi richiesti: domains:update

curl -X PUT "https://admin.vps.org/api/v1/domains/e4b7a2c9-1d3f-4e5a-8b6c-7d8e9f0a1b2c/auto-renew/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"enabled": false}'

Codici di Statu di Risposta

200 L'impostazioni sò salvati; u corpu è l'uggettu di duminiu
400 mancanu l'attivitati
404 Non truvatu, o appartiene a un altru contu

Note