Aquanode Deployments API

The Deployments API from Aquanode — 7 operation(s) for deployments.

GitHub OpenAPI

Operations 7

GET /deployments List deployments #
GET /deployments/{deploymentId} Get deployment details #
POST /deployments/deploy Create deployment #
POST /deployments/up Rent the cheapest matching GPU #
GET /deployments/{deploymentId}/status Get deployment status #
POST /deployments/close Close deployment #
GET /deployments/analytics Get deployment analytics #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/aquanode-io:aquanode-io-deployments-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

aquanode-io-deployments-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.0.0
  title: Aquanode Orchestrator Deployments API
  description: API documentation for the Aquanode deployment orchestrator.
servers:
- url: /api/v1
tags:
- name: Deployments
paths:
  /deployments:
    get:
      summary: List deployments
      description: Retrieves all deployments for the current team, with optional filtering.
      tags:
      - Deployments
      security:
      - BearerAuth: []
      parameters:
      - schema:
          type:
          - string
          - 'null'
          enum:
          - VMS
          - DOCKER_IMAGE
          - null
        required: false
        name: type
        in: query
      - schema:
          type: string
          enum:
          - akash
          - voltagepark
          - datacrunch
          - hotaisle
          - vastai
          - massecompute
          - cudocompute
          - hyperstack
          - vultr
          - simplepod
          - runpod
          - nebius
          - jarvislabs
          - aws
        required: false
        name: provider
        in: query
      - schema:
          type: boolean
        required: false
        name: sortByTime
        in: query
      responses:
        '200':
          description: Deployments retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data:
                    type: array
                    items: {}
                  message:
                    type: string
                    example: Operation successful
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.218Z'
                required:
                - success
                - data
                - timestamp
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Error message
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.218Z'
                required:
                - success
                - error
                - timestamp
      operationId: getDeployments
      x-operation-id-source: derived
  /deployments/{deploymentId}:
    get:
      summary: Get deployment details
      description: Retrieves detailed information about a specific deployment.
      tags:
      - Deployments
      security:
      - BearerAuth: []
      parameters:
      - schema:
          type: string
        required: true
        name: deploymentId
        in: path
      responses:
        '200':
          description: Deployment details retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data: {}
                  message:
                    type: string
                    example: Operation successful
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.218Z'
                required:
                - success
                - timestamp
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Error message
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.218Z'
                required:
                - success
                - error
                - timestamp
        '404':
          description: Deployment not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Error message
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.218Z'
                required:
                - success
                - error
                - timestamp
      operationId: getDeploymentsByDeploymentId
      x-operation-id-source: derived
  /deployments/deploy:
    post:
      summary: Create deployment
      description: Triggers the creation of a new deployment based on the provided configuration.
      tags:
      - Deployments
      security:
      - BearerAuth: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateDeployment'
      responses:
        '200':
          description: Deployment triggered successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data: {}
                  message:
                    type: string
                    example: Operation successful
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - timestamp
        '400':
          description: Invalid request data
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Error message
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - error
                - timestamp
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Error message
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - error
                - timestamp
      operationId: postDeploymentsDeploy
      x-operation-id-source: derived
  /deployments/up:
    post:
      summary: Rent the cheapest matching GPU
      description: Rents the cheapest GPU matching the optional filters and brings up a box, with an optional template, in one call. Bills the team. Needs an API key with the deploy or full scope.
      tags:
      - Deployments
      security:
      - BearerAuth: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpDeployment'
      responses:
        '200':
          description: Deployment triggered successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data: {}
                  message:
                    type: string
                    example: Operation successful
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - timestamp
        '400':
          description: Invalid request data
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Error message
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - error
                - timestamp
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Error message
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - error
                - timestamp
        '403':
          description: API key lacks the deploy scope
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Error message
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - error
                - timestamp
      operationId: postDeploymentsUp
      x-operation-id-source: derived
  /deployments/{deploymentId}/status:
    get:
      summary: Get deployment status
      description: Status of a deployment with its job information and, for a live VM, the on-box agent status.
      tags:
      - Deployments
      security:
      - BearerAuth: []
      parameters:
      - schema:
          type: string
        required: true
        name: deploymentId
        in: path
      responses:
        '200':
          description: Deployment status retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data: {}
                  message:
                    type: string
                    example: Operation successful
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - timestamp
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Error message
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - error
                - timestamp
        '404':
          description: Deployment not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Error message
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - error
                - timestamp
      operationId: getDeploymentsByDeploymentIdStatus
      x-operation-id-source: derived
  /deployments/close:
    post:
      summary: Close deployment
      description: Closes an active deployment.
      tags:
      - Deployments
      security:
      - BearerAuth: []
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                deploymentId:
                  type: integer
              required:
              - deploymentId
      responses:
        '200':
          description: Deployment closed successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data: {}
                  message:
                    type: string
                    example: Operation successful
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - timestamp
        '400':
          description: Invalid request data
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Error message
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - error
                - timestamp
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Error message
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - error
                - timestamp
      operationId: postDeploymentsClose
      x-operation-id-source: derived
  /deployments/analytics:
    get:
      summary: Get deployment analytics
      description: Retrieves analytics and usage data for all team deployments.
      tags:
      - Deployments
      security:
      - BearerAuth: []
      responses:
        '200':
          description: Analytics retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data: {}
                  message:
                    type: string
                    example: Operation successful
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - timestamp
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Error message
                  timestamp:
                    type: string
                    example: '2026-11-09T19:02:47.219Z'
                required:
                - success
                - error
                - timestamp
      operationId: getDeploymentsAnalytics
      x-operation-id-source: derived
components:
  schemas:
    ServiceConfig:
      allOf:
      - oneOf:
        - type: object
          properties:
            type:
              type: string
              enum:
              - VMS
            vmSlug:
              type: string
            template:
              type: string
              enum:
              - comfyui
              - torch_and_jupyter
            env:
              type: array
              items:
                type: string
            sshKeyId:
              type: string
              minLength: 1
            sshPassword:
              type: string
            snapshotterConfig:
              type: string
              default: aquanode
            setupScript:
              type: string
            firewallRules:
              type: array
              items:
                type: string
            post_deployment:
              type: object
              properties:
                startup_script_id:
                  type: string
                restore_from_deployment:
                  type: string
                enable_metrics:
                  type: boolean
                enable_backups:
                  type: boolean
                attach_workspace:
                  type: string
                attach_model:
                  type: object
                  properties:
                    source:
                      type: string
                      enum:
                      - huggingface
                    repoId:
                      type: string
                      minLength: 1
                    revision:
                      type: string
                      minLength: 1
                    placement:
                      type: string
                      enum:
                      - hf_cache
                      - comfyui_dir
                      default: hf_cache
                    comfyuiDir:
                      type: string
                      minLength: 1
                    hfToken:
                      type: string
                      minLength: 1
                  required:
                  - source
                  - repoId
          required:
          - type
          - vmSlug
          - sshKeyId
        - type: object
          properties:
            logsStorageConfig:
              type: string
            type:
              type: string
              enum:
              - DOCKER_IMAGE
            image:
              type: string
            tag:
              type: string
              default: latest
            command:
              type: array
              items:
                type: string
            snapshotterConfig:
              type: string
              default: aquanode
            args:
              type: array
              items:
                type: string
            dockerSlug:
              type: string
          required:
          - type
          - image
          - dockerSlug
      - type: object
        properties:
          env:
            type: array
            items:
              type: string
          appPort:
            type: number
          appPorts:
            type: array
            items:
              type: number
    Provider:
      type: object
      properties:
        name:
          type: string
          enum:
          - akash
          - voltagepark
          - datacrunch
          - hotaisle
          - vastai
          - massecompute
          - cudocompute
          - hyperstack
          - vultr
          - simplepod
          - runpod
          - nebius
          - jarvislabs
          - aws
          description: The cloud provider to use for the deployment
      required:
      - name
    UpDeployment:
      type: object
      properties:
        template:
          type: string
          enum:
          - comfyui
          - torch_and_jupyter
        sshKeyId:
          type: string
          minLength: 1
        name:
          type: string
          minLength: 1
          maxLength: 120
        gpuModel:
          type: string
        maxPrice:
          type: number
          exclusiveMinimum: 0
        provider:
          type: string
          enum:
          - akash
          - voltagepark
          - datacrunch
          - hotaisle
          - vastai
          - massecompute
          - cudocompute
          - hyperstack
          - vultr
          - simplepod
          - runpod
          - nebius
          - jarvislabs
          - aws
        gpuCount:
          type: integer
          maximum: 8
          exclusiveMinimum: 0
        idlePolicy:
          type: object
          properties:
            warnAfterMinutes:
              type: integer
              exclusiveMinimum: 0
            actAfterMinutes:
              type: integer
              exclusiveMinimum: 0
            gpuIdleThresholdPercent:
              type: number
              minimum: 0
              maximum: 100
            autoStopEnabled:
              type: boolean
        ephemeralTtlMinutes:
          type: number
          exclusiveMinimum: 0
      required:
      - sshKeyId
    CreateDeployment:
      type: object
      properties:
        resource:
          type: object
          properties:
            cpu:
              type: number
              minimum: 1
            name:
              type: string
            memory:
              type: string
            storage:
              type: string
            region:
              type: string
            gpuUnits:
              type: number
            gpuModel:
              type: string
            desiredInstanceId:
              type: string
            location_id:
              type: string
            cloud_type:
              type: string
              enum:
              - secure
              - community
          required:
          - cpu
          - memory
          - storage
        provider:
          $ref: '#/components/schemas/Provider'
        serviceConfig:
          $ref: '#/components/schemas/ServiceConfig'
        idlePolicy:
          type: object
          properties:
            warnAfterMinutes:
              type: integer
              exclusiveMinimum: 0
            actAfterMinutes:
              type: integer
              exclusiveMinimum: 0
            gpuIdleThresholdPercent:
              type: number
              minimum: 0
              maximum: 100
            autoStopEnabled:
              type: boolean
        ephemeralTtlMinutes:
          type: number
          exclusiveMinimum: 0
        maxPricePerHourUsd:
          type: number
          exclusiveMinimum: 0
      required:
      - resource
      - provider
      - serviceConfig
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: aq_sk_ API key
      description: 'An Aquanode API key, created under API keys in the console, sent as `Authorization: Bearer aq_sk_...` (or in the `x-api-key` header). A key is scoped to the team that created it; mutating routes need a key with the `deploy` or `full` scope.'