Crusoe VM Operations API

The VM Operations API from Crusoe — 2 operation(s) for vm operations.

OpenAPI Specification

crusoe-energy-vm-operations-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  description: The API Gateway exposes all publicly available API endpoints for Crusoe Cloud products.
  title: Crusoe Cloud API Gateway Audit Logs VM Operations API
  version: v1alpha5
host: api.crusoecloud.com
basePath: /v1alpha5
schemes:
- https
consumes:
- application/json
produces:
- application/json
tags:
- name: VM Operations
paths:
  /projects/{project_id}/compute/vms/instances/operations:
    get:
      description: 'This resource retrieves information about the status of asynchronous operations initiated by

        the instances resource. All operations that are either in-flight or completed but not yet

        queried will be returned.'
      tags:
      - VM Operations
      summary: Get status of asynchronous operations
      operationId: listComputeVMsInstancesOperations
      parameters:
      - type: string
        example: 452580d7-41d1-4b63-b4d7-4e4e21e95f96
        x-go-name: ResourceID
        name: resource_id
        in: query
      - type: array
        items:
          type: string
        example:
        - IN_PROGRESS
        x-go-name: State
        name: state
        in: query
      - type: string
        example: '2021-12-03T19:58:34Z'
        x-go-name: LowerTimeBound
        name: lower_time_bound
        in: query
      - type: string
        example: ab4a6b00-aa5f-408e-a9fb-ac6de5eb45ab
        x-go-name: ProjectID
        name: project_id
        in: path
        required: true
      responses:
        '200':
          $ref: '#/responses/listOperationsResponse'
        '401':
          $ref: '#/responses/authError'
        '403':
          $ref: '#/responses/permissionsError'
        '500':
          $ref: '#/responses/serverError'
  /projects/{project_id}/compute/vms/instances/operations/{operation_id}:
    get:
      description: 'This resource retrieves information about the status of an asynchronous operation initiated by

        the instances resource. Only information about the operation specified in the path will be returned,

        or an HTTP 403 will be returned if the operation does not exist, was not initiated by the logged

        in user, or has expired.'
      tags:
      - VM Operations
      summary: Get the status of a single asynchronous operation
      operationId: getComputeVMsInstancesOperation
      parameters:
      - type: string
        example: ab4a6b00-aa5f-408e-a9fb-ac6de5eb45ab
        x-go-name: ProjectID
        name: project_id
        in: path
        required: true
      - type: string
        example: ab4a6b00-aa5f-408e-a9fb-ac6de5eb45ab
        x-go-name: OperationID
        name: operation_id
        in: path
        required: true
      responses:
        '200':
          $ref: '#/responses/getOperationResponse'
        '400':
          $ref: '#/responses/badReqError'
        '401':
          $ref: '#/responses/authError'
        '403':
          $ref: '#/responses/permissionsError'
        '500':
          $ref: '#/responses/serverError'
definitions:
  Operation:
    description: 'Individual resources that use Operations should populate the `metadata` field

      with resource-specific information.'
    type: object
    title: Operation contains the common fields for all Operation API objects.
    required:
    - operation_id
    - state
    - metadata
    - started_at
    - completed_at
    properties:
      completed_at:
        type: string
        x-go-name: CompletedAt
        example: '2021-12-03T19:59:34Z'
      metadata:
        x-go-name: Metadata
        example: '{}'
      operation_id:
        type: string
        x-go-name: ID
        example: F6EF489C-086E-458D-B812-7962964A28C9
      result:
        x-go-name: Result
        example: '{}'
      started_at:
        type: string
        x-go-name: StartedAt
        example: '2021-12-03T19:58:34Z'
      state:
        type: string
        enum:
        - IN_PROGRESS
        - SUCCEEDED
        - FAILED
        x-go-name: State
        example: IN_PROGRESS
    x-go-package: gitlab.com/crusoeenergy/island/rest-gateway/internal/handlers
  ListOperationsResponseV1Alpha5:
    type: object
    required:
    - items
    properties:
      items:
        type: array
        items:
          $ref: '#/definitions/Operation'
        x-go-name: Items
    x-go-package: gitlab.com/crusoeenergy/island/rest-gateway/internal/handlers
responses:
  getOperationResponse:
    description: ''
    schema:
      $ref: '#/definitions/Operation'
  authError:
    description: Error Authentication Failed
    schema:
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: string
          x-go-name: Code
          example: '401'
        message:
          type: string
          x-go-name: Message
          example: bad_credential
  serverError:
    description: Error Internal Server
    schema:
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: string
          x-go-name: Code
          example: '500'
        message:
          type: string
          x-go-name: Message
          example: internal_error
  badReqError:
    description: Error Bad Request
    schema:
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: string
          x-go-name: Code
          example: '400'
        message:
          type: string
          x-go-name: Message
          example: bad_request
  permissionsError:
    description: Error Permissions
    schema:
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: string
          x-go-name: Code
          example: '403'
        message:
          type: string
          x-go-name: Message
          example: unauthorized
  listOperationsResponse:
    description: ''
    schema:
      $ref: '#/definitions/ListOperationsResponseV1Alpha5'
x-tagGroups:
- name: Compute
  tags:
  - VMs
  - VM Operations
  - Images
  - Instance Templates
  - Custom Images
  - Custom Image Operations
- name: Organizations
  tags:
  - Projects
  - Entities
  - Prospects
  - Billing
  - Usage
  - Quotas
  - Audit Logs
  - Reservations
- name: Users
  tags:
  - Identities
  - Roles
  - SSH Keys
  - Tokens
- name: Storage
  tags:
  - Disks
  - Disk Operations
  - Snapshots
  - Snapshot Operations
- name: Networking
  tags:
  - VPC Firewall Rules
  - VPC Firewall Rule Operations
  - VPC Networks
  - VPC Subnets
  - IB Partitions
  - Load Balancers
- name: Orchestration
  tags:
  - Kubernetes Clusters
  - Kubernetes Cluster Operations
  - Kubernetes Node Pools
  - Kubernetes Node Pool Operations
  - Kubernetes Versions
  - AutoClusters
  - AutoCluster Operations
- name: Locations
  tags:
  - Locations
- name: Capacities
  tags:
  - Capacities