Introduction to Cisco ACI Programmability
This introduction to Application Centric Infrastructure (ACI) provides an overview of the ACI
platform, its APIs, and its SDKs. You'll also learn how
information is organized in the ACI Object Model and how
to interact programmatically with Object Model using the
APIs and SDKs. You can use our hands-on examples to learn
how to make a basic API call to the ACI Always-On Sandbox
with Postman, the ACI Toolkit, and the Cobra SDK.
If you are completely new to programming and REST APIs, be
sure to check out the Prerequisites labs first. If you're
ready to dive into ACI, start with the Understanding ACI labs.
What is ACI?
Cisco ACI is the industry leading SDN solution that provides policy driven automation through
an integrated underlay and overlay, is hypervisor agnostic; and extends policy automation to any
workload-including virtual machines, physical bare-metal servers, and containers.
Components include:
- Application Policy Infrastructure Controller (APIC) - unified point of automation and management for the Cisco ACI fabric, policy enforcement, and health monitoring.
- Cisco ACI Multi-Site Orchestrator - manage intersite policies for all the Cisco ACI fabrics interconnected in the Cisco Multi-Site architecture.
- ACI App Center - A platform for data center innovation! Extend your reach by developing SDN apps on Cisco's open, extensible and programmable ACI network.
- Cisco ACI Programmability with Object-Oriented Data Model, REST APIs and SDKs.
Get hands-on
Get to know the ACI API
Cisco enables complete programmatic access to interface with, program, and automate the Application Policy Infrastructure Controller (APIC). There are several open source tools and frameworks that can be used, including the ACI toolkit, the Cobra SDK (Python), pyaci (python), ACIrb (Ruby), Puppet, and Ansible.
To jump right in and start making ACI REST API calls, follow the lab below. This lab uses Postman, an application used by developers worldwide to make REST API calls. You'll learn how to authenticate against the APIC and perform some basic tasks programmatically.
Once you feel comfortable, you can continue on to other labs, each of which focus on a new toolkit, SDK, or configuration management platform. You'll also learn more about the ACI object model and the API hierarchy, enabling you to start you ACI automation journey, regardless of your preferred tool or language.
To jump right in and start making ACI REST API calls, follow the lab below. This lab uses Postman, an application used by developers worldwide to make REST API calls. You'll learn how to authenticate against the APIC and perform some basic tasks programmatically.
Once you feel comfortable, you can continue on to other labs, each of which focus on a new toolkit, SDK, or configuration management platform. You'll also learn more about the ACI object model and the API hierarchy, enabling you to start you ACI automation journey, regardless of your preferred tool or language.
Be sure to complete the following steps before beginning this lesson.
-
Clone, branch, commit... We aren’t talking about your family tree. Learn how to use git to download, edit and revise source code!
-
Basic data types, variables, conditionals and functions - we’ll teach you the building blocks on which all great apps are built.
-
Python is an awesome “batteries included” programming language. Learn about a few of Python’s powerful built-in container data types and how to use loops to get your computer to do repetitious work for you.
-
A look at REpresntational State Transfer (REST) and a REST API overview.
Understanding ACI
Explore more ACI resources
ACI Learning Labs
Start here to discover self-paced developer tutorials for Cisco ACI. Use this learning track to create and link network elements programmatically in ACI.
ACI Learning Labs
ACI Sandboxes
Choose a development environment to design, develop, and test. Use a sandbox to follow along with the Learning Labs.
ACI Sandboxes
ACI Code Exchange
Check out ACI tools, sample code, SDKs, and more on GitHub to jump start your development.
ACI Code Exchange

Learn to develop with Meraki
with easy-to-follow tutorials by Cisco experts
Log in to get immediate access to:
- Abundant learning content
- Always-on sandboxes
- Expert support