REST API – Kontakty domen

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

MetodaEndpointOpis
GET/contacts/checkSprawdzenie dostępności/istnienia kontaktu
GET/contacts/{cname}Informacje o kontakcie
POST/contacts/createUtworzenie nowego kontaktu
POST/contacts/{cname}/transferTransfer kontaktu
POST/contacts/{cname}/auth-info/sendWysł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ślnie
  • 2000 – 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 API
  • 4001 – walidacja danych wejściowych nie powiodła się
  • 4005 – brak zdefiniowanego przykładu dla bieżącej postaci adresu URL w trybie example=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 kontakt
  • cname – wymagany, query, string – handle (identyfikator) kontaktu
  • reg_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życia
  • 2201 – nieprawidłowa TLD
  • 2216 – nieprawidłowy format identyfikatora kontaktu
  • 2218 – w tym rejestrze kontakty są generowane automatycznie (nie można wybrać handle)
  • 3228 – rejestr nie obsługuje kontaktów
  • 3231 – kontakt już istnieje
  • 3233 – kontaktu nie można użyć
  • 3234 – kontaktu nie można użyć – kwarantanna
  • 3235 – kontaktu nie można użyć – zarezerwowany
  • 3236 – kontaktu nie można użyć – zablokowany
  • 3237 – kontakt jest już zarejestrowany u nas
  • 4211 – 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 kontaktu
  • tld – wymagany, query, string – TLD, pod którą kontakt jest wyszukiwany
  • auth_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 – OK
  • 2201 – nieprawidłowo podana TLD
  • 2216 – błąd składni identyfikatora kontaktu
  • 3215 – nieprawidłowy kod autoryzacyjny (podany i niezgodny)
  • 3228 – rejestr nie obsługuje kontaktów
  • 3229 – błąd wczytywania kontaktu
  • 3236 – kontakt jest zablokowany
  • 4212 – błąd połączenia
  • 5001 – nikt nie jest zalogowany

Dane odpowiedzi:

  • contact – obiekt z danymi kontaktu:
    • contact_id, roid, status – identyfikator, ROID i status kontaktu w rejestrze
    • name, fname, lname, company – nazwa/imię/nazwisko lub nazwa firmy
    • addr_street, addr_city, addr_zip, addr_state, addr_country – adres
    • phone, fax, email, email2 – dane kontaktowe
    • ic, dic, taxpayer – numer identyfikacyjny firmy (IČ), numer podatkowy (DIČ), status płatnika VAT
    • reg_owner, reg_creator, reg_update – identyfikatory rejestratora
    • created_date, updated_date, transfer_date – daty utworzenia/aktualizacji/transferu
    • disclose – 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 kontakt
  • reg_key – opcjonalny, string – identyfikator konkretnego rejestru
  • contact – 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 automatycznie
    • fname, lname – imię i nazwisko (dla osoby fizycznej)
    • company – nazwa firmy (dla osoby prawnej)
    • addr_street, addr_city, addr_zip, addr_state, addr_country – adres
    • phone, fax, email, email2 – dane kontaktowe
    • ic, 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 utworzony
  • 2100 – brak wymaganego parametru
  • 2101 – nieprawidłowe parametry wejściowe
  • 2201 – nieprawidłowa TLD
  • 2216 – nieprawidłowa nazwa kontaktu
  • 2218 – 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ów
  • 3230 – utworzenie kontaktu nie powiodło się
  • 3231 – nazwa kontaktu jest już używana
  • 3233 – kontaktu nie można użyć
  • 3234 – kontaktu nie można użyć – kwarantanna
  • 3236 – kontaktu nie można użyć – zablokowany
  • 3237 – kontakt jest już zarejestrowany u nas
  • 4211 – sprawdzenie nie powiodło się – błąd komunikacji
  • 4213 – 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 kontaktu
  • tld – wymagany, string – TLD
  • auth_info – wymagany, string – kod autoryzacyjny kontaktu
  • reg_key – opcjonalny, string – identyfikator konkretnego rejestru

Kody zwrotne:

  • 1000 – OK
  • 2100 – brak wymaganego parametru
  • 2101 – nieprawidłowe parametry wejściowe
  • 2201 – nieprawidłowa TLD
  • 2215 – parametr auth_info nie został podany
  • 2216 – nieprawidłowy identyfikator kontaktu
  • 2244 – ta domena/ten rejestr nie obsługuje transferu kontaktów
  • 3229 – kontakt jest niedostępny
  • 3237 – kontakt jest już zarejestrowany u nas
  • 3240 – błąd autoryzacji
  • 3241 – 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 kontaktu
  • tld – wymagany, string – TLD
  • reg_key – opcjonalny, string – identyfikator konkretnego rejestru

Kody zwrotne:

  • 1000 – OK
  • 2100 – brak wymaganego parametru
  • 2101 – nieprawidłowe parametry wejściowe
  • 2201 – nieprawidłowa TLD
  • 2216 – nieprawidłowa nazwa kontaktu
  • 2243 – wysłanie kodu autoryzacyjnego nie jest dozwolone dla tego kontaktu
  • 3213 – kontakt jest niedostępny
  • 3215 – wysłanie kodu nie powiodło się
  • 3228 – rejestr nie obsługuje kontaktów
  • 4217 – wysłanie nie powiodło się – błąd komunikacji
  • 5001 – 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 kontaktu
  • tld – wymagany, string – TLD
  • auth_info – opcjonalny, string – kod autoryzacyjny kontaktu
  • contact – 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 – OK
  • 2100 – brak wymaganego parametru
  • 2101 – nieprawidłowe parametry wejściowe
  • 2201 – nieprawidłowa TLD
  • 2207 – błąd składni
  • 2216 – nieprawidłowa nazwa kontaktu
  • 2219–2241 – brak lub nieprawidłowy format poszczególnych zmienianych pozycji (ten sam zakres co przy tworzeniu kontaktu)
  • 3211 – nie udało się wczytać kontaktu
  • 3238 – błąd autoryzacji
  • 3239 – modyfikacja nie powiodła się
  • 4202 – kontakt niedostępny – błąd połączenia
  • 4215 – 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/contacts i /v2/nssets są 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 tld jest 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.

Czy to było pomocne?

Dziękujemy za opinię!
Selektory ogólne
Tylko dokładne dopasowania
Szukaj w tytule
Szukaj w treści
Selektory typów wpisów