Wyszukaj dostępne nazwy domen, rejestruj i odnawiaj domeny, a także zarządzaj ich serwerami nazw i automatycznie odnawiaj. Domains są identyfikowane przez ich uuid.
Zwraca domeny zarejestrowane na Twoim koncie, 25 na stronę. Lista nie ma filtrów.
Wymagane zezwolenie: 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"
}
]
}
| Pole | Typ | Opis |
|---|---|---|
uuid |
string | Identyfikator domeny używany w innych punktach końcowych domeny |
status |
string | active, pending, expired, cancelled, transferred |
registrar |
string | Sekretarz, w którym znajduje się domena |
registration_date, expiration_date |
datetime | Po zarejestrowaniu domeny i po jej wygaśnięciu. Termin ważności może być nul. |
days_until_expiration |
integer | null | Całe dni do terminu ważności, negatywne po upływie terminu |
is_expired, needs_renewal_soon |
boolean | Czy domena wygasła, czy wygasła w ciągu następnych 30 dni |
auto_renew, renewal_period_years |
boolean, integer | Czy domena odnawia się automatycznie i ile lat |
registration_price, renewal_price |
string | Ceny w USD jako wiersz dziesiętny |
whois_privacy, transfer_lock |
boolean | Ustawienia blokady przenoszenia rejestracyjnego WHOIS |
nameserver1 to nameserver4 |
string | null | Serwery nazw domeny |
created_at, updated_at |
datetime | Kiedy płyta została stworzona i ostatnio zmieniona (ISO 8601, UTC) |
Zwraca jeden obiekt domeny z powyższymi polami.
Wymagane zezwolenie: domains:list
curl -X GET "https://admin.vps.org/api/v1/domains/e4b7a2c9-1d3f-4e5a-8b6c-7d8e9f0a1b2c/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
| 200 | Sukces |
| 404 | Nie znaleziono, albo należy do innego konta |
Sprawdza, czy nazwa jest dostępna w ok. 20 popularnych rozszerzeniach (com, netto, org, io, dev, co, app, ai i więcej), plus rozszerzenie, które wpisałeś, jeśli nie jest wśród nich. Wyniki zaczynają się od dokładnego dopasowania, następnie dostępnych nazw, a następnie przyjęte.
Wymagane zezwolenie: domains:search
| Parametr | Typ | Wymagany | Opis |
|---|---|---|---|
domain |
string | Tak | Nazwa z rozszerzeniem lub bez jego wydłużenia, np. mysite lub mysite.com (2 do 63 znaków) |
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
}
Ceny są numerami w USD na rok i są nulowe dla nazw, które nie są dostępne. Wykazane ceny są ilustratywne.
| 200 | Sukces |
| 400 | Brak domeny lub zawiera znaki inne niż litery, cyfry i schlee |
| 500 | Nie udało się przeszukać rejestratora. |
Zarejestruje domenę i opłaty za zaoszczędzoną metodę płatności. Dostępność i cena są sprawdzane w rejestrze ponownie tuż przed opłatą. Data kontaktu rejestratora są pobierane z profilu konta. Jeśli rejestrator odrzuca rejestrację po opłatie, płatności są zwracane.
Wymagane zezwolenie: domains:register (zdobywane według domen:*)
| Parametr | Typ | Wymagany | Opis |
|---|---|---|---|
domain |
string | Tak | Pełna nazwa domeny wraz z rozszerzeniem, na przykład example.com |
years |
integer | Nie. | Okres rejestracji, 1 do 10 (domyślnie 1). Cena jest rocznym czasem ceny..ai wymaga co najmniej 2 lat; mniejsza wartość zwraca 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 | Zarejestrowana domena |
| 400 | Nieprawidłowa domena, domena nie jest już dostępna, cena nie mogła zostać zweryfikowana, przestarzała metoda płatności lub nieudana płatność |
| 402 | Brak metody płatności na aktach lub niezapłaconych faktur |
| 500 | Płatności nie można było przerobić, albo rejestrator odrzucił rejestrację po zapłatie. W drugim przypadku komunikat o błędzie mówi, czy refundacja przebiegła. |
Odnawia domenę i pobiera swoją rewitalną cenę za każdy rok do zaoszczędzonej metody płatności.
Wymagane zezwolenie: domains:renew
| Parametr | Typ | Wymagany | Opis |
|---|---|---|---|
years |
integer | Nie. | Lata do dodania, 1 do 10 (domyślnie 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 | Odnowiono domenę |
| 400 | Nieprawidłowe lata, brak ceny odnowienia dla domeny, brak zastosowanej metody płatności lub niepowodzenie płatności |
| 404 | Nie znaleziono, albo należy do innego konta |
| 500 | Płatności nie można było przerobić, albo też przeszło to, ale nie udało się odnowić rejestracji. |
Ustawia serwery nazw domeny w rejestrze i zwraca zaktualizowany obiekt domeny. Aby zarządzać DNS z DNS API, użyj ns1.vps.org, ns2.zq0xqz i ns3.zq0xqz i utworzyć strefę dla domeny.
Wymagane zezwolenie: domains:update
| Parametr | Typ | Wymagany | Opis |
|---|---|---|---|
nameserver1 |
string | Tak | Nazwa głównego serwera nazw |
nameserver2, nameserver3, nameserver4 |
string | Nie. | Dodatkowe nazwy serwerów nazw |
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 | serwery nazw zaktualizowane; organizm jest obiektem domeny |
| 400 | serwer nazw1 brakuje |
| 404 | Nie znaleziono, albo należy do innego konta |
| 500 | Aktualizacja nie powiodła się; organ ma pole błędów i wiadomości |
Ustawia automatycznie_ odnowić i zwraca zaktualizowany obiekt domeny. Wyślij włączone jako JSON logiczne: dowolne niepuste struny, w tym struny false, włącza automatyczne odnawianie.
Wymagane zezwolenie: 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 | Ustawienie zapisanego; ciało jest obiektem domeny |
| 400 | Brak aktywacji |
| 404 | Nie znaleziono, albo należy do innego konta |