Integrace s ISPmanager
NexDNS je plně kompatibilní s API DNSmanager, takže NexDNS můžete připojit k ISPmanager jako sekundární (slave) DNS server. ISPmanager zůstává primární a poté, co povolíte přenos zóny (AXFR) ze zdrojové IP adresy NexDNS, přenáší každou zónu do NexDNS, takže záznamy nadále spravujete v ISPmanager. Kompletní API DNSmanager pro domény a záznamy je rovněž k dispozici k přímému použití prostřednictvím jednoho kompatibilního endpointu.
Koncový bod
Všechna volání kompatibilního API jsou směrována přes jeden endpoint:
https://api.nexdns.tech/dnsmgr
Autentizace
Kompatibilní API se autentizuje pomocí vyhrazeného integračního přihlašovacího jména a tajného klíče, které si vygenerujete v NexDNS v sekci Účet → Integrace (nikoli heslo vašeho účtu). ISPmanager je odesílá s každým požadavkem; relaci můžete také otevřít ručně pomocí funkce func=auth a vrácený token znovu použít.
curl -X POST "https://api.nexdns.tech/dnsmgr?func=auth" \
-d "username=your_integration_login" \
-d "password=your_integration_secret"
Úspěšná odpověď (XML):
<doc><auth id="SESSION_ID"/></doc>
Výstup ve formátu JSON si můžete vyžádat přidáním out=json k jakémukoli požadavku. Opakovaně neúspěšná přihlášení jsou dočasně omezována.
Podporované funkce
Kompatibilní API směruje operace na základě parametru dotazu func:
| Funkce | Popis |
|---|---|
auth |
Otevření relace pomocí integračního přihlašovacího jména a tajného klíče |
domain |
Výpis všech domén autentizovaného účtu |
domain.edit |
Vytvoření nebo aktualizace domény (s sok=ok); když ISPmanager odešle IP adresu svého primárního serveru, NexDNS vytvoří sekundární zónu, která se přenáší z ISPmanager. Bez sok vrací informace o doméně |
domain.delete |
Smazání domény (předejte elid=domain.name) |
domain.refresh |
Vynutí okamžité opětovné přenesení sekundární zóny z ISPmanager (předejte elid=domain.name). ISPmanager toto volá po změně záznamů |
domain.record |
Výpis záznamů pro doménu (předejte elid=domain.name) |
domain.record.edit |
Vytvoření nebo aktualizace záznamu (s sok=ok) |
domain.record.delete |
Smazání záznamu (předejte elid a rkey) |
dnsparam |
Získání konfigurace nameserverů pro váš účet |
slaveserver |
Výpis nameserverů přiřazených k vašim zónám |
Připojení ISPmanager k NexDNS
Chcete-li připojit ISPmanager k NexDNS:
- Zaregistrujte si účet NexDNS na nexdns.tech a zvolte tarif, který zahrnuje integraci s ISPmanager a sekundární DNS.
- Nastavte integraci v NexDNS: otevřete Účet → Integrace, klikněte na Vygenerovat tajný klíč a poté zapněte přístup pro ISPmanager (ve výchozím nastavení vypnuto). Tento kanál obchází dvoufaktorové ověření, proto jej volitelně omezte na pevnou IP adresu.
- V ISPmanager přidejte NexDNS jako sekundární (slave) DNS server pro vaše domény (Doménová jména → sekundární nameservery).
-
Zadejte údaje pro připojení:
- Adresa URL:
https://api.nexdns.tech/dnsmgr - Přihlašovací jméno: vaše integrační přihlašovací jméno z Účet → Integrace
- Tajný klíč: váš integrační tajný klíč
- Adresa URL:
- Povolte přenos zóny (AXFR): na svém primárním DNS serveru povolte přenos zóny ze zdrojové IP adresy NexDNS uvedené v sekci Účet → Integrace. Bez toho ISPmanager sekundární zónu vytvoří, ale zůstane prázdná.
ISPmanager zůstává primárním serverem a záznamy spravujete dál v něm; NexDNS stahuje každou zónu jako sekundární přes AXFR. Jednorázový krok na vaší straně: na svém primárním DNS serveru povolte přenos zóny (AXFR) ze zdrojové IP adresy NexDNS uvedené v sekci Účet → Integrace, jinak zůstanou zóny prázdné. Ověřování používá přihlašovací jméno a tajný klíč integrace z Účet → Integrace; ujistěte se, že je přístup ISPmanageru povolen a váš tarif zahrnuje sekundární DNS.
Parametry záznamů
Při vytváření nebo aktualizaci záznamů prostřednictvím domain.record.edit se v závislosti na typu záznamu používají následující parametry:
| 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 |
Pro aktualizace předejte rkey s ID existujícího záznamu. Vynechejte rkey (nebo odešlete prázdné) pro vytvoření nového záznamu.
Výstupní formát
Ve výchozím nastavení jsou všechny odpovědi vráceny jako XML. Přidejte out=json k jakémukoli požadavku pro příjem odpovědí ve formátu JSON.
Správa API klíčů
API klíče slouží k autentizaci požadavků na NexDNS REST API. Každý klíč má definovaná oprávnění a volitelně datum expirace.
Vytvoření API klíče
API klíče můžete vytvořit dvěma způsoby:
- Panel UI: Přejděte na Nastavení > API klíče a klikněte na "Vytvořit API klíč"
- REST API:
POST /v1/account/api-keys(vyžaduje existující API klíč)
Formát klíče
API klíče mají formát nxd_ následovaný 40 náhodnými alfanumerickými znaky. Úplný klíč je zobrazen pouze jednou při vytvoření. NexDNS ukládá pouze hashovanou podobu klíče, takže ho nelze obnovit v případě ztráty.
nxd_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789abcd
Oprávnění
Každému API klíči musí být přiřazeno alespoň jedno oprávnění. Dostupná oprávnění:
| Oprávnění | Umožňuje přístup k |
|---|---|
zones.read |
Výpis zón, zobrazení detailů zón, export zón, zobrazení stavu DNSSEC |
zones.write |
Vytváření zón, mazání zón, aktivace/deaktivace DNSSEC |
records.read |
Výpis záznamů, zobrazení jednotlivých záznamů |
records.write |
Vytváření, aktualizace a mazání záznamů |
webhooks.read |
Výpis a zobrazení webhooků |
webhooks.write |
Vytváření, aktualizace a mazání webhooků |
Doporučujeme každému klíči udělit pouze oprávnění, která potřebuje.
Expirace
API klíče mohou mít volitelně datum expirace. Pokud je nastaveno, klíč přestane fungovat po zadaném datu (kontrolováno o půlnoci UTC). Prošlé klíče vrací odpověď 401 Unauthorized.
Zneplatnění klíče
Jakýkoli API klíč můžete kdykoli zneplatnit ze stránky Nastavení nebo prostřednictvím API. Zneplatnění je okamžité a trvalé – klíč je smazán, nikoli deaktivován.
curl -X DELETE "https://api.nexdns.tech/v1/account/api-keys/{id}" \
-H "Authorization: Bearer nxd_your_api_key"
Požadavky na tarif
Přístup k API vyžaduje tarif předplatného, který zahrnuje funkci api_access.
Omezení počtu požadavků
NexDNS API vynucuje omezení počtu požadavků pro zajištění spravedlivého využívání a stability služby. Limity jsou uplatňovány na uživatelský účet (nikoli na API klíč), takže použití více API klíčů váš limit nezvyšuje.
Limity
| Rozsah | Limit požadavků | Okno | Politika |
|---|---|---|---|
| API požadavky | 60 |
1 minuta | Posuvné okno |
Neautentizované požadavky (nebo požadavky s neplatnými klíči) jsou omezovány podle IP adresy.
Hlavičky omezení počtu požadavků
Každá odpověď API obsahuje hlavičky udávající aktuální stav vašeho limitu požadavků:
| Hlavička | Popis |
|---|---|
X-RateLimit-Limit |
Maximální počet požadavků povolených v okně |
X-RateLimit-Remaining |
Počet zbývajících požadavků v aktuálním okně |
X-RateLimit-Reset |
Unix timestamp, kdy se okno limitu požadavků resetuje |
Retry-After |
Počet sekund čekání před dalším pokusem (přítomno pouze u odpovědí 429) |
Překročení limitu
Při překročení limitu požadavků API vrací 429 Too Many Requests:
{
"status": "error",
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests. Please retry after {timestamp}."
}
}