Network Programmablity with Python and Rest(JSON)


Network Programmablity with Python and Rest(JSON)

Python is a general-purpose interpreted, interactive, object-oriented, and high-level programming language. It was created by Guido van Rossum during 1985- 1990. Like Perl, Python source code is also available under the GNU General Public License (GPL). This tutorial gives enough understanding on Python programming language.

JSON is a light-weight, text-based open standard for interchanging data. JSON is human readable and language independent. It is easy for computers to read and generate JSON . JSON is used in order to send data between client and servers (Browsers/Clients to Application Servers). JSON is the abbreviation of Java Script Object Notation (derived version of it)

Target Audience

  • Network engineers
  • Field engineers
  • System engineers
  • Network designers
  • Network operations
  • Network automation engineers
  • Network programmers
  • Network developers
  • Software engineers
  • Application developers
  • Network Architect


  • You should have a basic understanding of Computer Programming terminologies.
  • A basic understanding of any of the programming languages is a plus.

Course Objectives

  • Develop network applications in programmable environments such as ONEPk and XNC
  • Develop applications to address use cases in WAN, DC, and campus environments



Course Curriculum

Section 1: Python

  • Python – Overview
  • Python – Environment Setup
  • Python – Basic Syntax
  • Python – Variable Types
  • Python – Basic Operators
  • Python – Decision Making
  • Python – Loops
  • Python – Numbers
  • Python – Strings
  • Python – Lists
  • Python – Tuples
  • Python – Dictionary
  • Python – Date & Time
  • Python – Functions
  • Python – Modules
  • Python – Files I/O
  • Python – Exceptions
  • Python – Networking
  • Python – Sending Email
  • Python – XML Processing
  • Using NAPALM Python library
  • Using Netmiko Python library
  • Using Paramiko – Python implementation of the SSHv2 protocol

Section 2: JSON

  • Introduction and Development Environment
  • Java and JSON (Data Binding)
  • JSON Java Jackson Annotations
  • JSON Java Jackson Tree Model
  • JSON Serialize and Deserialize
  • JSON Jackson Streaming API
  • JSON Schema and Validation
  • JSON Jackson and JAXB XML
  • JavaScript API JSON
  • JSON with AJAX (jQuery) and RESTful Web Services
  • Using JSON in Python