WEDOS REST API je stále ve vývoji. Přístup a funkce se mohou bez předchozího upozornění změnit.
Tento článek částečně popisuje endpoint Domains ve WEDOS REST API. Domény a Kontakty domén mají vlastní články. Pro WEDOS API (WAPI) viz WAPI – Domény WEDOS.
Základní informace o WEDOS REST API najdete v článku WEDOS REST API Manuál.
V tomto článku najdete následující informace:
- Přístup k DNS endpointu
- Podrobnosti DNS endpointu:
- Poznámky
NSSETs Endpoint Access
NSSET je pojmenovaná sada DNS serverů, kterou lze spravovat samostatně a přiřadit ji k několika doménám najednou (používá se hlavně u domén .cz). Toto API pokrývá správu NSSETů pod prefixem /v2/nssets v URL.
Základní URL a autentizace
The base URL for the NSSETs endpoints is: https://api.wedos.com/v2
Veškerá komunikace probíhá přes HTTPS a autentizace používá výhradně OAuth2: odesílejte hlavičku Authorization: Bearer <TOKEN> s každým požadavkem. Token musí mít scope domains (jeden společný scope pro domény, kontakty a NSSETy). Bez platné autentizace vrací API chybu.
Datové požadavky (POST/PATCH) se odesílají jako JSON (Content-Type: application/json).
Můžete přidat parametr example=1 k libovolnému endpointu (např. ?example=1, nebo &example=1 pokud URL již obsahuje jiné parametry dotazu). Místo provedení požadavku pak API vrátí ukázkový příkaz curl pro dané volání. I v tomto režimu je vyžadována platná autentizace.
Přehled endpointů
| Metoda | Endpoint | Popis |
|---|---|---|
| GET | /nssets/check | Kontrola dostupnosti/existence NSSETu |
| GET | /nssets/{name} | Informace o NSSETu |
| POST | /nssets | Vytvoření NSSETu |
| POST | /nssets/{name}/transfer | Přeregistrace NSSETu |
| POST | /nssets/{name}/auth-info/send | Odeslání autorizačního kódu NSSETu |
| PATCH | /nssets/{name} | Úprava NSSETu |
Formát odpovědi
Odpovědí API je vždy objekt JSON s klíči code (návratový kód), msg (textový popis), request_id (identifikátor požadavku) a případně data (vrácená data při úspěchu).
Kromě konkrétních (business) návratových kódů uvedených níže u jednotlivých volání mohou všechny endpointy vracet i tyto obecné kódy REST vrstvy:
1000– požadavek byl úspěšně proveden2000– chybí nebo je neplatná autentizace (OAuth2 Bearer token)2004– překročena maximální povolená velikost požadavku (URL nebo tělo požadavku)4000– neznámá/nepodporovaná metoda nebo akce API4001– validace vstupních dat selhala4005– pro aktuální tvar URL v režimuexample=1není definován žádný příklad6000– interní chyba při inicializaci zpracování požadavku
GET /nssets/check
Kontroluje, zda je handle NSSETu volný k použití a jaký má stav v registru.
Parametry:
tld– povinný, query, string – TLD, pro kterou se NSSET kontrolujename– povinný, query, string – handle NSSETureg_key– volitelný, query, string – identifikátor konkrétního registru
Návratové kódy:
1000– NSSET je dostupný k registraci2100– chybí povinný parametr2101– neplatné vstupní parametry2201– neplatná TLD2247– nepodporovaný formát NSSETu3242– NSSET není dostupný3245– NSSET je již registrovaný3248– NSSET není dostupný – karanténa3249– NSSET není dostupný – rezervovaný3250– NSSET není dostupný – blokovaný3251– NSSET je již registrovaný u nás4218– kontrola se nezdařila – chyba komunikace5001– interní chyba autentizace
Data odpovědi: Žádná – výsledek nesou přímo pole odpovědi code/msg.
Příklad:
curl -X GET -H 'Authorization: Bearer <TOKEN>' \
'https://api.wedos.com/v2/nssets/check?tld=cz&name=NSSET'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3g1"
}
GET /nssets/{name}
Vrací podrobné informace o NSSETu včetně jeho DNS serverů.
Parametry:
name– povinný, path – handle NSSETutld– povinný, query, string – TLDreg_key– volitelný, query, string – identifikátor konkrétního registru
Návratové kódy:
1000– OK2100– chybí povinný parametr2101– neplatné vstupní parametry2201– neplatná TLD2209– chyba syntaxe2247– nepodporovaný formát NSSETu3214– nepodařilo se načíst NSSET3242– NSSET není dostupný4204– chyba spojení
Data odpovědi:
nsset– objekt s údaji NSSETu:name– handle NSSETustatus– stav NSSETu v registrureg_owner,reg_creator,reg_update– identifikátory registrátoracreated_date,updated_date,transfer_date– data vytvoření/aktualizace/přeregistracetech_c– identifikátor technického kontaktudns.server– pole DNS serverů NSSETu (name,addr_ipv4,addr_ipv6)
Příklad:
curl -X GET -H 'Authorization: Bearer <TOKEN>' \
'https://api.wedos.com/v2/nssets/NSSET?tld=cz'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3g2",
"data": {
"nsset": {
"name": "NSSET",
"status": "ok",
"tech_c": "CONTACT",
"created_date": "2024-01-10",
"dns": {
"server": [
{ "name": "ns.wedos.com", "addr_ipv4": null, "addr_ipv6": null },
{ "name": "ns.wedos.org", "addr_ipv4": null, "addr_ipv6": null }
]
}
}
}
}
POST /nssets
Vytvoří nový NSSET.
Parametry:
tld– povinný, string – TLD, pro kterou se NSSET vytváříname– volitelný, string – požadovaný handle NSSETu; pokud není uveden, vygeneruje se automatickydns– povinný, array – pole DNS serverů ve tvaru[{"name":"ns1.example.com","addr_ipv4":"1.2.3.4","addr_ipv6":"..."},...](addr_ipv4/addr_ipv6jsou u každého serveru volitelné; stejný tvar jako u POST /domains/create)tech_c– volitelný, string – identifikátor technického kontaktu; pokud není uveden, použije se výchozíreg_key– volitelný, string – identifikátor konkrétního registru
Návratové kódy:
1000– OK, NSSET vytvořen2100– chybí povinný parametr2101– neplatný formát vstupního parametru2201– chybně zadaná TLD2210– neplatný formát pole DNS serverů2211– příliš mnoho DNS serverů2216– neplatná syntaxe kontaktu2247– nepodporovaný formát NSSETu3228– registr nepodporuje kontakty3229– chyba při načítání kontaktu3242– NSSET není dostupný3244– vytvoření NSSETu se nezdařilo3245– NSSET je již registrovaný4212– chyba spojení4218,4219– kontrola/vytvoření se nezdařilo – chyba komunikace
Data odpovědi:
nsset– handle vytvořeného NSSETu
Příklad:
curl -X POST -H 'Authorization: Bearer <TOKEN>' -H 'Content-Type: application/json' \
'https://api.wedos.com/v2/nssets' \
--data '{
"tld": "cz",
"dns": [
{ "name": "ns.wedos.com" },
{ "name": "ns.wedos.org" }
]
}'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3g3",
"data": {
"nsset": "NSSET"
}
}
POST /nssets/{name}/transfer
Přeregistruje NSSET k nám od jiného registrátora.
Parametry:
name– povinný, path – handle NSSETutld– povinný, string – TLDauth_info– povinný, string – autorizační kód NSSETureg_key– volitelný, string – identifikátor konkrétního registru
Návratové kódy:
1000– OK2100– chybí povinný parametr2101– neplatné vstupní parametry2201– nepodporovaná TLD2215–auth_infochybí2247– neplatný název NSSETu2249– přeregistrace NSSETu není pro tuto TLD povolena3214– nepodařilo se načíst NSSET3242– NSSET není podporován3251– NSSET je již registrovaný u cílového registrátora3255– chyba autorizace3256– přeregistrace NSSETu se nezdařila4221– přeregistrace se nezdařila – chyba spojení
Data odpovědi: Žádná – výsledek nesou přímo pole odpovědi code/msg.
Příklad:
curl -X POST -H 'Authorization: Bearer <TOKEN>' -H 'Content-Type: application/json' \
'https://api.wedos.com/v2/nssets/NSSET/transfer' \
--data '{"tld": "cz", "auth_info": "AUTHCODE123"}'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3g4"
}
POST /nssets/{name}/auth-info/send
Odešle autorizační kód NSSETu na e-mail technického kontaktu.
Parametry:
name– povinný, path – handle NSSETutld– povinný, string – TLDreg_key– volitelný, string – identifikátor konkrétního registru
Návratové kódy:
1000– OK, autorizační kód odeslán na kontaktní e-mail2100– chybí povinný parametr2101– neplatné vstupní parametry2201– nepodporovaná TLD2243– odeslání autorizačního kódu není pro tento NSSET povoleno3214– nepodařilo se načíst NSSET3217– odeslání autorizačního kódu se nezdařilo3242– NSSET není dostupný4222– odeslání se nezdařilo – chyba spojení5001– interní chyba autorizace
Data odpovědi: Žádná – výsledek nesou přímo pole odpovědi code/msg.
Příklad:
curl -X POST -H 'Authorization: Bearer <TOKEN>' -H 'Content-Type: application/json' \
'https://api.wedos.com/v2/nssets/NSSET/auth-info/send' \
--data '{"tld": "cz"}'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3g5"
}
PATCH /nssets/{name}
Upraví existující NSSET – jeho DNS servery, technický kontakt nebo rozsah testů.
Parametry:
name– povinný, path – handle NSSETutld– povinný, string – TLDdns– povinný, array – pole DNS serverů ve stejném tvaru jako u POST /nssetsauth_info– povinný, string – autorizační kód NSSETutech_c– volitelný, string – identifikátor technického kontaktu; pokud není uveden, zůstává beze změnyreg_key– volitelný, string – identifikátor konkrétního registrureport_level– volitelný – rozsah testů, které registr při úpravě provádí
Návratové kódy:
1000– OK2100– chybí povinný parametr2101– neplatné vstupní parametry2201– chybně zadaná TLD2209– chyba syntaxe2210– neplatný formát pole DNS serverů2211– příliš mnoho DNS serverů2216– neplatná syntaxe kontaktu2247– neplatný NSSET3214– nepodařilo se načíst NSSET3242– NSSET není touto doménou/registrem podporován3252– chyba autorizace3254– úprava NSSETu se nezdařila4204,4220– NSSET není dostupný / úprava se nezdařila – chyba spojení4212– kontakt není dostupný – chyba spojení
Data odpovědi: Žádná – výsledek nesou přímo pole odpovědi code/msg.
Příklad:
curl -X PATCH -H 'Authorization: Bearer <TOKEN>' -H 'Content-Type: application/json' \
'https://api.wedos.com/v2/nssets/NSSET-1' \
--data '{
"tld": "cz",
"auth_info": "AUTHCODE123",
"dns": [
{ "name": "ns.wedos.com" },
{ "name": "ns.wedos.org" }
]
}'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3g6"
}
Poznámky
- Endpointy pod
/v2/domains,/v2/contactsa/v2/nssetsobsluhuje jedna společná serverová třída a všechny sdílejí jeden OAuth2 scope,domains. Z pohledu klienta jde o tři logicky oddělená, ale administrativně sjednocená API. - Parametr
dnsse zadává jako prosté pole objektů{"name": "...", "addr_ipv4": "...", "addr_ipv6": "..."}. Interně se před voláním WAPI převádí na starší formát používaný dřívějšími verzemi API. Položkyaddr_ipv4aaddr_ipv6jsou u každého serveru volitelné. - U NSSETů je
tldvždy povinný parametr, protože stejný handle (name) může teoreticky existovat u několika registrů a validace/formát údajů se liší podle TLD/registru.
