ExperTeach Networking Logo

Application Programmable Interfaces (API)

Programming Interfaces to Networks

ExperTeach Networking Logo

Automation and programming are increasingly being used to control and monitor networks. This results in the desire for high-performance interfaces to routers and switches. Most well-known manufacturers have taken this into account by allowing access to the operating systems of their devices via an Application Programmable Interface (API). These interfaces have proven themselves in software development and are now also being used in networks. Compared to the classic access methods via the CLI or SNMP, modern APIs offer access to full functionality that is optimized for other applications. An API is therefore also ideally suited for the use of centralized control in SDN. This training is designed to create a basic understanding of how an API works and how to access it, which will be clarified and deepened through hands-on exercises and demonstrations. Furthermore, useful applications of APIs for network control will be discussed and illustrated with practical examples.

Course Contents

  • Data structures and their representation
  • Basics of APIs
  • API types
  • Programming APIs
  • Accessing APIs
  • REST API
  • NETCONF and RESTCONF
  • Use Cases for APIs
  • Use of APIs with SDN
  • Automation and Orchestration
  • APIs at Cisco and Juniper
  • Practical demonstrations and exercises

Print E-Book PDF Symbol You will receive the comprehensive documentation package of the ExperTeach Networking series – printed documentation, e-book, and personalized PDF! As online participant, you will receive the e-book and the personalized PDF.

Target Group

The training is aimed at planners and administrators who want to learn about the possibilities of new types of APIs in the network, as well as the structure of an API and how to access an API. Those who need to be able to distinguish the potential of an API from classical methods and to use common tools to access an API without programming knowledge will find what they are looking for in this course.

Knowledge Prerequisites

Previous knowledge of configuring and operating networks is desirable for successful participation. Programming knowledge is not absolutely necessary.

1 Introduction to the topic
1.1 M2M interface
1.2 Classic network administration
1.2.1 SNMP
1.2.2 Logging messages
1.2.3 HP OpenView
1.2.4 Cisco Prime
1.2.5 Cisco Data Center Network Manager-LAN (DCNM-LAN)
1.3 Programming networks
1.3.1 Programs on the router
1.3.2 Use of an external server
1.3.3 Definition of SDN
1.4 What is an API
1.4.1 Abstraction
1.4.2 Interfaces to software processes
1.4.3 The API in networks
2 Data structures and data models
2.1 Introduction
2.1.1 Modeling of a data structure
2.1.2 Data Tree
2.1.3 CRUD
2.2 Data Serialization and Character Sets
2.2.1 XML
2.2.2 JSON
2.2.3 YAML
2.2.4 Protocol Buffers
2.2.5 Character Sets
2.2.6 XML Schema Definition
2.3 YANG
2.3.1 Modules and submodules
2.3.2 Containers
2.3.3 RPC
2.3.4 Conversion to XML
2.3.5 Example: YANG model of a route
2.3.6 Simplified representation of the schema tree
2.3.7 Storage for YANG models
2.3.8 Standardization of YANG models
2.3.9 YIN
2.4 Libraries
2.4.1 Library types
2.4.2 SDKs
3 Protocols
3.1 Remote Procedure Call
3.1.1 RPC CALL
3.1.2 XML-RPC
3.1.3 gRPC
3.2 NETCONF
3.2.1 Protocol stack
3.2.2 Remote Procedure Call
3.2.3 Subtree Filtering
3.2.4 NETCONF operations
3.2.5 Capability Advertisement
3.3 RESTCONF
3.3.1 Format of api-path
3.3.2 RESTCONF operations
3.3.3 RESTCONF capabilities
3.3.4 YANG Library
3.4 REST API
3.4.1 RESTful API
3.4.2 HTTP message construction
3.4.3 Generic description of a REST API
3.4.4 Idempotency
3.4.5 Nested resource expansion
3.4.6 Authentication
3.4.7 Content negotiation
3.4.8 Alternatives to REST
4 API Tools and Use Cases
4.1 Use of an API
4.1.1 API documentation
4.1.2 Effect of path length
4.1.3 Automatic generation with Swagger
4.2 API tools and software
4.2.1 cURL
4.2.2 pyang
4.2.3 ncclient
4.2.4 REST in Python - requests
4.2.5 XML/JSON parsing
4.2.6 Postman
4.2.7 YANG Explorer
4.3 APIs of network components
4.3.1 API infrastructure of the NX-OS
4.3.2 JUNOS
4.3.3 Check Point
4.4 SDN
4.4.1 Controller architecture
4.4.2 OpenDaylight
4.4.3 ONOS Controller
4.4.4 DNA Center API
4.5 APIs and Data Models in Orchestration
4.5.1 Network Services Orchestrator
4.5.2 Puppet and Chef
4.5.3 Ansible
4.5.4 ONAP
4.5.5 TOSCA
4.5.6 HOT (OpenStack)
4.5.7 Comparison of different types of orchestration.
4.6 Further applications of APIs
4.6.1 APIs in the ETSI Model
4.6.2 Model Driven Telemetry
4.6.3 CPE Autoconfiguration
4.6.4 WebEX Teams API Overview

Classroom training

Do you prefer the classic training method? A course in one of our Training Centers, with a competent trainer and the direct exchange between all course participants? Then you should book one of our classroom training dates!

Hybrid training

Hybrid training means that online participants can additionally attend a classroom course. The dynamics of a real seminar are maintained, and the online participants are able to benefit from that. Online participants of a hybrid course use a collaboration platform, such as WebEx Training Center or Saba Meeting. To do this, a PC with browser and Internet access is required, as well as a headset and ideally a Web cam. In the seminar room, we use specially developed and customized audio- and video-technologies. This makes sure that the communication between all persons involved works in a convenient and fault-free way.

Online training

You wish to attend a course in online mode? We offer you online course dates for this course topic. To attend these seminars, you need to have a PC with Internet access (minimum data rate 1Mbps), a headset when working via VoIP and optionally a camera. For further information and technical recommendations, please refer to.

Tailor-made courses

You need a special course for your team? In addition to our standard offer, we will also support you in creating your customized courses, which precisely meet your individual demands. We will be glad to consult you and create an individual offer for you.
Request for customized courses
PDF SymbolYou can find the complete description of this course with dates and prices ready for download at as PDF.

Automation and programming are increasingly being used to control and monitor networks. This results in the desire for high-performance interfaces to routers and switches. Most well-known manufacturers have taken this into account by allowing access to the operating systems of their devices via an Application Programmable Interface (API). These interfaces have proven themselves in software development and are now also being used in networks. Compared to the classic access methods via the CLI or SNMP, modern APIs offer access to full functionality that is optimized for other applications. An API is therefore also ideally suited for the use of centralized control in SDN. This training is designed to create a basic understanding of how an API works and how to access it, which will be clarified and deepened through hands-on exercises and demonstrations. Furthermore, useful applications of APIs for network control will be discussed and illustrated with practical examples.

Course Contents

  • Data structures and their representation
  • Basics of APIs
  • API types
  • Programming APIs
  • Accessing APIs
  • REST API
  • NETCONF and RESTCONF
  • Use Cases for APIs
  • Use of APIs with SDN
  • Automation and Orchestration
  • APIs at Cisco and Juniper
  • Practical demonstrations and exercises

Print E-Book PDF Symbol You will receive the comprehensive documentation package of the ExperTeach Networking series – printed documentation, e-book, and personalized PDF! As online participant, you will receive the e-book and the personalized PDF.

Target Group

The training is aimed at planners and administrators who want to learn about the possibilities of new types of APIs in the network, as well as the structure of an API and how to access an API. Those who need to be able to distinguish the potential of an API from classical methods and to use common tools to access an API without programming knowledge will find what they are looking for in this course.

Knowledge Prerequisites

Previous knowledge of configuring and operating networks is desirable for successful participation. Programming knowledge is not absolutely necessary.

1 Introduction to the topic
1.1 M2M interface
1.2 Classic network administration
1.2.1 SNMP
1.2.2 Logging messages
1.2.3 HP OpenView
1.2.4 Cisco Prime
1.2.5 Cisco Data Center Network Manager-LAN (DCNM-LAN)
1.3 Programming networks
1.3.1 Programs on the router
1.3.2 Use of an external server
1.3.3 Definition of SDN
1.4 What is an API
1.4.1 Abstraction
1.4.2 Interfaces to software processes
1.4.3 The API in networks
2 Data structures and data models
2.1 Introduction
2.1.1 Modeling of a data structure
2.1.2 Data Tree
2.1.3 CRUD
2.2 Data Serialization and Character Sets
2.2.1 XML
2.2.2 JSON
2.2.3 YAML
2.2.4 Protocol Buffers
2.2.5 Character Sets
2.2.6 XML Schema Definition
2.3 YANG
2.3.1 Modules and submodules
2.3.2 Containers
2.3.3 RPC
2.3.4 Conversion to XML
2.3.5 Example: YANG model of a route
2.3.6 Simplified representation of the schema tree
2.3.7 Storage for YANG models
2.3.8 Standardization of YANG models
2.3.9 YIN
2.4 Libraries
2.4.1 Library types
2.4.2 SDKs
3 Protocols
3.1 Remote Procedure Call
3.1.1 RPC CALL
3.1.2 XML-RPC
3.1.3 gRPC
3.2 NETCONF
3.2.1 Protocol stack
3.2.2 Remote Procedure Call
3.2.3 Subtree Filtering
3.2.4 NETCONF operations
3.2.5 Capability Advertisement
3.3 RESTCONF
3.3.1 Format of api-path
3.3.2 RESTCONF operations
3.3.3 RESTCONF capabilities
3.3.4 YANG Library
3.4 REST API
3.4.1 RESTful API
3.4.2 HTTP message construction
3.4.3 Generic description of a REST API
3.4.4 Idempotency
3.4.5 Nested resource expansion
3.4.6 Authentication
3.4.7 Content negotiation
3.4.8 Alternatives to REST
4 API Tools and Use Cases
4.1 Use of an API
4.1.1 API documentation
4.1.2 Effect of path length
4.1.3 Automatic generation with Swagger
4.2 API tools and software
4.2.1 cURL
4.2.2 pyang
4.2.3 ncclient
4.2.4 REST in Python - requests
4.2.5 XML/JSON parsing
4.2.6 Postman
4.2.7 YANG Explorer
4.3 APIs of network components
4.3.1 API infrastructure of the NX-OS
4.3.2 JUNOS
4.3.3 Check Point
4.4 SDN
4.4.1 Controller architecture
4.4.2 OpenDaylight
4.4.3 ONOS Controller
4.4.4 DNA Center API
4.5 APIs and Data Models in Orchestration
4.5.1 Network Services Orchestrator
4.5.2 Puppet and Chef
4.5.3 Ansible
4.5.4 ONAP
4.5.5 TOSCA
4.5.6 HOT (OpenStack)
4.5.7 Comparison of different types of orchestration.
4.6 Further applications of APIs
4.6.1 APIs in the ETSI Model
4.6.2 Model Driven Telemetry
4.6.3 CPE Autoconfiguration
4.6.4 WebEX Teams API Overview

Classroom training

Do you prefer the classic training method? A course in one of our Training Centers, with a competent trainer and the direct exchange between all course participants? Then you should book one of our classroom training dates!

Hybrid training

Hybrid training means that online participants can additionally attend a classroom course. The dynamics of a real seminar are maintained, and the online participants are able to benefit from that. Online participants of a hybrid course use a collaboration platform, such as WebEx Training Center or Saba Meeting. To do this, a PC with browser and Internet access is required, as well as a headset and ideally a Web cam. In the seminar room, we use specially developed and customized audio- and video-technologies. This makes sure that the communication between all persons involved works in a convenient and fault-free way.

Online training

You wish to attend a course in online mode? We offer you online course dates for this course topic. To attend these seminars, you need to have a PC with Internet access (minimum data rate 1Mbps), a headset when working via VoIP and optionally a camera. For further information and technical recommendations, please refer to.

Tailor-made courses

You need a special course for your team? In addition to our standard offer, we will also support you in creating your customized courses, which precisely meet your individual demands. We will be glad to consult you and create an individual offer for you.
Request for customized courses

PDF SymbolYou can find the complete description of this course with dates and prices ready for download at as PDF.