Clone this wiki locally
Octopus Deploy is a user-friendly automated deployment tool for .NET developers. This GitHub repository exists to provide documentation for the Octopus Deploy HTTP API.
Applies to Octopus Deploy 2.x and above
In Octopus Deploy 2.0, we made a lot of improvements to the API. While many of the concepts are the same and should be easy to migrate, it is important to note that the Octopus 1.x and Octopus 2.x+ APIs are not compatible.
Over time supporting customers we have been building up a series of samples using the Octopus API for different purposes. Take a look at the code in this repository for samples in different languages.
The Octopus Deploy API is available at:
You'll need an API key to access the API. You can get your API key from your profile page on the Octopus web portal. This should be sent in the
X-Octopus-ApiKey HTTP header, or in an
apikey query string parameter. Learn more about authenticating.
You can browse the API of our demo server by signing in as a Guest:
Use your developer tools
The best way to learn how to use the Octopus API is to watch how Octopus actually uses the API. Use your browser developer tool of choice and record the HTTP traffic between the Octopus UI and Server whilst performing an action you want to automate. This way you'll see the interaction between Octopus resources and the flow required to automate any Octopus activity!
When building this new API, we worked with the following goals in mind:
- To be friendly and easy to figure out
- To be hypermedia driven, using links and the occasional URI template (read more)
- To have the HTML user interface for Octopus consume the API - this means that anything you can do via the application can also be done via the API
- To have a nice client library for .NET available via NuGet
Use the sidebar on the right to learn more about what the Octopus Deploy API supports.