/v2/projects/{project_id}/nodes

POST /v2/projects/{project_id}/nodes

Create a new node instance

Parameters

  • project_id: Project UUID

Response status codes

  • 201: Instance created
  • 400: Invalid request

Input

Name Mandatory Type Description
command_line ['null', 'string'] Command line use to start the node
compute_id string Compute identifier
console ['integer', 'null'] Console TCP port
console_auto_start boolean Automatically start the console when the node has started
console_host string Console host. Warning if the host is 0.0.0.0 or :: (listen on all interfaces) you need to use the same address you use to connect to the controller.
console_type enum Possible values: vnc, telnet, http, https, spice, spice+agent, none, null
custom_adapters array
first_port_name ['string', 'null'] Name of the first port
height integer Height of the node (Read only)
label object
locked boolean Whether the element locked or not
name string Node name
node_directory ['null', 'string'] Working directory of the node. Read only
node_id string Node UUID
node_type enum Possible values: cloud, nat, ethernet_hub, ethernet_switch, frame_relay_switch, atm_switch, docker, dynamips, vpcs, traceng, virtualbox, vmware, iou, qemu
port_name_format string Formating for port name {0} will be replace by port number
port_segment_size integer Size of the port segment
ports array List of node ports READ only
project_id string Project UUID
properties object Properties specific to an emulator
status enum Possible values: stopped, started, suspended
symbol ['string', 'null'] Symbol of the node
template_id ['null', 'string'] Template UUID from which the node has been created. Read only
width integer Width of the node (Read only)
x integer X position of the node
y integer Y position of the node
z integer Z position of the node

Output

Name Mandatory Type Description
command_line ['null', 'string'] Command line use to start the node
compute_id string Compute identifier
console ['integer', 'null'] Console TCP port
console_auto_start boolean Automatically start the console when the node has started
console_host string Console host. Warning if the host is 0.0.0.0 or :: (listen on all interfaces) you need to use the same address you use to connect to the controller.
console_type enum Possible values: vnc, telnet, http, https, spice, spice+agent, none, null
custom_adapters array
first_port_name ['string', 'null'] Name of the first port
height integer Height of the node (Read only)
label object
locked boolean Whether the element locked or not
name string Node name
node_directory ['null', 'string'] Working directory of the node. Read only
node_id string Node UUID
node_type enum Possible values: cloud, nat, ethernet_hub, ethernet_switch, frame_relay_switch, atm_switch, docker, dynamips, vpcs, traceng, virtualbox, vmware, iou, qemu
port_name_format string Formating for port name {0} will be replace by port number
port_segment_size integer Size of the port segment
ports array List of node ports READ only
project_id string Project UUID
properties object Properties specific to an emulator
status enum Possible values: stopped, started, suspended
symbol ['string', 'null'] Symbol of the node
template_id ['null', 'string'] Template UUID from which the node has been created. Read only
width integer Width of the node (Read only)
x integer X position of the node
y integer Y position of the node
z integer Z position of the node

Sample session

curl -i -X POST 'http://localhost:3080/v2/projects/da877cab-9e3b-4e58-841b-2ecc8cb229c9/nodes' -d '{"compute_id": "example.com", "name": "test", "node_type": "vpcs", "properties": {"startup_script": "echo test"}}'

POST /v2/projects/da877cab-9e3b-4e58-841b-2ecc8cb229c9/nodes HTTP/1.1
{
    "compute_id": "example.com",
    "name": "test",
    "node_type": "vpcs",
    "properties": {
        "startup_script": "echo test"
    }
}


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

{
    "command_line": null,
    "compute_id": "example.com",
    "console": 2048,
    "console_auto_start": false,
    "console_host": "<MagicMock name='mock.console_host' id='140147706950040'>",
    "console_type": null,
    "custom_adapters": [],
    "first_port_name": null,
    "height": 59,
    "label": {
        "rotation": 0,
        "style": null,
        "text": "test",
        "x": null,
        "y": -40
    },
    "locked": false,
    "name": "test",
    "node_directory": null,
    "node_id": "30676c1d-7abf-45e3-8de0-1a5c418279c8",
    "node_type": "vpcs",
    "port_name_format": "Ethernet{0}",
    "port_segment_size": 0,
    "ports": [
        {
            "adapter_number": 0,
            "data_link_types": {
                "Ethernet": "DLT_EN10MB"
            },
            "link_type": "ethernet",
            "name": "Ethernet0",
            "port_number": 0,
            "short_name": "e0"
        }
    ],
    "project_id": "da877cab-9e3b-4e58-841b-2ecc8cb229c9",
    "properties": {
        "startup_script": "echo test"
    },
    "status": "stopped",
    "symbol": ":/symbols/computer.svg",
    "template_id": null,
    "width": 65,
    "x": 0,
    "y": 0,
    "z": 1
}

GET /v2/projects/{project_id}/nodes

List nodes of a project

Parameters

  • project_id: Project UUID

Response status codes

  • 200: List of nodes returned

Sample session

curl -i -X GET 'http://localhost:3080/v2/projects/0f590969-181d-4015-8ede-432c65541e45/nodes'

GET /v2/projects/0f590969-181d-4015-8ede-432c65541e45/nodes HTTP/1.1



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

[
    {
        "command_line": null,
        "compute_id": "example.com",
        "console": 2048,
        "console_auto_start": false,
        "console_host": "<MagicMock name='mock.console_host' id='140147705968344'>",
        "console_type": null,
        "custom_adapters": [],
        "first_port_name": null,
        "height": 59,
        "label": {
            "rotation": 0,
            "style": null,
            "text": "test",
            "x": null,
            "y": -40
        },
        "locked": false,
        "name": "test",
        "node_directory": null,
        "node_id": "f2ee3afd-f63c-4fc8-b249-65ede20622a4",
        "node_type": "vpcs",
        "port_name_format": "Ethernet{0}",
        "port_segment_size": 0,
        "ports": [
            {
                "adapter_number": 0,
                "data_link_types": {
                    "Ethernet": "DLT_EN10MB"
                },
                "link_type": "ethernet",
                "name": "Ethernet0",
                "port_number": 0,
                "short_name": "e0"
            }
        ],
        "project_id": "0f590969-181d-4015-8ede-432c65541e45",
        "properties": {
            "startup_script": "echo test"
        },
        "status": "stopped",
        "symbol": ":/symbols/computer.svg",
        "template_id": null,
        "width": 65,
        "x": 0,
        "y": 0,
        "z": 1
    }
]