VPS.org API

@ action

QDialogButtonBox

Binciki sunaye na shafuka masu dacewa, yi rajista da sake sake shafuka, da kuma kula da masu karɓan suna da sake sakewa da kai. An san shafuka da uuid ɗinsu.

Ƙarshen maki 7
Hanyar Tushe /api/v1/domains
SAMU /api/v1/domains/

Jera Duk Yankuna

Returns the domains registered in your account, 25 per page. The list has no filters.

Required permission: domains:list

Buƙatar Misali

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

Misalin Amsar

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

Wuraren Amsawa

@ action Nau'i @ action
uuid string An yi amfani da mai gane domen a cikin sauran maɓallin ƙarshe na domen
status string active, pending, expired, cancelled, transferred
registrar string Mai rijista da shafukan yanar gizo ke da shi a
registration_date, expiration_date datetime Lokacin da aka yi rajista da shafuka da kuma lokacin da za'a tsawaita su. za'a iya sanya ranar_tsawaita_wa a matsayin bacci.
days_until_expiration integer | null %s: %s
is_expired, needs_renewal_soon boolean Ko da yaushe layin ya ƙare, kuma ko yaushe zai ƙare cikin kwanaki 30 masu zuwa
auto_renew, renewal_period_years boolean, integer Ko da yaushe za'a sake shafukan yanar gizo da kai tsaye, da kuma tsawon shekaru
registration_price, renewal_price string Farashin a cikin USD kamar wata maɓalli na ɗari
whois_privacy, transfer_lock boolean Shiryoyin ɓoyayyen sirri na WHOIS da ɓoyayyen canja wurin rajista
nameserver1 to nameserver4 string | null Name=File
created_at, updated_at datetime Yaushe aka halitta da canza wannan rijista na ƙarshe (ISO 8601, UTC)
SAMU /api/v1/domains/{uuid}/

@ action

Returns one domain object with the fields above.

Required permission: domains:list

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

Lambobin Matsayin Amsawa

200 Success
404 An kasa gano shi, ko kuma yana da alaƙa da wani asusu na daban
QSql /api/v1/domains/search/

Search Domain Availability

Checks whether a name is available across about 20 popular extensions (com, net, org, io, dev, co, app, ai and more), plus the extension you typed if it is not among them. Results start with the exact match, then available names, then taken ones.

Required permission: domains:search

Sigogin Jiki na Neman

Parameters Nau'i Ana buƙata @ action
domain string Ee Wani suna da ko ba tare da ƙarƙashin ba, misali mysite ko mysite.com (2 zuwa 63 alamu)

Buƙatar Misali

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

Misalin Amsar

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

Prices are numbers in USD for one year and are null for names that are not available. The prices shown are illustrative.

Lambobin Matsayin Amsawa

200 Success
400 An rasa shafuka, ko kuma yana da alamomin da ba su da haruffa, lamba da haɗe-haɗe
500 An kasa gano mai rijista. Yi kokarin sake yi bayan lokaci.
QSql /api/v1/domains/register/

Yi Rijista Sabon Yanki

Registers a domain and charges your saved payment method. Availability and price are checked with the registrar again right before the charge. The registrant contact details are taken from your account profile. If the registrar rejects the registration after the charge, the payment is refunded.

Required permission: domains:register (an ba da shi ta hanyar shafuka: *)

Sigogin Jiki na Neman

Parameters Nau'i Ana buƙata @ action
domain string Ee Sunan domen na cikakke da kuma ƙarƙashinsa, misali example.com
years integer QDialogButtonBox Registration period, 1 to 10 (default 1). The price is the yearly price times years. .ai requires at least 2 years; a smaller value returns 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}'

Misalin Amsar

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

Lambobin Matsayin Amsawa

201 An yi rajista da shafuka
400 Invalid domain, domain no longer available, price could not be verified, outdated payment method, or the payment failed
402 Babu hanyar biyan kuɗi a cikin fayil, ko kuma ba'a biya ba
500 An kasa aiwatar da biyan kuɗi, ko kuma mai rajista ya ki yarda da rajista bayan biyan kuɗi. A cikin yanayin na biyu, sakon kuskure na gaya idan an sake biyan kuɗi.
QSql /api/v1/domains/{uuid}/renew/

Renew a Domain

Renews the domain and charges its renewal_price for each year to your saved payment method.

Required permission: domains:renew

Sigogin Jiki na Neman

Parameters Nau'i Ana buƙata @ action
years integer QDialogButtonBox Shekaru da za'a ƙara, 1 zuwa 10 (farawa 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)!"
}

Lambobin Matsayin Amsawa

200 Domain renewed
400 Shekaru marasa inganci, babu farashin sakewa ga shafukan yanar gizo, babu hanyar biyan da za'a iya amfani da ita, ko kuma biyan ya kasa
404 An kasa gano shi, ko kuma yana da alaƙa da wani asusu na daban
500 An kasa aiwatar da biyan kuɗi, ko kuma an yi biyan kuɗi amma sake sabuntawa na mai rijista ya kasa. Ka tuntubi goyon baya a wannan al'amari.
PUT /api/v1/domains/{uuid}/nameservers/

Update Nameservers

Ana daidaita masu karɓan suna na domen a wurin mai rajista kuma ana mayar da abin da aka sabunta na domen. Don kula da DNS da API na DNS, ka yi amfani da ns1.vps.org, ns2.vps.org da ns3.vps.org kuma ka ƙirƙiri wani yanki don domen.

Required permission: domains:update

Sigogin Jiki na Neman

Parameters Nau'i Ana buƙata @ action
nameserver1 string Ee Sunan mai masarauta na farko
nameserver2, nameserver3, nameserver4 string QDialogButtonBox Additional nameserver hostnames
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"}'

Lambobin Matsayin Amsawa

200 Nameservers updated; the body is the domain object
400 %s: An rasa mai karɓa na suna1
404 An kasa gano shi, ko kuma yana da alaƙa da wani asusu na daban
500 An kasa sabunta; jikin yana da kurakurai da filayen saƙo
PUT /api/v1/domains/{uuid}/auto-renew/

Turn Auto-Renewal On or Off

Ana daidaita auto_renew kuma ana mayar da abin da aka sabunta a cikin domen. An canza shi zuwa JSON boolean: duk wata kalma da ba ta da sarari, ciki har da kalma da ba gaskiya ba, tana kunna sakewa da kansa.

Required permission: 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}'

Lambobin Matsayin Amsawa

200 An adana ƙayyadaddun; jikin shi ne abu na shafuka
400 enabled missing
404 An kasa gano shi, ko kuma yana da alaƙa da wani asusu na daban

Notes