CCNA Automation (200-901)
Cisco's automation certification. Separate from the regular CCNA (200-301): adds Python, REST APIs, Cisco platform SDKs, Ansible, Git, CI/CD and application deployment. Each topic has an in-browser lab you run yourself: no install, no cloud account, no network required.
Exam blueprint (200-901)
The six official domains. Domain 6 (Network Fundamentals) overlaps with CCNA 200-301, so those topics live in the CCNA library instead of being duplicated here.
Software Development and Design
Data types, control flow, Python basics, version control, software design patterns.
Understanding and Using APIs
REST, HTTP status codes, authentication, pagination, rate limits, webhooks.
Cisco Platforms and Development
Cisco IOS-XE RESTCONF/NETCONF, Meraki Dashboard API, Webex, DNA Center.
Application Deployment and Security
Docker basics, CI/CD, the 12-factor app, secret management.
Infrastructure and Automation
Ansible, Terraform, YANG, model-driven telemetry, controller-based automation.
Network Fundamentals
Overlaps with 200-301. Fully covered via the Network Fundamentals bridge below.
CCNA Automation topics
Topics written specifically for 200-901 depth, grouped the way the course is taught. Each topic has a short mental-model section followed by a browser-based lab.
Git & Version Control
2 topics- Foundational #75
Git Basics for Network Engineers
The four Git commands network engineers use every day: init, add, commit, log. Pairs with a dedicated in-browser lab you can run in five minutes, no install needed.
- Foundational #76
Git Branches, Merge and Conflicts for Network Engineers
A branch is a parallel universe. This topic covers clone, branch, switch, merge, handling conflicts and diff: everything in Cisco's 1.8 Git objectives, in plain English with a browser lab.
Data Formats & Python
6 topics- Foundational #78
Data Formats for Automation: JSON, YAML, XML
The three data formats you will see every day in network automation: JSON (APIs), YAML (configs and Ansible), XML (NETCONF). Same data in all three with a side-by-side comparison and a hands-on parse lab in Python.
- Foundational #79
Parsing JSON and YAML in Python
Deep-dive on parsing JSON and YAML into Python data structures: the exact functions, how dicts and lists map to the source text, and the common parse errors network engineers hit.
- Foundational #80
Python: Functions, Classes and Modules
The three building blocks every Python network script grows into: functions (reusable blocks), classes (grouped state and behavior), modules (grouped files). When to use each, with a Cisco-flavored example of each.
- Foundational #83
Software Development Methods: Agile, Lean, Waterfall
The three software development methods you need to compare for CCNA Automation 200-901 objective 1.4: waterfall (plan everything first), agile (iterate in sprints), lean (ship, measure, learn). Side-by-side table.
- Foundational #82
Test-Driven Development (TDD) Basics
What test-driven development actually is in plain English: write the test first, watch it fail, write just enough code to pass, refactor. Why it saves time on network automation scripts.
- Foundational #84
Design Patterns: MVC and Observer
Two software design patterns in Cisco CCNAAUTO 200-901 objective 1.6: MVC (Model-View-Controller) separates data, display and logic. Observer lets one thing subscribe to events from another.
HTTP & REST APIs
8 topics- Foundational #85
HTTP Essentials: Methods, Status Codes, Headers, Body
The HTTP you need before touching any REST API: four methods (GET POST PUT DELETE), five status code families (1xx 2xx 3xx 4xx 5xx), request/response headers, bodies. Each explained in plain English with a curl lab.
- Foundational #86
Walkthrough: Building a REST API Request from the Docs
The exact process network engineers follow to turn API docs into a working REST call. Read the method, URL, auth, query params, body. Try it with curl. Fix 4xx. Ship a working script.
- Foundational #87
Python requests: Your First REST Script
The Python requests library covers 95% of what network engineers need to call REST APIs: GET, POST, auth, JSON, status checks. 20 lines of code and you are done.
- Foundational #88
REST API Authentication: Basic, Token, API Key, Bearer
The four auth styles you see on every Cisco API: HTTP Basic (user:pass), API key (custom header), bearer token (OAuth2 style), custom token. When to use each, with curl and Python requests examples.
- Foundational #89
REST vs RPC, Synchronous vs Asynchronous
The four API styles Cisco objective 2.8 asks you to compare: REST and RPC on the request/response shape axis, synchronous and asynchronous on the when-does-the-answer-arrive axis.
- Foundational #90
API Constraints: Rate Limits, Pagination, Size, Auth
The four real-world constraints every REST API imposes on you: rate limits (429), pagination (limit/offset or cursors), payload size, and auth. How each shows up and how to handle them in code.
- Foundational #91
Webhooks Explained
A webhook is the server calling YOUR URL when an event happens, instead of you polling. The pattern, the subscription step, the payload shape, verification, retries — in plain English with a Cisco Webex example.
- Foundational #92
Troubleshoot REST APIs: Reading the Error
The decision tree for every bad REST response: start at the status code, read the body, check the request shape, isolate with curl. Covers Cisco CCNAAUTO 2.5.
Cisco Platforms (map)
5 topics- Foundational #100
Cisco DevNet Resources You Actually Need
The DevNet corners worth your time for CCNA Automation: Sandbox (free Catalyst Center / Meraki / Webex to call), Code Exchange (ready scripts), Learning Labs, API docs. What each one is for.
- Foundational #101
Cisco Network Management Platforms: Meraki, Catalyst Center, ACI, Catalyst SD-WAN, NSO
The five Cisco network management platforms you compare on CCNA Automation 200-901 3.2: Meraki Dashboard, Catalyst Center, ACI APIC, Catalyst SD-WAN vManage, and NSO. Who runs each, what their API is like, and when you pick which.
- Foundational #102
Cisco Compute Platforms: UCS Manager and Intersight
The two Cisco compute management platforms on CCNA Automation 200-901 3.3: UCS Manager (per-domain, on-prem) and Intersight (cloud, cross-domain). What each manages, how the API is shaped, and when you pick which.
- Foundational #103
Cisco Collaboration APIs: Webex, Devices, CUCM AXL and UDS
The Cisco collaboration APIs on CCNAAUTO 200-901 3.4: Webex (REST + webhooks), Webex Devices (xAPI over WebSocket or SSH), CUCM with AXL (SOAP) and UDS (REST). What each is, and when you reach for which.
- Foundational #104
Cisco Security Platforms: XDR, Firepower, Secure Connect, Secure Endpoint, ISE, SMA
The six Cisco security platforms on CCNAAUTO 200-901 3.5 (v1.1): Cisco XDR, Firepower (now Secure Firewall), Secure Connect, Secure Endpoint, ISE, Secure Malware Analytics. What each does and how its API is shaped.
Device APIs & SDKs
3 topics- Foundational #105
IOS XE and NX-OS Device APIs
The programmable interfaces on Cisco Catalyst (IOS XE) and Nexus (NX-OS) switches. NETCONF and RESTCONF on both. gNMI for streaming telemetry. NX-API as the NX-OS legacy.
- Foundational #106
YANG, RESTCONF and NETCONF in Practice
The three-layer stack that lets any Cisco (and any vendor) device be managed through a common data model. YANG describes the data; NETCONF and RESTCONF are two transports to read and write it.
- Foundational #107
Writing a Script with a Cisco SDK
A Cisco Python SDK is a wrapper around the vendor's REST API. Less typing, fewer gotchas. The 4-line pattern that works across Meraki, Webex, Intersight, Catalyst Center SDKs.
Platforms hands-on
6 topics- Foundational #108
Meraki Dashboard API: Your First Script
The simplest Cisco cloud API to script against. List organisations, list networks, list clients on a device, create a network. One header, one URL, one line of Python.
- Foundational #109
Webex Messages API: Spaces, Participants, Messages
Three Webex REST endpoints get you from zero to a working bot: /rooms, /memberships, /messages. Bearer auth. 10 lines of Python with the webexteamssdk.
- Foundational #160
Catalyst Center API: Token Auth, GET Devices, GET Clients
The Catalyst Center (ex-DNA Center) REST API in the shape 200-901 asks about: get a token, GET /network-device, GET /client-detail. The exact calls for 3.9.a and 3.9.c on this platform.
- Foundational #161
Cisco ACI API Basics: Login, Class Query, Managed Objects
The ACI REST API in exam shape: login with aaaLogin to get a cookie, then class-level queries like /api/node/class/fvTenant.json. Covers 3.9.a for ACI.
- Foundational #162
Catalyst SD-WAN API: Login, CSRF, GET Devices
The Catalyst SD-WAN (ex-Viptela) vManage REST API in exam shape: login + CSRF token, then GET /dataservice/device for the fleet. Covers 3.9.a for Catalyst SD-WAN.
- Foundational #163
Cisco NSO RESTCONF: Devices and Services
Cisco NSO exposes RESTCONF for scripts: list managed devices, trigger sync-from, drive services. The API shape for CCNAAUTO 200-901 3.9.a (NSO branch).
Deployment, Containers, Security
12 topics- Foundational #110
Edge Computing: Benefits for Network Engineers
Edge computing moves compute closer to where data is generated: branches, factories, retail stores, cell towers. Lower latency, less backhaul, local resilience. Four benefits network engineers notice.
- Foundational #111
Cloud Deployment Models: Private, Public, Hybrid, Edge
The four app deployment models you compare for CCNAAUTO 200-901 4.2. Where each runs, who owns it, when to pick which.
- Foundational #112
VMs vs Bare Metal vs Containers
The three deployment types on CCNAAUTO 200-901 4.3: bare metal (one OS on the hardware), VMs (many OSes on one hardware via a hypervisor), containers (many isolated processes on one OS). Trade-offs in one table.
- Foundational #113
CI/CD Pipeline Components
The five stages every CI/CD pipeline has: source, build, test, deploy, verify. What runs in each, where network engineers hook in, and what a GitHub Actions YAML looks like.
- Foundational #114
Python Unit Tests with pytest
The minimum pytest to pass CCNAAUTO 200-901 4.5 and write useful tests for network scripts. Six-line test, assert, parametrize, fixtures. Run with pytest -q and read the output.
- Foundational #115
Dockerfile Explained Line by Line
Every Dockerfile instruction you need for CCNAAUTO 200-901 4.6: FROM, WORKDIR, COPY, RUN, EXPOSE, ENV, CMD and ENTRYPOINT. A tiny Python app in one Dockerfile, line by line.
- Foundational #116
Docker: Pull, Run, Manage Images and Containers
The 7 docker commands you use every day: pull, images, run, ps, logs, exec, rm. The difference between an image and a container, and the common flags you need.
- Foundational #117
Application Security: Secrets, Encryption, Data Handling
Three application-security topics the CCNAAUTO 200-901 4.8 exam asks you to describe: protecting secrets (API keys, tokens), encryption at rest and in transit, and data handling practices.
- Foundational #118
Firewall, DNS, Load Balancer, Reverse Proxy in App Deployment
The four network pieces that sit in front of every public application: firewall (filter), DNS (resolve), load balancer (spread), reverse proxy (terminate TLS, route by URL). What each does and in what order the request hits them.
- Foundational #119
OWASP Top Threats for Network Engineers
The three OWASP threats called out in CCNAAUTO 200-901 4.10: XSS (code injected into pages), SQLi (code injected into database queries), CSRF (tricking a user's browser into making a request). Plain English with examples.
- Foundational #120
Bash for Network Engineers
The bash commands network engineers use every day: pwd, ls, cd, mkdir, rm, cp, mv, cat, echo, grep, wc, export, env. Each in one line, with an in-browser lab.
- Foundational #121
DevOps Principles
The five DevOps principles the CCNAAUTO 200-901 4.12 exam asks you to describe: culture, automation, measurement, sharing, lean. What each looks like in a real engineering team.
IaC & reading automation
12 topics- Foundational #130
Infrastructure as Code (IaC) Principles
What IaC actually means for a network team: write the desired state in files, store in Git, let a tool make it so. Idempotency, declarative vs imperative, version control, review workflow.
- Foundational #131
Model-Driven Programmability: Why It Matters
Model-driven programmability means every device exposes the same YANG-shaped data over NETCONF, RESTCONF, or gNMI. One schema, three transports. Why Cisco cares and what it unlocks.
- Foundational #132
Controller vs Device-Level Management
The two models for managing a network: controller-based (talk to one brain for the whole fabric) and device-level (talk to each device directly). Trade-offs, examples, when to pick which.
- Foundational #133
Network Simulation and Test Tools: CML and pyATS
The two Cisco test tools in CCNAAUTO 200-901 5.3: Cisco Modeling Labs (CML) runs real IOS XE / NX-OS images as a virtual lab; pyATS runs automated tests against real or virtual devices.
- Foundational #134
Automation Tools: Ansible, Terraform, Cisco NSO
The three automation tools the v1.1 CCNAAUTO 200-901 5.6 blueprint names: Ansible (agentless, imperative-ish, YAML), Terraform (declarative, cloud + Cisco providers), Cisco NSO (model-driven, cross-vendor services).
- Foundational #135
Reading a Python Automation Script
The CCNAAUTO 200-901 5.7 skill: given a 30-line Python script using Cisco APIs, identify what workflow it automates. Pattern recognition for ACI / Meraki / Catalyst Center / RESTCONF scripts.
- Foundational #136
Reading an Ansible Playbook
The CCNAAUTO 200-901 5.8 skill: given an Ansible playbook, name the workflow being automated. Hosts, tasks, module names tell you everything you need.
- Foundational #137
Interpreting RESTCONF and NETCONF Output
The CCNAAUTO 200-901 5.10 skill: read a RESTCONF JSON response or a NETCONF XML reply and name the fields. The pattern is always YANG module name, then container, then list keyed by name.
- Foundational #138
Interpreting Basic YANG Models
The YANG terminology you need to read a model: module, container, list, leaf, leaf-list, key, type. 20 minutes of reading and you can answer every CCNAAUTO 200-901 5.11 question.
- Foundational #139
Reading a Unified Diff
Unified diff is the output of `diff -u`, `git diff` and most code-review tools. Four symbols, three fields in the header. Once you know them you can read any diff in seconds.
- Foundational #140
Code Review Process: Principles and Benefits
The CCNAAUTO 200-901 5.13 topic: why code review exists, what good review looks like, the mechanics of a pull request. Catches bugs, spreads knowledge, documents decisions.
- Foundational #141
Reading API Sequence Diagrams
The CCNAAUTO 200-901 5.14 skill: a sequence diagram shows actors + ordered messages between them. Read top to bottom; each arrow is one API call.
Network fundamentals for devs
3 topics- Foundational #150
Network Constraints and How They Impact Applications
The four network properties that make or break an application: latency, bandwidth, jitter, loss. What each means, how it is measured, and which apps feel it most.
- Foundational #151
Diagnosing Application Connectivity Issues
The four classic causes of 'the app cannot reach the server' from CCNAAUTO 200-901 6.8: NAT problem, transport port blocked, proxy misconfig, VPN. A diagnostic flow for each.
- Foundational #152
Management, Data, and Control Planes in a Network Device
The CCNAAUTO 200-901 6.5 model: every network device has three logical planes. Management (SSH, SNMP, NETCONF — you talk to it). Control (routing protocols — devices talk to each other). Data (actual packets forwarded).
Shared with CCNA (do these first)
These topics are part of the CCNA (200-301) Automation & Programmability domain. Rather than duplicate them, we link into the CCNA library. CCNA Automation goes deeper on each one, with its own labs under CCNA Automation topics above.
- Python for Network Engineers In CCNA library
- REST APIs for Network Engineers In CCNA library
- JSON, YAML & XML for Network Engineers In CCNA library
- Ansible for Network Engineers In CCNA library
- NETCONF & YANG In CCNA library
- NETCONF and RESTCONF: Model-Driven Network APIs In CCNA library
- gRPC & gNMI: Streaming Telemetry In CCNA library
- Cisco DNA Center / Catalyst Center In CCNA library
Network Fundamentals bridge (Domain 6.0, 15%)
Domain 6.0 overlaps heavily with CCNA 200-301. Instead of duplicating, every 6.x objective below links to the CCNA topic (or topics) that covers it. Objectives 6.5, 6.8 and 6.9 have CCNA Automation-specific topics written with the automation-engineer lens.
- 6.1 Purpose and usage of MAC addresses and VLANs
- 6.2 IP addresses, routes, subnet mask / prefix, gateways
- 6.3 Function of switches, routers, firewalls, load balancers
Load balancer + reverse-proxy angle is in the CCNA Automation companion topic above
- 6.4 Interpret a basic network topology diagram
Topology-reading is implicit across every CCNA topic
- 6.5 Management, data, and control planes
- 6.6 IP services: DHCP, DNS, NAT, SNMP, NTP
- 6.7 Common protocol port values (SSH, Telnet, HTTP, HTTPS, NETCONF)
- 6.8 Diagnose app connectivity issues (NAT, port blocked, proxy, VPN)
- 6.9 Impacts of network constraints on applications
With Domain 6.0 bridged, every single CCNAAUTO 200-901 objective in all six domains is covered on this site: 57 CCNA Automation-specific topics, 8 shared basics from CCNA, and 9 Network Fundamentals cross-links.
Prefer 1:1 mentorship over self-study?
Twelve weeks, 24 live 1:1 classes, same-business-day async support, a shippable portfolio automation project, two timed mock exams, pass-or-keep-going. Same price as our CCNA mentorship.
