Understanding Salt API
We've spent some time looking at how to send requests, but many users would argue that receiving requests is just as important, if not more so. Let's take a moment to understand Salt API.
What is Salt API?
Very simply, Salt API is a REST interface wrapped around Salt. But that doesn't tell the whole story. The salt command is really just a command-line interface for Salt. In fact, each of the other Salt commands (salt-call
, salt-cloud
, and so on) are really just a way to access various parts of Salt from the command line.
Salt API provides a way to access Salt from a different interface: HTTP (or, preferably, HTTPS). Because web protocols are so ubiquitous, Salt API allows software, written in any language that has the capability of interacting with web servers, to take advantage of it.
Setting up Salt API
So far this book has assumed that you have a copy of Salt installed, with both a Master and a Minion service running. But we're going to take a moment...