사용 가능한 도메인 이름을 검색하고, 도메인을 등록 및 갱신하고, 네임서버 및 자동 갱신을 관리합니다. 도메인은 uuid로 식별됩니다.
페이지당 25개의 계정에 등록된 도메인을 반환합니다. 목록에는 필터가 없습니다.
필요한 권한: 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"
}
]
}
| 필드 | 유형 | 설명 |
|---|---|---|
uuid |
string | 다른 도메인 엔드포인트에서 사용되는 도메인 식별자 |
status |
string | active, pending, expired, cancelled, transferred |
registrar |
string | 도메인이 변경되었습니다. |
registration_date, expiration_date |
datetime | 도메인이 등록된 시기와 만료되는 시기. expiration_date 는 null일 수 있습니다. |
days_until_expiration |
integer | null | expiration_date까지의 전체 일수, 만료되면 음수 |
is_expired, needs_renewal_soon |
boolean | 도메인이 만료되었는지 여부 및 향후 30일 이내에 만료되는지 여부 |
auto_renew, renewal_period_years |
boolean, integer | 도메인이 자동으로 갱신되는지 여부 및 몇 년 동안 갱신되는지 |
registration_price, renewal_price |
string | USD 가격은 소수점 문자열로 |
whois_privacy, transfer_lock |
boolean | WHOIS 개인정보 보호 및 등록자 전송 잠금 설정 |
nameserver1 to nameserver4 |
string | null | 도메인의 네임서버 |
created_at, updated_at |
datetime | 레코드가 생성되고 마지막으로 변경된 시점(ISO 8601, UTC) |
위의 필드를 가진 하나의 도메인 객체를 반환합니다.
필요한 권한: domains:list
curl -X GET "https://admin.vps.org/api/v1/domains/e4b7a2c9-1d3f-4e5a-8b6c-7d8e9f0a1b2c/" \
-H "Authorization: Bearer YOUR_API_TOKEN"
| 200 | 성공 |
| 404 | 찾을 수 없거나 다른 계정에 속합니다. |
약 20개의 인기 확장자(com, net, org, io, dev, co, app, ai 등)를 통해 이름을 사용할 수 있는지 확인합니다. 확장자가 없는 경우 입력한 확장자를 추가합니다. 정확한 일치로 시작한 다음 사용 가능한 이름을 표시하고, 사용 중인 이름을 표시합니다.
필요한 권한: domains:search
| 파라미터 | 유형 | 필수의 | 설명 |
|---|---|---|---|
domain |
string | 예 | 확장자가 있는지 없는지에 관계없이 이름, 예를 들어 mysite 또는 mysite.com(2~63자) |
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
}
가격은 1년간 USD로 표시되며, 사용 가능하지 않은 이름의 경우 null입니다. 표시된 가격은 예시입니다.
| 200 | 성공 |
| 400 | 도메인이 누락되었거나 문자, 숫자 및 하이픈 이외의 문자가 포함되어 있습니다. |
| 500 | 레지스트라 검색이 실패했습니다. 나중에 다시 시도하십시오. |
도메인을 등록하고 저장된 결제 방법을 사용하여 요금을 청구합니다. 요금 청구 전에 등록사와 다시 한 번 가용성 및 가격을 확인합니다. 등록자 연락처 정보는 계정 프로필에서 가져옵니다. 요금 청구 후 등록사가 등록을 거부하면 요금이 환불됩니다.
필요한 권한: domains:register (도메인에 의해 부여됨:*)
| 파라미터 | 유형 | 필수의 | 설명 |
|---|---|---|---|
domain |
string | 예 | 확장자를 포함한 전체 도메인 이름(예: example.com) |
years |
integer | 아니요 | 등록 기간, 1에서 10까지(기본값 1). 가격은 연간 가격을 년으로 나눈 값입니다..ai는 최소 2년이 필요하며, 값이 작으면 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 | 도메인 등록 |
| 400 | 잘못된 도메인, 도메인이 더 이상 사용할 수 없음, 가격을 확인할 수 없음, 오래된 결제 방법 또는 결제 실패 |
| 402 | 파일에 결제 방법이 없거나 미지급 청구서 |
| 500 | 지불을 처리할 수 없거나, 등록사가 지불 후 등록을 거부했습니다. 두 번째 경우에는 오류 메시지가 환불이 진행되었는지 여부를 알려줍니다. |
도메인을 갱신하고 저장된 결제 방법으로 각 연도에 대한 renewal_price를 청구합니다.
필요한 권한: domains:renew
| 파라미터 | 유형 | 필수의 | 설명 |
|---|---|---|---|
years |
integer | 아니요 | 1에서 10까지 덧셈할 년수 (기본값 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 | 도메인 갱신됨 |
| 400 | 잘못된 연도, 도메인 갱신 가격이 없음, 사용 가능한 결제 방법이 없음 또는 결제 실패 |
| 404 | 찾을 수 없거나 다른 계정에 속합니다. |
| 500 | 지불을 처리할 수 없거나 지불이 진행되었지만 등록업체 갱신이 실패했습니다. 이 경우 지원팀에 문의하십시오. |
DNS API로 DNS를 관리하려면 ns1.vps.org, ns2.vps.org 및 ns3.vps.org 를 사용하여 도메인에 대한 영역을 생성합니다. ns1.vps.org 는 네임서버를 호스트로부터 호스팅하는 클라이언트로부터 네임서버를 호스팅하는 클라이언트로 변환합니다.
필요한 권한: domains:update
| 파라미터 | 유형 | 필수의 | 설명 |
|---|---|---|---|
nameserver1 |
string | 예 | 기본 네임서버 호스트 이름 |
nameserver2, nameserver3, nameserver4 |
string | 아니요 | 추가 네임서버 호스트 이름 |
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 | 네임서버 업데이트; 본문은 도메인 객체입니다 |
| 400 | 네임서버1이 없음 |
| 404 | 찾을 수 없거나 다른 계정에 속합니다. |
| 500 | 업데이트 실패; 본문에 오류와 메시지 필드가 있습니다 |
Send enabled as a JSON boolean: 문자열 false를 포함한 모든 비빈 문자열은 자동 갱신을 켜줍니다.
필요한 권한: 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 | 설정 저장; 본문은 도메인 객체입니다 |
| 400 | 활성화된 누락됨 |
| 404 | 찾을 수 없거나 다른 계정에 속합니다. |