Zoek naar beschikbare domeinnamen, registreer en vernieuw domeinen, en beheer hun nameservers en auto-vernieuwing. Domein wordt geïdentificeerd door hun uuid.
Geeft de domeinen die zijn geregistreerd in uw account, 25 per pagina. De lijst heeft geen filters.
Vereiste toestemming: domains:list
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);
{
"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"
}
]
}
| Veld | Type | Omschrijving |
|---|---|---|
uuid |
string | Domeinidentificatie gebruikt in de andere domeineindpunten |
status |
string | active, pending, expired, cancelled, transferred |
registrar |
string | Registrar het domein wordt gehouden op |
registration_date, expiration_date |
datetime | Wanneer het domein geregistreerd is en wanneer het verloopt. expiration_date kan nul zijn. |
days_until_expiration |
integer | null | De hele dag tot de vervaldatum, negatief eenmaal verlopen |
is_expired, needs_renewal_soon |
boolean | Of het domein is verlopen en of het binnen 30 dagen verloopt |
auto_renew, renewal_period_years |
boolean, integer | Of het domein automatisch wordt verlengd, en voor hoeveel jaar |
registration_price, renewal_price |
string | Prijzen in USD als decimale tekenreeksen |
whois_privacy, transfer_lock |
boolean | Instellingen voor privacy en registrar transfers van WHOIS |
nameserver1 to nameserver4 |
string | null | De naamservers van het domein |
created_at, updated_at |
datetime | Wanneer de record werd aangemaakt en voor het laatst gewijzigd (ISO 8601, UTC) |
Geeft één domeinobject terug met de velden hierboven.
Vereiste toestemming: domains:list
curl -X GET "https://admin.vps.org/api/v1/domains/e4b7a2c9-1d3f-4e5a-8b6c-7d8e9f0a1b2c/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
| 200 | Succes |
| 404 | Niet gevonden, of het behoort tot een andere account |
Controleert of een naam beschikbaar is over ongeveer 20 populaire extensies (com, net, org, io, dev, co, app, ai en meer), plus de extensie die je typte als het niet onder hen is. De resultaten beginnen met de exacte match, dan beschikbare namen, dan genomen.
Vereiste toestemming: domains:search
| Parameter | Type | Vereist | Omschrijving |
|---|---|---|---|
domain |
string | Ja | Een naam met of zonder extensie, bijvoorbeeld mysite of mysite.com (2 tot 63 karakters) |
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"])
{
"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
}
De prijzen zijn in USD per jaar en zijn nul voor namen die niet beschikbaar zijn. De getoonde prijzen zijn illustratief.
| 200 | Succes |
| 400 | Ontbrekend domein, of het bevat tekens anders dan letters, cijfers en koppeltekens |
| 500 | Opzoeken van de registrar is mislukt. Probeer het later opnieuw. |
Registreert een domein en rekent uw opgeslagen betaalmethode in. Beschikbaarheid en prijs worden opnieuw gecontroleerd met de registrar vlak voor de lading. De contactgegevens van de registrant worden uit uw rekeningprofiel gehaald. Indien de registrar de registratie na de kosten weigert, wordt de betaling terugbetaald.
Vereiste toestemming: domains:register (toegekend door domeinen:*)
| Parameter | Type | Vereist | Omschrijving |
|---|---|---|---|
domain |
string | Ja | De volledige domeinnaam inclusief extensie, bijvoorbeeld.com |
years |
integer | Nee | Registratie periode, 1 tot 10 (standaard 1). De prijs is de jaarlijkse prijs tijden jaren..ai vereist ten minste 2 jaar; een kleinere waarde geeft 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}'
{
"success": true,
"domain_uuid": "e4b7a2c9-1d3f-4e5a-8b6c-7d8e9f0a1b2c",
"domain_name": "mysite.dev",
"message": "mysite.dev registered successfully!"
}
| 201 | Domein geregistreerd |
| 400 | Ongeldig domein, domein niet meer beschikbaar, prijs kon niet worden geverifieerd, verouderde betalingsmethode, of de betaling mislukt |
| 402 | Geen betalingsmethode in het dossier, of onbetaalde facturen |
| 500 | De betaling kon niet worden verwerkt, of de registrar verwierp de registratie na betaling. In het tweede geval de foutmelding zegt of de restitutie ging door. |
Vernieuwt het domein en brengt zijn vernieuwing_prijs voor elk jaar in rekening aan uw opgeslagen betaalmethode.
Vereiste toestemming: domains:renew
| Parameter | Type | Vereist | Omschrijving |
|---|---|---|---|
years |
integer | Nee | Toe te voegen jaren, 1 tot 10 (standaard 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)!"
}
| 200 | Domein vernieuwd |
| 400 | Ongeldige jaren, geen verlengingsprijs voor het domein, geen bruikbare betaalmethode of de betaling is mislukt |
| 404 | Niet gevonden, of het behoort tot een andere account |
| 500 | Betaling kon niet worden verwerkt, of de betaling ging door maar de registrar vernieuwing mislukt. Contact ondersteuning in dat geval. |
Stelt de naamservers van het domein in op de registrar en geeft het bijgewerkte domeinobject terug. Om DNS te beheren met de DNS API, gebruik je ns1.vps.org, ns2.vps.org en ns3.vps.org en maak je een zone voor het domein.
Vereiste toestemming: domains:update
| Parameter | Type | Vereist | Omschrijving |
|---|---|---|---|
nameserver1 |
string | Ja | Primaire naamserver-hostnaam |
nameserver2, nameserver3, nameserver4 |
string | Nee | Aanvullende naamserverhostnamen |
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"}'
| 200 | Nameservers bijgewerkt; de body is het domeinobject |
| 400 | nameserver1 ontbreekt |
| 404 | Niet gevonden, of het behoort tot een andere account |
| 500 | De update is mislukt; de body heeft fout- en berichtvelden |
Stelt auto_renew in en geeft het bijgewerkte domeinobject terug. Verzend ingeschakeld als een JSON boolean: elke niet-leeg tekenreeks, inclusief de string false, zet automatisch verlenging aan.
Vereiste toestemming: 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}'
| 200 | Opgeslagen instellingen; het lichaam is het domeinobject |
| 400 | ontbrekend |
| 404 | Niet gevonden, of het behoort tot een andere account |