VPS.org API

Pagina officialis Documentationis

Pagina domestica

Nomina dominiorum disponibilium investigat, dominios inscriptus et renovatus, et servas nominarum et renovationem automaticam administrat. Dominia per uuid identificata sunt.

Extrema 7
Via Basis /api/v1/domains
ACQUIRE /api/v1/domains/

Omnia Dominia Enumera

Retorna dominios in tuo contu inscribitos, 25 pro pagina. Lista non habet filtrum.

Permissio necesse: domains:list

Exemplum Petitionis

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

Exemplum Responsionis

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

Campo Typus Descriptio
uuid string Identifier dominii in aliis dominio finitibus invenitur
status string active, pending, expired, cancelled, transferred
registrar string Incolae Domenienses appellantur.
registration_date, expiration_date datetime Si in hoc tempore non est, et si non est, in hoc tempore non est.
days_until_expiration integer | null Dies interi ad expiration_date, negativus cum expiratur
is_expired, needs_renewal_soon boolean Si dominium expirat, et si expirat in proximis 30 diebus
auto_renew, renewal_period_years boolean, integer Si domenum automatice renovatur, et per quo tempore
registration_price, renewal_price string Pagina interretialis de usque ad 1000
whois_privacy, transfer_lock boolean Pagina officialis Situs publicus de scriptore
nameserver1 to nameserver4 string | null Pagina domestica Domus Domini
created_at, updated_at datetime In hoc tempore, usque ad annum 1990, fuit nomen in lingua Anglica (ISO 8601:1990).
ACQUIRE /api/v1/domains/{uuid}/

Descriptio dominii

Returns one domain object with the fields above.

Permissio necesse: domains:list

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

Codices Status Responsorum

200 Successus
404 Non repertus, aut ad alium contum pertinet
Post /api/v1/domains/search/

Pagina interretialis de dominio

Verificat si nomen inter circa 20 populares extensiones (com, net, org, io, dev, co, app, ai et alios) disponibilum est, plus extensionem quae tu tapeta est si inter ea non est. Results begin with the exact match, then available names, then taken ones.

Permissio necesse: domains:search

Parametri Corporis Petitionis

Parametrus Typus Requisitum Descriptio
domain string Ita Nomen cum aut sine extensione, exempli gratia mysite aut mysite.com (2 ad 63 caracteres)

Exemplum Petitionis

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"])

Exemplum Responsionis

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

Praecipuae sunt numerus in dollariis per annum et sunt nullum pro nominibus qui non sunt disponibilia. Praecipuae sunt illustrativae.

Codices Status Responsorum

200 Successus
400 Domenium mancant, aut caracteres non litteras, numeris et ligaturibus continet
500 Registrae investigatio factus est. Probavit postea.
Post /api/v1/domains/register/

Novum Dominium Registra

Domainum inscriptum et tuum methodum pagorum conservatum debitat. Disponibilitatis et praemium cum registrare deinde praeter debitum verificatur. Descriptio contacti registrandi ex tuo profilo coniunctionis accepit. Si registrare inscriptionem post debitum rejectat, debitum restituitur.

Permissio necesse: domains:register (Domenio concessum:*)

Parametri Corporis Petitionis

Parametrus Typus Requisitum Descriptio
domain string Ita Nomen dominii completum, cum extensione, exempli gratia example.com.
years integer No Periodus inscriptionis, 1 ad 10 (default 1). Prezium est annuale praemium annos multiplices..ai minime 2 annos exigit; minor valorem 400 restituit.
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}'

Exemplum Responsionis

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

Codices Status Responsorum

201 Domenium registrum
400 Domenium invalidum, domenum non plus disponibilum, praemium non verificabile, methodus pagatiorum obsoletus, vel pagatiorum error
402 Non est methodus pagati in archivio, aut facturae non pagatae
500 Pagus non processus esse potuit, aut registrar inscriptionem post pagum rejectit. In secundo casu error messenger dicit si restitutio pervenit.
Post /api/v1/domains/{uuid}/renew/

Domenium

Renovavit dominium et repraesentavit eius renewal_price pro anno ad tuum methodum pagorum conservatum.

Permissio necesse: domains:renew

Parametri Corporis Petitionis

Parametrus Typus Requisitum Descriptio
years integer No Annis ad adiuvantem, 1 ad 10 (default 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)!"
}

Codices Status Responsorum

200 Domenium renovatum
400 Annis invalidis, non renovatio praemium pro dominio, non methodus pagatiorum utitur, vel pagatiorum fallit
404 Non repertus, aut ad alium contum pertinet
500 Pagus non processus esse potuit, aut pagus pervenit sed renovatio registraris factus est. Contacta supportum in hoc casu.
PUT /api/v1/domains/{uuid}/nameservers/

Serviliae

Sets the domain's nameservers at the registrar and returns the updated domain object. To manage DNS with the DNS API, use ns1.vps.org, ns2.vps.org and ns3.vps.org and create a zone for the domain.

Permissio necesse: domains:update

Parametri Corporis Petitionis

Parametrus Typus Requisitum Descriptio
nameserver1 string Ita Primum nomen servorum nominis
nameserver2, nameserver3, nameserver4 string No Nomina servorum nominis
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"}'

Codices Status Responsorum

200 Nomen servium aedificatum; corpus est domenum objectum
400 nameserver1 missing
404 Non repertus, aut ad alium contum pertinet
500 Actualization failed; the body has error and message fields
PUT /api/v1/domains/{uuid}/auto-renew/

Activare aut deactivare auto-renovationem

Setet auto_renew et restituit objectum dominii actualizatum. Send activated as a JSON boolean: any non-vacuum string, including the string false, turns auto_renew on.

Permissio necesse: 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}'

Codices Status Responsorum

200 Configuratio saepita; corpus est domenum objectum
400 activatum mancant
404 Non repertus, aut ad alium contum pertinet

Notiones