skillfed

nextdns

Python wrapper for NextDNS API.

nextdns v5.0.1 74.3K downloads/30d#14,850 on PyPI11
Permissive license Apache-2.0 Active released

What it is and what it does

nextdns is an async Python client for the NextDNS API that lets you programmatically access DNS profiles and analytics from a NextDNS account. It wraps the NextDNS service's HTTP endpoints using aiohttp for async I/O and tenacity for resilient retries, exposing methods to fetch profile details, DNS security analytics (DNSSEC, encryption), IP version breakdowns, and protocol statistics.

The package is designed for integration into monitoring tools, dashboards, or automation scripts that need to pull DNS analytics data from NextDNS. It requires an active NextDNS account and API key, and enforces Python 3.13 or later. The async-first design makes it suitable for concurrent requests or event-driven applications, though the small dependency footprint keeps installation overhead minimal.

Use it for:

  • Monitor DNS security metrics and encryption status across multiple NextDNS profiles in a dashboard or alerting system.
  • Automate DNS analytics collection for reporting or compliance audits tied to a NextDNS account.
  • Build a Python-based DNS monitoring bot that periodically fetches profile status and protocol statistics.
  • Integrate NextDNS analytics into a larger async application or microservice that manages network infrastructure.
  • Retrieve and analyze DNS query protocol distribution (DoH, DoT, etc.) across your NextDNS deployment.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Async Python wrapper for the NextDNS API that retrieves DNS profiles, analytics data, and status information from a NextDNS account.

Yes, if you need programmatic access to NextDNS analytics and profiles. The package is actively maintained, has low install friction, permissive licensing, and no known vulnerabilities. The Python 3.13+ requirement is strict but aligns with modern practice. Install it if you're building monitoring or automation around NextDNS; skip it if you only need the web dashboard or don't have a NextDNS account.

Install

nextdns on PyPI

pip

pip install nextdns

uv

uv add nextdns

poetry

poetry add nextdns

Installing nextdns

Before you install

Low install friction with only two runtime dependencies (aiohttp and tenacity). Actively maintained with a recent release 56 days ago and current commits. Requires Python 3.13 or later, which narrows compatibility to modern versions only.

License in practice

Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions—suitable for most projects.

Quickstart

pip install nextdns

from aiohttp import ClientSession
from nextdns import NextDns

async with ClientSession() as session:
    nextdns = await NextDns.create(session, API_KEY)
    profile = await nextdns.get_profile(profile_id)

Requires a NextDNS account and API key; Python 3.13 or later.

Verify before relying

  • Whether the package supports DNS query filtering, blocking, or configuration beyond read-only analytics retrieval.
  • Rate limiting behavior and retry strategy details beyond tenacity dependency.
  • Whether analytics endpoints cover all NextDNS metrics or a subset.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.13)
Install friction low — pure-Python wheel
Runtime dependencies 2 — aiohttp, tenacity
Maintenance actively maintained — 56 days since the last release
Last repo commit
First released
Downloads 74,318/month — #14,850 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: nextdns-5.0.1-py3-none-any.whl

Development Status :: 5 - Production/StableOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.13Programming Language :: Python :: 3.14Typing :: Typed

Tags

nextdns api clientdns analytics pythonnextdns profile managementasync dns api wrappernextdns python librarydns status monitoringnextdns integration
dns-monitoringasync-api-client

More Internet packages