HomeGuidesAPI Reference
GuidesAPI ReferenceGitHubAirheads Developer CommunityLog In

Getting Started with NAPALM

Most large networks are a mix of several different vendors for switches and routers, each with their own mix of operating systems. Often this leads users to juggle and debate over which set of applications, automation tools, and proprietary protocols between each of the different vendors platforms. The NAPALM library was created to solve this problem by creating an abstraction layer between the vendors, enabling a unified programming interface for the various operating systems.

Introduction to NAPALM

NAPALM is an acronym for Network Automation and Programmability Abstraction Layer with Multi-vendor support. It is an open source Python library that implements a set of functions to interact with different network device Operating Systems using a unified API.

This allows for a vendor agnostic automation solution that can interface with multiple 3rd parties.


Aruba's NAPALM drivers are powered by the AOS-CX Python SDK and the open REST API's that are built in to every AOS-CX device. For more information on the AOS-CX Python modules, take a look at our Python section here.

NAPALM Core vs Community

The NAPALM Core drivers are those that are automatically installed when you install NAPALM. These are approved by the NAPALM Core Developers team and these drivers have documentation and support on their main NAPALM page.

The NAPALM Community drivers are those developed outside of the NAPALM Core Developers team, and are submitted and maintained by the community. These must be installed separately from the NAPALM Core, like a plugin for the base NAPALM framework. Each NAPALM community driver is maintained under its own repository.

Users can download the AOS-CX NAPALM Community drivers located on their GitHub: