Tìm kiếm tên miền có sẵn, đăng ký và cập nhật miền, và quản lý máy phục vụ tên và tự động cập nhật. Miền được xác định bởi uuid của nó.
Trả lại các miền đăng ký trong tài khoản của bạn, 25 mỗi trang. Danh sách không có bộ lọc.
Cần quyền: 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"
}
]
}
| Địa điểm | Kiểu | Mô tả |
|---|---|---|
uuid |
string | Định danh miền được dùng trong các điểm cuối miền khác |
status |
string | active, pending, expired, cancelled, transferred |
registrar |
string | Nhà đăng ký tên miền |
registration_date, expiration_date |
datetime | Khi tên miền được đăng ký và khi nó hết hạn. expiration_date có thể là null. |
days_until_expiration |
integer | null | Toàn bộ ngày cho đến expiration_ date, âm khi hết hạn |
is_expired, needs_renewal_soon |
boolean | Có phải miền đã hết hạn hay không, và có phải nó sẽ hết hạn trong 30 ngày tới không |
auto_renew, renewal_period_years |
boolean, integer | Có nên tự động cập nhật miền hay không, và trong bao nhiêu năm |
registration_price, renewal_price |
string | Giá USD như chuỗi thập phân |
whois_privacy, transfer_lock |
boolean | Đặt giá trị |
nameserver1 to nameserver4 |
string | null | Máy phục vụ tên miền |
created_at, updated_at |
datetime | Khi ghi chú được tạo và thay đổi lần cuối (ISO 8601, UTC) |
Trả lại một đối tượng miền với các trường ở trên.
Cần quyền: domains:list
curl -X GET "https://admin.vps.org/api/v1/domains/e4b7a2c9-1d3f-4e5a-8b6c-7d8e9f0a1b2c/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
| 200 | Thành công |
| 404 | Không tìm thấy, hoặc nó thuộc về tài khoản khác |
Kiểm tra xem tên có sẵn trong khoảng 20 phần mở rộng phổ biến (com, net, org, io, dev, co, app, ai và nhiều hơn nữa), cộng thêm phần mở rộng bạn gõ nếu nó không nằm trong số đó. Kết quả bắt đầu với sự trùng khớp chính xác, sau đó là tên có sẵn, sau đó là những tên đã được sử dụng.
Cần quyền: domains:search
| Tham số | Kiểu | Yêu cầu | Mô tả |
|---|---|---|---|
domain |
string | Đúng | Một tên có hoặc không có phần mở rộng, ví dụ như mysite hay mysite. com (2 đến 63 ký tự) |
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
}
Giá là số tiền trong USD cho một năm và là 0 cho tên không có sẵn. Giá được hiển thị là minh họa.
| 200 | Thành công |
| 400 | Thiếu miền, hoặc nó chứa các ký tự khác ngoài chữ cái, số và dấu gạch ngang |
| 500 | Lỗi khi tìm kiếm cơ quan đăng ký. Thử lại sau. |
Đăng ký một tên miền và thu phí theo phương thức thanh toán đã lưu. Sự sẵn có và giá sẽ được kiểm tra với nhà đăng ký một lần nữa ngay trước khi thu phí. Thông tin liên lạc của người đăng ký sẽ được lấy từ hồ sơ tài khoản của bạn. Nếu nhà đăng ký từ chối đăng ký sau khi thu phí, tiền sẽ được trả lại.
Cần quyền: domains:register (được cấp bởi miền: *)
| Tham số | Kiểu | Yêu cầu | Mô tả |
|---|---|---|---|
domain |
string | Đúng | Tên miền đầy đủ bao gồm phần mở rộng, ví dụ example. com |
years |
integer | Không | Thời gian đăng ký, 1 đến 10 (mặc định 1). Giá là giá hàng năm nhân với năm..ai yêu cầu ít nhất 2 năm; giá trị nhỏ hơn trả về 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 | Đăng ký miền |
| 400 | Miền không hợp lệ, miền không còn có sẵn, giá không thể xác thực, phương pháp thanh toán đã lỗi thời, hoặc thanh toán thất bại |
| 402 | Không có phương thức thanh toán trong tập tin, hoặc hóa đơn chưa thanh toán |
| 500 | Không thể xử lý khoản thanh toán, hoặc nhà đăng ký đã từ chối đăng ký sau khi thanh toán. Trong trường hợp thứ hai, thông điệp lỗi nói rằng liệu khoản thanh toán có được hoàn lại hay không. |
Thời hạn miền và tính phí renewal_ price cho mỗi năm theo phương thức thanh toán đã lưu.
Cần quyền: domains:renew
| Tham số | Kiểu | Yêu cầu | Mô tả |
|---|---|---|---|
years |
integer | Không | Năm cần cộng, từ 1 đến 10 (mặc định là 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 | Miền đã được cập nhật |
| 400 | Năm không hợp lệ, không có giá cập nhật cho tên miền, không có phương pháp thanh toán có thể sử dụng, hoặc thanh toán thất bại |
| 404 | Không tìm thấy, hoặc nó thuộc về tài khoản khác |
| 500 | Không thể xử lý thanh toán, hoặc thanh toán đã được thực hiện nhưng việc gia hạn của nhà đăng ký thất bại. Liên hệ với hỗ trợ trong trường hợp đó. |
Đặt máy phục vụ tên miền của miền tại cơ quan đăng ký và trả lại đối tượng miền cập nhật. Để quản lý DNS với API DNS, dùng ns1. vps.org, ns2. vps.org và ns3. vps.org và tạo một vùng cho miền.
Cần quyền: domains:update
| Tham số | Kiểu | Yêu cầu | Mô tả |
|---|---|---|---|
nameserver1 |
string | Đúng | Tên máy máy phục vụ tên chính |
nameserver2, nameserver3, nameserver4 |
string | Không | Tên máy máy phục vụ tên bổ sung |
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 | Name servers updated; the body is the domain object |
| 400 | thiếu máy phục vụ tên1 |
| 404 | Không tìm thấy, hoặc nó thuộc về tài khoản khác |
| 500 | Cập nhật thất bại; cơ thể có lỗi và các trường thông điệp |
Đặt auto_ renew và trả về đối tượng miền cập nhật. Gửi được bật như một boolean JSON: bất kỳ chuỗi không rỗng nào, bao gồm chuỗi false, bật tự động cập nhật.
Cần quyền: 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 | Thiết lập đã được lưu; cơ thể là đối tượng miền |
| 400 | thiếu |
| 404 | Không tìm thấy, hoặc nó thuộc về tài khoản khác |