skillfed

yang.connector

YANG defined interface API protocol connector

yang-connector v26.7 266.2K downloads/30d#8,306 on PyPI22
Permissive license Apache 2.0 Active released

What it is and what it does

yang.connector is a NETCONF and gRPC/GNMI client library for Cisco's pyATS test automation framework. It abstracts the complexity of connecting to network devices that expose YANG data models, allowing you to send configuration commands, retrieve operational state, and automate network testing workflows. The package wraps lower-level libraries like ncclient (for NETCONF) and grpcio (for gRPC) to provide a unified interface aligned with pyATS conventions.

The library is intended for network engineers and test automation developers who need to programmatically interact with Cisco devices or other NETCONF/GNMI-capable equipment. It handles the protocol-level details of SSH tunneling, XML parsing (via lxml), and gRPC serialization (via protobuf), so you focus on the test logic rather than connection management.

Use it for:

  • Automate NETCONF configuration changes on network devices as part of a pyATS test suite
  • Retrieve operational state and configuration snapshots from YANG-modeled devices for validation
  • Build gRPC/GNMI clients to interact with modern Cisco devices supporting telemetry
  • Integrate network device connectivity into CI/CD pipelines for infrastructure testing
  • Compare before-and-after configurations during network automation workflows

Worth the install?

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

Provides NETCONF and gRPC/GNMI client implementations for connecting to network devices and managing YANG-modeled configurations, designed for integration with Cisco pyATS test automation.

Yes, if you are working with Cisco pyATS or need to automate NETCONF/GNMI interactions with network devices. The package is actively maintained, has no known vulnerabilities, and integrates well with the pyATS ecosystem. Install it only if you have NETCONF or gRPC-capable devices to connect to; it is not useful as a standalone utility.

Install

yang-connector on PyPI

pip

pip install yang-connector

uv

uv add yang-connector

poetry

poetry add yang-connector

Installing yang.connector

Before you install

Low friction installation with a pure-Python wheel. Active maintenance with a release within the last week. Five runtime dependencies (paramiko, lxml, ncclient, grpcio, protobuf) are all established libraries, though grpcio and protobuf add some weight to the dependency tree.

License in practice

Apache 2.0 is permissive; you can use this package commercially and modify it freely, with the main obligation being to retain license and copyright notices.

Quickstart

pip install yang.connector

from yang.connector import NetconfClient
client = NetconfClient(host='device_ip', username='user', password='pass')
client.connect()

Requires network connectivity to a NETCONF-enabled device; paramiko and ncclient must be able to establish SSH connections.

Verify before relying

  • Whether the package supports Python versions beyond 3.4 (classifier lists 3.4, but requires_python is unspecified)
  • Exact API surface and method signatures for NetconfClient and GNMI client classes
  • Whether gRPC/GNMI support is fully implemented or still in development

Package facts

License Apache 2.0 (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 5 — paramiko, lxml, ncclient, grpcio, protobuf
Maintenance actively maintained — 7 days since the last release
Last repo commit
First released
Downloads 266,166/month — #8,306 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: yang_connector-26.7-py3-none-any.whl

Keywords: pyats, cisco-shared

Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersIntended Audience :: Telecommunications IndustryLicense :: OSI Approved :: Apache Software LicenseOperating System :: OS IndependentOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.4Topic :: Software Development :: Testing

Tags

netconf client librarygnmi grpc network deviceyang configuration managementnetwork device connectorcisco pyats integrationnetconf config automationyang data model interface
network-automationcisco-pyatsnetconf-gnmi

More Testing packages