/v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}

GET /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}

Get a VirtualBox VM instance

Parameters

  • project_id: Project UUID
  • node_id: Node UUID

Response status codes

  • 200: Success
  • 400: Invalid request
  • 404: Instance doesn’t exist

Output

Name Mandatory Type Description
adapter_type string VirtualBox adapter type
adapters integer Number of adapters
console ['integer', 'null'] Console TCP port
console_type enum Possible values: telnet, none
custom_adapters array
headless boolean Headless mode
linked_clone boolean Whether the VM is a linked clone or not
name string VirtualBox VM instance name
node_directory ['string', 'null'] Path to the VM working directory
node_id string Node UUID
on_close enum Possible values: power_off, shutdown_signal, save_vm_state
project_id string Project UUID
ram integer Amount of RAM
status enum Possible values: started, stopped, suspended
usage string How to use the VirtualBox VM
use_any_adapter boolean Allow GNS3 to use any VirtualBox adapter
vmname string VirtualBox VM name (in VirtualBox itself)

Sample session

curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/bcd3206f-3edd-4b44-b5c8-e40f4a5c8909'

GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/bcd3206f-3edd-4b44-b5c8-e40f4a5c8909 HTTP/1.1



HTTP/1.1 200
Connection: close
Content-Length: 483
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:27 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}

{
    "adapter_type": "Intel PRO/1000 MT Desktop (82540EM)",
    "adapters": 0,
    "console": 5004,
    "console_type": "telnet",
    "headless": false,
    "linked_clone": false,
    "name": "VMTEST",
    "node_directory": null,
    "node_id": "bcd3206f-3edd-4b44-b5c8-e40f4a5c8909",
    "on_close": "power_off",
    "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
    "ram": 0,
    "status": "stopped",
    "usage": "",
    "use_any_adapter": false,
    "vmname": "VMTEST"
}

PUT /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}

Update a VirtualBox VM instance

Parameters

  • project_id: Project UUID
  • node_id: Node UUID

Response status codes

  • 200: Instance updated
  • 400: Invalid request
  • 404: Instance doesn’t exist
  • 409: Conflict

Input

Name Mandatory Type Description
adapter_type string VirtualBox adapter type
adapters integer Number of adapters
console ['integer', 'null'] Console TCP port
console_type enum Possible values: telnet, none
custom_adapters array
headless boolean Headless mode
linked_clone boolean Whether the VM is a linked clone or not
name string VirtualBox VM instance name
node_directory ['string', 'null'] Path to the VM working directory
node_id string Node UUID
on_close enum Possible values: power_off, shutdown_signal, save_vm_state
project_id string Project UUID
ram integer Amount of RAM
status enum Possible values: started, stopped, suspended
usage string How to use the VirtualBox VM
use_any_adapter boolean Allow GNS3 to use any VirtualBox adapter
vmname string VirtualBox VM name (in VirtualBox itself)

Output

Name Mandatory Type Description
adapter_type string VirtualBox adapter type
adapters integer Number of adapters
console ['integer', 'null'] Console TCP port
console_type enum Possible values: telnet, none
custom_adapters array
headless boolean Headless mode
linked_clone boolean Whether the VM is a linked clone or not
name string VirtualBox VM instance name
node_directory ['string', 'null'] Path to the VM working directory
node_id string Node UUID
on_close enum Possible values: power_off, shutdown_signal, save_vm_state
project_id string Project UUID
ram integer Amount of RAM
status enum Possible values: started, stopped, suspended
usage string How to use the VirtualBox VM
use_any_adapter boolean Allow GNS3 to use any VirtualBox adapter
vmname string VirtualBox VM name (in VirtualBox itself)

Sample session

curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/3fcaa4d4-e3ea-492e-967d-38cdc38d8100' -d '{"console": 5005, "name": "test"}'

PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/3fcaa4d4-e3ea-492e-967d-38cdc38d8100 HTTP/1.1
{
    "console": 5005,
    "name": "test"
}


HTTP/1.1 200
Connection: close
Content-Length: 481
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:28 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}

{
    "adapter_type": "Intel PRO/1000 MT Desktop (82540EM)",
    "adapters": 0,
    "console": 5005,
    "console_type": "telnet",
    "headless": false,
    "linked_clone": false,
    "name": "test",
    "node_directory": null,
    "node_id": "3fcaa4d4-e3ea-492e-967d-38cdc38d8100",
    "on_close": "power_off",
    "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
    "ram": 0,
    "status": "stopped",
    "usage": "",
    "use_any_adapter": false,
    "vmname": "VMTEST"
}

DELETE /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}

Delete a VirtualBox VM instance

Parameters

  • project_id: Project UUID
  • node_id: Node UUID

Response status codes

  • 204: Instance deleted
  • 400: Invalid request
  • 404: Instance doesn’t exist