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

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

Get a node

Response status codes

  • 200: Node found

  • 400: Invalid request

  • 404: Node doesn’t exist

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 GET 'http://localhost:3080/v2/projects/75386d2c-4c0b-4190-ae35-d2db4807f560/nodes/3e1037e1-343f-44ea-8b7f-a653eb2d94cf'

GET /v2/projects/75386d2c-4c0b-4190-ae35-d2db4807f560/nodes/3e1037e1-343f-44ea-8b7f-a653eb2d94cf HTTP/1.1



HTTP/1.1 200
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/{node_id}

{
    "command_line": null,
    "compute_id": "example.com",
    "console": 2048,
    "console_auto_start": false,
    "console_host": "<MagicMock name='mock.console_host' id='140147704107360'>",
    "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": "3e1037e1-343f-44ea-8b7f-a653eb2d94cf",
    "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": "75386d2c-4c0b-4190-ae35-d2db4807f560",
    "properties": {
        "startup_script": "echo test"
    },
    "status": "stopped",
    "symbol": ":/symbols/computer.svg",
    "template_id": null,
    "width": 65,
    "x": 0,
    "y": 0,
    "z": 1
}

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

Update a node instance

Response status codes

  • 200: Instance updated

  • 400: Invalid request

  • 404: Instance doesn’t exist

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 PUT 'http://localhost:3080/v2/projects/7b326169-f2e1-46ed-baf0-89bf4613d8ef/nodes/5a2cdb2f-584d-437c-b917-7605004ce6ae' -d '{"compute_id": "example.com", "name": "test", "node_type": "vpcs", "properties": {"startup_script": "echo test"}}'

PUT /v2/projects/7b326169-f2e1-46ed-baf0-89bf4613d8ef/nodes/5a2cdb2f-584d-437c-b917-7605004ce6ae HTTP/1.1
{
    "compute_id": "example.com",
    "name": "test",
    "node_type": "vpcs",
    "properties": {
        "startup_script": "echo test"
    }
}


HTTP/1.1 200
Connection: close
Content-Length: 1158
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/{node_id}

{
    "command_line": null,
    "compute_id": "example.com",
    "console": 2048,
    "console_auto_start": false,
    "console_host": "<MagicMock name='mock.console_host' id='140147702701360'>",
    "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": "5a2cdb2f-584d-437c-b917-7605004ce6ae",
    "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": "7b326169-f2e1-46ed-baf0-89bf4613d8ef",
    "properties": {},
    "status": "stopped",
    "symbol": ":/symbols/computer.svg",
    "template_id": null,
    "width": 65,
    "x": 0,
    "y": 0,
    "z": 1
}

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

Delete a node instance

Parameters

  • project_id: Project UUID

  • node_id: Node UUID

Response status codes

  • 204: Instance deleted

  • 400: Invalid request

  • 404: Instance doesn’t exist

  • 409: Cannot delete locked node

Sample session

curl -i -X DELETE 'http://localhost:3080/v2/projects/efe3bf64-ce25-40c6-8b18-95c6a9cefb58/nodes/bd34e20b-5203-48e2-8986-d3fe7274369e'

DELETE /v2/projects/efe3bf64-ce25-40c6-8b18-95c6a9cefb58/nodes/bd34e20b-5203-48e2-8986-d3fe7274369e HTTP/1.1



HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:28:00 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/projects/{project_id}/nodes/{node_id}