Przejdź do głównej treści

Integracje

Integracja z ISPmanager

NexDNS jest w pełni kompatybilny z API DNSmanager, dzięki czemu możesz podłączyć NexDNS do ISPmanager jako pomocniczy (slave) serwer DNS. ISPmanager pozostaje serwerem podstawowym i, gdy zezwolisz na transfer strefy (AXFR) z adresu IP źródłowego NexDNS, przesyła każdą strefę do NexDNS, więc nadal zarządzasz rekordami w ISPmanager. Pełne API domen i rekordów DNSmanager jest również dostępne do bezpośredniego użycia przez pojedynczy endpoint kompatybilności.

Punkt końcowy (endpoint)

Wszystkie wywołania API kompatybilności są kierowane przez pojedynczy endpoint:

https://api.nexdns.tech/dnsmgr

Autoryzacja

API kompatybilności uwierzytelnia się za pomocą dedykowanego loginu i sekretu integracji, które generujesz w NexDNS w sekcji Konto → Integracje (a nie hasłem do konta). ISPmanager wysyła je przy każdym zapytaniu; możesz też otworzyć sesję ręcznie funkcją func=auth i ponownie użyć zwróconego tokenu.

curl -X POST "https://api.nexdns.tech/dnsmgr?func=auth" \
    -d "username=your_integration_login" \
    -d "password=your_integration_secret"

Pomyślna odpowiedź (XML):

<doc><auth id="SESSION_ID"/></doc>

Możesz zażądać formatu wyjściowego JSON, dodając out=json do dowolnego zapytania. Powtarzające się nieudane próby logowania są tymczasowo ograniczane.

Obsługiwane funkcje

API kompatybilności kieruje operacje na podstawie parametru zapytania func:

Funkcja Opis
auth Otwórz sesję za pomocą loginu i sekretu integracji
domain Wyświetl wszystkie domeny uwierzytelnionego konta
domain.edit Utwórz lub zaktualizuj domenę (z sok=ok); gdy ISPmanager wyśle adres IP swojego serwera podstawowego, NexDNS tworzy strefę pomocniczą przesyłaną z ISPmanager. Bez sok zwraca informacje o domenie
domain.delete Usuń domenę (przekaż elid=nazwa.domeny)
domain.refresh Wymuś natychmiastowe ponowne przesłanie strefy pomocniczej z ISPmanager (przekaż elid=nazwa.domeny). ISPmanager wywołuje to po zmianie rekordów
domain.record Wyświetl rekordy domeny (przekaż elid=nazwa.domeny)
domain.record.edit Utwórz lub zaktualizuj rekord (z sok=ok)
domain.record.delete Usuń rekord (przekaż elid i rkey)
dnsparam Pobierz konfigurację serwerów nazw dla Twojego konta
slaveserver Wyświetl serwery nazw przypisane do Twoich stref

Podłączanie ISPmanager do NexDNS

Aby połączyć ISPmanager z NexDNS:

  1. Zarejestruj konto NexDNS na nexdns.tech i wybierz plan obejmujący integrację z ISPmanager oraz pomocniczy DNS.
  2. Skonfiguruj integrację w NexDNS: otwórz Konto → Integracje, kliknij Wygeneruj sekret, a następnie włącz dostęp ISPmanager (domyślnie wyłączony). Ten kanał pomija uwierzytelnianie dwuskładnikowe, więc opcjonalnie ogranicz go do stałego adresu IP.
  3. W ISPmanager dodaj NexDNS jako pomocniczy (slave) serwer DNS dla swoich domen (Nazwy domen → pomocnicze serwery nazw).
  4. Wprowadź dane połączenia:
    • Adres URL: https://api.nexdns.tech/dnsmgr
    • Login: Twój login integracji z sekcji Konto → Integracje
    • Sekret: Twój sekret integracji
  5. Zezwól na transfer strefy (AXFR): na swoim podstawowym serwerze DNS zezwól na transfer strefy z adresu IP źródłowego NexDNS pokazanego w sekcji Konto → Integracje. Bez tego ISPmanager utworzy strefę podrzędną, ale pozostanie ona pusta.

ISPmanager pozostaje serwerem podstawowym i nadal zarządzasz rekordami w nim; NexDNS pobiera każdą strefę jako podrzędną przez AXFR. Jednorazowy krok po Twojej stronie: na swoim podstawowym serwerze DNS zezwól na transfer strefy (AXFR) z adresu IP źródłowego NexDNS pokazanego w sekcji Konto → Integracje, w przeciwnym razie strefy pozostaną puste. Uwierzytelnianie używa loginu i sekretu integracji z Konto → Integracje; upewnij się, że dostęp ISPmanager jest włączony, a Twój plan obejmuje DNS podrzędny.

Parametry rekordów

Podczas tworzenia lub aktualizacji rekordów za pomocą domain.record.edit używane są następujące parametry w zależności od typu rekordu:

Typ Parametry
A / AAAA name, ip (or value), ttl
CNAME / NS / PTR name, value, ttl
MX name, value, priority, ttl
SRV name, value, priority, weight, port, ttl
TXT name, value, ttl
CAA name, caa_value (or value), flag, tag, ttl

Przy aktualizacji przekaż rkey z istniejącym ID rekordu. Pomiń rkey (lub wyślij pusty), aby utworzyć nowy rekord.

Format wyjściowy

Domyślnie wszystkie odpowiedzi są zwracane jako XML. Dodaj out=json do dowolnego zapytania, aby otrzymać odpowiedzi JSON.

Zarządzanie kluczami API

Klucze API służą do autoryzacji zapytań do REST API NexDNS. Każdy klucz ma określony zakres uprawnień i może opcjonalnie mieć datę wygaśnięcia.

Tworzenie klucza API

Klucze API można tworzyć na dwa sposoby:

  • Interfejs panelu: Przejdź do Ustawienia > Klucze API i kliknij „Utwórz klucz API"
  • REST API: POST /v1/account/api-keys (wymaga istniejącego klucza API)

Format klucza

Klucze API mają format nxd_ po którym następuje 40 losowych znaków alfanumerycznych. Pełny klucz jest wyświetlany tylko raz podczas tworzenia. NexDNS przechowuje wyłącznie zahaszowaną postać klucza, więc nie można go odzyskać w razie utraty.

nxd_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789abcd

Uprawnienia

Każdy klucz API musi mieć przypisane co najmniej jedno uprawnienie. Dostępne uprawnienia:

Uprawnienie Zapewnia dostęp do
zones.read Wyświetlanie stref, szczegółów stref, eksport stref, status DNSSEC
zones.write Tworzenie stref, usuwanie stref, włączanie/wyłączanie DNSSEC
records.read Wyświetlanie rekordów, podgląd poszczególnych rekordów
records.write Tworzenie, aktualizowanie i usuwanie rekordów
webhooks.read Wyświetlanie i podgląd webhooków
webhooks.write Tworzenie, aktualizowanie i usuwanie webhooków

Zalecamy nadawanie każdemu kluczowi tylko tych uprawnień, których potrzebuje.

Wygaśnięcie

Klucze API mogą opcjonalnie mieć datę wygaśnięcia. Po ustawionej dacie klucz przestanie działać (sprawdzane o północy UTC). Wygasłe klucze zwracają odpowiedź 401 Unauthorized.

Unieważnianie klucza

Możesz unieważnić dowolny klucz API w dowolnym momencie ze strony Ustawień lub za pomocą API. Unieważnienie jest natychmiastowe i trwałe – klucz jest usuwany, a nie dezaktywowany.

curl -X DELETE "https://api.nexdns.tech/v1/account/api-keys/{id}" \
    -H "Authorization: Bearer nxd_your_api_key"

Wymagania planu

Dostęp do API jest możliwy w planie Pro i wyższych.

Limit zapytań

API NexDNS egzekwuje limity zapytań, aby zapewnić sprawiedliwe użytkowanie i stabilność usługi. Limity zapytań są stosowane na konto użytkownika (nie na klucz API), więc używanie wielu kluczy API nie zwiększa limitu.

Limity

Zakres Wartość limitu Okno Polityka
Zapytania API Zależnie od planu – patrz porównanie planów 1 minuta Okno przesuwne

Nieuwierzytelnione zapytania (lub zapytania z nieprawidłowymi kluczami) mają limit zapytań oparty na adresie IP.

Nagłówki limitów zapytań

Każda odpowiedź API zawiera nagłówki wskazujące bieżący status limitów zapytań:

Nagłówek Opis
X-RateLimit-Limit Maksymalna liczba zapytań dozwolonych w oknie
X-RateLimit-Remaining Liczba pozostałych zapytań w bieżącym oknie
X-RateLimit-Reset Znacznik czasu Unix, kiedy okno limitu zapytań zostanie zresetowane
Retry-After Sekundy do odczekania przed ponowną próbą (obecny tylko w odpowiedziach 429)

Przekroczenie limitu

Po przekroczeniu limitu zapytań API zwraca 429 Too Many Requests:

{
    "status": "error",
    "error": {
        "code": "rate_limit_exceeded",
        "message": "Too many requests. Please retry after {timestamp}."
    }
}

Używamy cookies, aby zapewnić prawidłowe działanie tej strony i poprawić Twoje doświadczenia. Niektóre cookies są ściśle niezbędne do działania strony, a inne są opcjonalne.

Możesz zaakceptować wszystkie cookies lub ograniczyć wybór do ściśle niezbędnych. Szczegóły znajdziesz w naszej Polityka prywatności i Polityka cookies.