WEDOS REST API jest wciąż w fazie rozwoju. Dostęp i funkcje mogą ulec zmianie bez wcześniejszego powiadomienia.
Ten artykuł opisuje częściowo endpoint Domains WEDOS REST API. Domeny i NSSETs mają własne artykuły. Informacje o WEDOS API (WAPI) zawiera artykuł WAPI – Kontakty domen WEDOS.
Podstawowe informacje o WEDOS REST API zawiera artykuł Podręcznik WEDOS REST API.
W tym artykule znajdują się następujące informacje:
- Dostęp do endpointu DNS
- Szczegóły endpointu DNS:
- Uwagi
Dostęp do endpointu contacts
To API obejmuje zarządzanie kontaktami domen pod prefiksem /v2/contacts w adresie URL. Dla kontaktów należy zawsze podać TLD, ponieważ format i walidacja danych kontaktowych różnią się w zależności od rejestru, do którego należy dana TLD.
Podstawowy adres URL i uwierzytelnianie
Bazowy adres URL endpointów contacts to: https://api.wedos.com/v2
Cała komunikacja odbywa się przez HTTPS, a uwierzytelnianie wykorzystuje wyłącznie OAuth2: w każdym żądaniu należy wysłać nagłówek Authorization: Bearer <TOKEN> . Token musi mieć scope domains (jeden wspólny scope dla domen, kontaktów i NSSET-ów). Bez prawidłowego uwierzytelnienia API zwraca błąd.
Żądania z danymi (POST/PATCH) są wysyłane jako JSON (Content-Type: application/json).
Można dodać parametr example=1 do dowolnego endpointu (np. ?example=1, lub &example=1 jeśli adres URL zawiera już inne parametry zapytania). Zamiast wykonać żądanie, API zwraca wówczas przykładowe polecenie curl dla danego wywołania. Nawet w tym trybie wymagane jest prawidłowe uwierzytelnienie.
Przegląd endpointów
| Metoda | Endpoint | Opis |
|---|---|---|
| GET | /contacts/check | Sprawdzenie dostępności/istnienia kontaktu |
| GET | /contacts/{cname} | Informacje o kontakcie |
| POST | /contacts/create | Utworzenie nowego kontaktu |
| POST | /contacts/{cname}/transfer | Transfer kontaktu |
| POST | /contacts/{cname}/auth-info/send | Wysłanie kodu autoryzacyjnego kontaktu |
| PATCH | /contacts/{cname} | Modyfikacja kontaktu |
Format odpowiedzi
Odpowiedź API jest zawsze obiektem JSON z kluczami code (kod zwrotny), msg (opis tekstowy), request_id (identyfikator żądania) oraz, jeśli dotyczy, data (dane zwracane przy powodzeniu).
Oprócz specyficznych (biznesowych) kodów zwrotnych wymienionych niżej przy każdym wywołaniu wszystkie endpointy mogą zwrócić także te ogólne kody warstwy REST:
1000– żądanie zostało wykonane pomyślnie2000– brak lub nieprawidłowe uwierzytelnienie (token OAuth2 Bearer)2004– przekroczono maksymalny dopuszczalny rozmiar żądania (adres URL lub treść żądania)4000– nieznana/nieobsługiwana metoda lub akcja API4001– walidacja danych wejściowych nie powiodła się4005– brak zdefiniowanego przykładu dla bieżącej postaci adresu URL w trybieexample=1.6000– wewnętrzny błąd inicjalizacji przetwarzania żądania
GET /contacts/check
Sprawdza, czy handle kontaktu jest wolny do użycia i jaki ma status w rejestrze.
Parametry:
tld– wymagany, query, string – TLD, dla której sprawdzany jest kontaktcname– wymagany, query, string – handle (identyfikator) kontaktureg_key– opcjonalny, query, string – identyfikator konkretnego rejestru (jeśli TLD obsługuje kilka rejestrów/trybów)
Kody zwrotne:
1000– kontakt jest wolny i możliwy do użycia2201– nieprawidłowa TLD2216– nieprawidłowy format identyfikatora kontaktu2218– w tym rejestrze kontakty są generowane automatycznie (nie można wybrać handle)3228– rejestr nie obsługuje kontaktów3231– kontakt już istnieje3233– kontaktu nie można użyć3234– kontaktu nie można użyć – kwarantanna3235– kontaktu nie można użyć – zarezerwowany3236– kontaktu nie można użyć – zablokowany3237– kontakt jest już zarejestrowany u nas4211– sprawdzenie kontaktu nie powiodło się – błąd połączenia
Dane odpowiedzi: Brak – wynik przekazują bezpośrednio pola odpowiedzi code/msg.
Przykład:
curl -X GET -H 'Authorization: Bearer <TOKEN>' \
'https://api.wedos.com/v2/contacts/check?tld=eu&cname=CONTACT'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3f1"
}
GET /contacts/{cname}
Zwraca szczegółowe informacje o kontakcie.
Parametry:
cname– wymagany, path – handle kontaktutld– wymagany, query, string – TLD, pod którą kontakt jest wyszukiwanyauth_info– opcjonalny, query, string – kod autoryzacyjny kontaktu (jeśli zostanie podany, musi być zgodny z kodem ustawionym na obiekcie, w przeciwnym razie zwracany jest błąd)reg_key– opcjonalny, query, string – identyfikator konkretnego rejestru
Kody zwrotne:
1000– OK2201– nieprawidłowo podana TLD2216– błąd składni identyfikatora kontaktu3215– nieprawidłowy kod autoryzacyjny (podany i niezgodny)3228– rejestr nie obsługuje kontaktów3229– błąd wczytywania kontaktu3236– kontakt jest zablokowany4212– błąd połączenia5001– nikt nie jest zalogowany
Dane odpowiedzi:
contact– obiekt z danymi kontaktu:contact_id,roid,status– identyfikator, ROID i status kontaktu w rejestrzename,fname,lname,company– nazwa/imię/nazwisko lub nazwa firmyaddr_street,addr_city,addr_zip,addr_state,addr_country– adresphone,fax,email,email2– dane kontaktoweic,dic,taxpayer– numer identyfikacyjny firmy (IČ), numer podatkowy (DIČ), status płatnika VATreg_owner,reg_creator,reg_update– identyfikatory rejestratoracreated_date,updated_date,transfer_date– daty utworzenia/aktualizacji/transferudisclose– ustawienia ujawniania danych (zależnie od rejestru)other– dodatkowe dane specyficzne dla rejestru
Przykład:
curl -X GET -H 'Authorization: Bearer <TOKEN>' \
'https://api.wedos.com/v2/contacts/CONTACT?tld=eu'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3f2",
"data": {
"contact": {
"contact_id": "CONTACT",
"status": "ok",
"fname": "Esmeralda",
"lname": "Excavadora",
"company": null,
"addr_street": "Street 123",
"addr_city": "City",
"addr_zip": "11000",
"addr_country": "CZ",
"phone": "+420.777123456",
"email": "esmeralda@wedos.com",
"created_date": "2024-01-10",
"updated_date": null
}
}
}
POST /contacts/create
Tworzy nowy kontakt domenowy dla podanej TLD.
Parametry:
tld– wymagany, string – TLD, dla której tworzony jest kontaktreg_key– opcjonalny, string – identyfikator konkretnego rejestrucontact– wymagany, object – dane kontaktu; dostępne pola różnią się w zależności od rejestru, zwykle:cname(opcjonalnie) – żądany handle kontaktu; należy go pominąć w rejestrach, które generują handle automatyczniefname,lname– imię i nazwisko (dla osoby fizycznej)company– nazwa firmy (dla osoby prawnej)addr_street,addr_city,addr_zip,addr_state,addr_country– adresphone,fax,email,email2– dane kontaktoweic,dic,taxpayer– numer identyfikacyjny firmy (IČ), numer podatkowy (DIČ), status płatnika VAT- inne pozycje w zależności od konkretnego rejestru
Kody zwrotne:
1000– kontakt utworzony2100– brak wymaganego parametru2101– nieprawidłowe parametry wejściowe2201– nieprawidłowa TLD2216– nieprawidłowa nazwa kontaktu2218– w tym rejestrze nazwy kontaktów są tworzone automatycznie (nie można podać własnej)2219–2242– brak lub nieprawidłowy format poszczególnych pozycji kontaktu (firma, imię, nazwisko, e-mail, telefon, faks, numer identyfikacyjny firmy, numer podatkowy, adres, region, inne dane)3228– rejestr nie obsługuje kontaktów3230– utworzenie kontaktu nie powiodło się3231– nazwa kontaktu jest już używana3233– kontaktu nie można użyć3234– kontaktu nie można użyć – kwarantanna3236– kontaktu nie można użyć – zablokowany3237– kontakt jest już zarejestrowany u nas4211– sprawdzenie nie powiodło się – błąd komunikacji4213– utworzenie kontaktu nie powiodło się – błąd komunikacji
Dane odpowiedzi:
cname– handle utworzonego kontaktu
Przykład:
curl -X POST -H 'Authorization: Bearer <TOKEN>' -H 'Content-Type: application/json' \
'https://api.wedos.com/v2/contacts/create' \
--data '{
"tld": "eu",
"contact": {
"fname": "Esmeralda",
"lname": "Excavadora",
"addr_street": "Street 123",
"addr_city": "City",
"addr_zip": "11000",
"addr_country": "CZ",
"email": "esmeralda@wedos.com",
"phone": "+420.777123456"
}
}'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3f3",
"data": {
"cname": "CONTACT"
}
}
POST /contacts/{cname}/transfer
Przenosi kontakt do nas od innego rejestratora (tylko w rejestrach obsługujących transfer kontaktów, np. CZ.NIC).
Parametry:
cname– wymagany, path – handle kontaktutld– wymagany, string – TLDauth_info– wymagany, string – kod autoryzacyjny kontaktureg_key– opcjonalny, string – identyfikator konkretnego rejestru
Kody zwrotne:
1000– OK2100– brak wymaganego parametru2101– nieprawidłowe parametry wejściowe2201– nieprawidłowa TLD2215– parametrauth_infonie został podany2216– nieprawidłowy identyfikator kontaktu2244– ta domena/ten rejestr nie obsługuje transferu kontaktów3229– kontakt jest niedostępny3237– kontakt jest już zarejestrowany u nas3240– błąd autoryzacji3241– transfer nie powiódł się4216– transfer nie powiódł się – błąd połączenia
Dane odpowiedzi: Brak – wynik przekazują bezpośrednio pola odpowiedzi code/msg.
Przykład:
curl -X POST -H 'Authorization: Bearer <TOKEN>' -H 'Content-Type: application/json' \
'https://api.wedos.com/v2/contacts/CONTACT/transfer' \
--data '{"tld": "cz", "auth_info": "AUTHCODE123"}'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3f4"
}
POST /contacts/{cname}/auth-info/send
Wysyła kod autoryzacyjny kontaktu na jego adres e-mail.
Parametry:
cname– wymagany, path – handle kontaktutld– wymagany, string – TLDreg_key– opcjonalny, string – identyfikator konkretnego rejestru
Kody zwrotne:
1000– OK2100– brak wymaganego parametru2101– nieprawidłowe parametry wejściowe2201– nieprawidłowa TLD2216– nieprawidłowa nazwa kontaktu2243– wysłanie kodu autoryzacyjnego nie jest dozwolone dla tego kontaktu3213– kontakt jest niedostępny3215– wysłanie kodu nie powiodło się3228– rejestr nie obsługuje kontaktów4217– wysłanie nie powiodło się – błąd komunikacji5001– błąd uwierzytelnienia
Dane odpowiedzi: Brak – wynik przekazują bezpośrednio pola odpowiedzi code/msg.
Przykład:
curl -X POST -H 'Authorization: Bearer <TOKEN>' -H 'Content-Type: application/json' \
'https://api.wedos.com/v2/contacts/CONTACT/auth-info/send' \
--data '{"tld": "eu"}'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3f5"
}
PATCH /contacts/{cname}
Modyfikuje dane istniejącego kontaktu. Nie można tego użyć w rejestrach, w których kontakty nie są edytowalne (np. Ascio).
Parametry:
cname– wymagany, path – handle kontaktutld– wymagany, string – TLDauth_info– opcjonalny, string – kod autoryzacyjny kontaktucontact– wymagany, object – dane kontaktu do zmiany (te same pola co w POST /contacts/create; zmieniane są tylko podane pola)reg_key– opcjonalny, string – identyfikator konkretnego rejestru
Kody zwrotne:
1000– OK2100– brak wymaganego parametru2101– nieprawidłowe parametry wejściowe2201– nieprawidłowa TLD2207– błąd składni2216– nieprawidłowa nazwa kontaktu2219–2241– brak lub nieprawidłowy format poszczególnych zmienianych pozycji (ten sam zakres co przy tworzeniu kontaktu)3211– nie udało się wczytać kontaktu3238– błąd autoryzacji3239– modyfikacja nie powiodła się4202– kontakt niedostępny – błąd połączenia4215– wykonanie nie powiodło się – błąd połączenia
Dane odpowiedzi: Brak – wynik przekazują bezpośrednio pola odpowiedzi code/msg.
Przykład:
curl -X PATCH -H 'Authorization: Bearer <TOKEN>' -H 'Content-Type: application/json' \
'https://api.wedos.com/v2/contacts/CONTACT' \
--data '{"tld": "eu", "contact": {"email": "esmeralda-new@wedos.com"}}'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3f6"
}
Uwagi
- Endpointy pod
/v2/domains,/v2/contactsi/v2/nssetssą obsługiwane przez jedną wspólną klasę serwera i korzystają ze wspólnego scope OAuth2,domains. Z punktu widzenia klienta są to trzy logicznie odrębne, ale administracyjnie zjednoczone API. - W przypadku kontaktów parametr
tldjest zawsze wymagany, ponieważ ten sam handle (cname) może teoretycznie istnieć w kilku rejestrach, a walidacja/format danych różni się w zależności od TLD/rejestru.
