openapi: 3.1.0 info: title: Octopus Deploy REST API description: | The Octopus Deploy REST API exposes 100% of the operations available in the Octopus UI for managing projects, environments, deployment targets, releases, runbooks, and more. Responses are hypermedia driven, so clients can navigate from the `/api` root. Endpoint scaffold derived from https://octopus.com/docs/octopus-rest-api and its getting-started guide. version: "1.0" contact: name: Octopus Deploy Documentation url: https://octopus.com/docs/octopus-rest-api servers: - url: https://your-octopus-instance/api description: Self-hosted or Cloud Octopus instance security: - ApiKeyAuth: [] - OidcAuth: [] tags: - name: Root - name: Spaces - name: Projects - name: Environments - name: Machines - name: Accounts - name: Feeds paths: /: get: tags: [Root] summary: Retrieve the API root resource description: Returns the hypermedia document containing links to top-level resources. responses: '200': description: The root API document with links. /Spaces-1/projects: get: tags: [Projects] summary: List projects in the default space responses: '200': description: A paged list of projects. /Spaces-1/environments: get: tags: [Environments] summary: List environments in the default space responses: '200': description: A paged list of environments. /Spaces-1/machines: get: tags: [Machines] summary: List deployment targets in the default space responses: '200': description: A paged list of machines (deployment targets). /Spaces-1/accounts: get: tags: [Accounts] summary: List accounts in the default space responses: '200': description: A paged list of accounts. /feeds: get: tags: [Feeds] summary: List package feeds responses: '200': description: A paged list of feeds. components: securitySchemes: ApiKeyAuth: type: apiKey in: header name: X-Octopus-ApiKey description: | Preferred authentication mechanism. Generate an API key from your Octopus user profile. The key may also be supplied as the `apikey` query parameter for simple cases. OidcAuth: type: oauth2 description: | Authenticate by exchanging an OpenID Connect identity token from a trusted external system (for example GitHub Actions) for a short-lived Octopus access token. flows: clientCredentials: tokenUrl: https://your-octopus-instance/api/oidc/token scopes: {}