If you’ve dipped your toes into network automation, you’ve probably come across RESTCONF—Cisco’s go-to interface for managing network devices using HTTP and YANG models. But here’s the catch: RESTCONF doesn’t speak the full HTTP language—just a very specific dialect.
Let’s take a look at which HTTP operations make the cut in the RESTCONF world, and how they translate into network management magic.
First, What Is RESTCONF?
Think of RESTCONF as a bridge between modern RESTful APIs and structured configuration data defined by YANG models. It lets you query and manipulate the configuration and operational data of network devices in a structured, programmable way.
RESTCONF uses standard HTTP methods to perform operations like reading or modifying configurations—kind of like using HTTP verbs to have a conversation with your routers and switches.
The Valid Verbs: What RESTCONF Understands
Among all the potential HTTP methods, RESTCONF officially supports these:
- GET: For retrieving information (config, state, etc.). It’s your go-to when you want to see what’s going on.
- HEAD: Similar to GET but only returns metadata (headers)—great for checking if a resource exists without downloading the full payload.
- POST: Used to create new resources.
- PUT: Used to replace a resource entirely.
- PATCH: Used to modify an existing resource partially.
- DELETE: Removes a resource.
So yes, GET and HEAD are valid RESTCONF operations—and common tools in real-world automation scripts.
What’s Not Valid?
Now, for those tempting options:
- REMOVE, PULL, ADD, and PUSH are not HTTP operations, so RESTCONF doesn’t recognize them.
You’ll often see folks new to RESTCONF (or automation in general) try using terms like “PUSH config” or “ADD interface,” but those are conceptual, not actual methods. RESTCONF speaks in standard HTTP terms—it’s structured, not conversational.
Real-World RESTCONF in Action
Imagine you’re managing a fleet of routers and want to audit interface status:
GET /restconf/data/ietf-interfaces:interfaces/interface=GigabitEthernet1
Or maybe you want to check if a configuration exists before updating it:
HEAD /restconf/data/native/interface/GigabitEthernet1
Tools like Postman or automation frameworks like Ansible can fire these RESTCONF calls with precision.
Wrap-Up
RESTCONF is all about controlled, structured communication between automation tools and network devices. And like any precise conversation, it only understands certain words—GET and HEAD being two of them.
Speak its language, and your network becomes not just manageable, but programmable.