Mist API Introduction

From the beginning Mist has been a 100% API company.  The API contains a set of tools known as endpoints for building software and applications that communicate with the Mist cloud.  The Dashboard API is a modern, RESTful API using HTTPS requests to a URL and JSON as a human-readable format. The API is available to any customer with a Mist account and is very well documented.

Verbs in the API follow the usual REST conventions:

  • GET returns the value of a resource or a list of resources, depending on whether an identifier is specified.
    • GET /api/v1/orgs/:org_id/site

      returns a list of sites belonging to the organization (:org_id)

    • GET /api/v1/sites/:site_id

      returns a particular site (:site_id)

  • POST will overwrite all existing values with the payload (revert omitted fields)
  • PUT will modify all specified values in the payload (leaves the omitted fields intact)
  • DELETE removes a resource.

GET & PUT will be the most useful as you get started.

If you are logged into your Mist account you can open a new tab and enter

https://api.mist.com/api/v1/docs/Home

and you should see this:

And if you take a look at the overview:

At a high level Mist lets customers create Organizations that contain a group of sites.  The API documentation is designed around this.

Rate Limit

The current rate limiting is 5000 API calls per hour and is reset at the hourly boundary. If you need more, please contact our support about your use case. It is possible that there are other APIs that can better serve you or new APIs we could have created to do what you’re trying to do.

NOTE: /api/v1/login is rate-limited much sooner (after 3 login failures) to prevent brute-force attack