Endpoints¶
GNS3 exposes two type of endpoints:
Controller endpoints
Compute endpoints
Controller endpoints¶
The controller manages everything, it is the central decision point and has a complete view of your network topologies, what nodes run on which compute, the links between them etc.
This is the high level API which can be used by users to manually control the GNS3 backend. The controller will call the compute endpoints when needed.
A standard GNS3 setup is to have one controller and one or many computes.
- Appliance
- Compute
- Drawing
- Gns3 vm
- Link
- Node
- /v2/projects/{project_id}/nodes
- /v2/projects/{project_id}/nodes/{node_id}
- /v2/projects/{project_id}/nodes/{node_id}/duplicate
- /v2/projects/{project_id}/nodes/{node_id}/dynamips/auto_idlepc
- /v2/projects/{project_id}/nodes/{node_id}/dynamips/idlepc_proposals
- /v2/projects/{project_id}/nodes/{node_id}/files/{path:.+}
- /v2/projects/{project_id}/nodes/{node_id}/links
- /v2/projects/{project_id}/nodes/{node_id}/reload
- /v2/projects/{project_id}/nodes/{node_id}/resize_disk
- /v2/projects/{project_id}/nodes/{node_id}/start
- /v2/projects/{project_id}/nodes/{node_id}/stop
- /v2/projects/{project_id}/nodes/{node_id}/suspend
- /v2/projects/{project_id}/nodes/reload
- /v2/projects/{project_id}/nodes/start
- /v2/projects/{project_id}/nodes/stop
- /v2/projects/{project_id}/nodes/suspend
- Notification
- Project
- /v2/projects
- /v2/projects/load
- /v2/projects/{project_id}
- /v2/projects/{project_id}/close
- /v2/projects/{project_id}/duplicate
- /v2/projects/{project_id}/export
- /v2/projects/{project_id}/files/{path:.+}
- /v2/projects/{project_id}/import
- /v2/projects/{project_id}/notifications
- /v2/projects/{project_id}/notifications/ws
- /v2/projects/{project_id}/open
- /v2/projects/{project_id}/stats
- Server
- Snapshot
- Symbol
- Template
Compute Endpoints¶
A compute is the GNS3 process running on a host. It controls emulators in order to run nodes (e.g. VMware VMs with VMware Workstation, IOS routers with Dynamips etc.)
Warning
These endpoints should be considered low level and private. They should only be used by the controller or for debugging purposes.
- Atm switch
- /v2/compute/projects/{project_id}/atm_relay_switch/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/atm_relay_switch/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/atm_switch/nodes
- /v2/compute/projects/{project_id}/atm_switch/nodes/{node_id}
- /v2/compute/projects/{project_id}/atm_switch/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/atm_switch/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/atm_switch/nodes/{node_id}/duplicate
- /v2/compute/projects/{project_id}/atm_switch/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/atm_switch/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/atm_switch/nodes/{node_id}/suspend
- Capabilities
- Cloud
- /v2/compute/projects/{project_id}/cloud/nodes
- /v2/compute/projects/{project_id}/cloud/nodes/{node_id}
- /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/suspend
- Docker
- /v2/compute/docker/images
- /v2/compute/projects/{project_id}/docker/nodes
- /v2/compute/projects/{project_id}/docker/nodes/{node_id}
- /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/docker/nodes/{node_id}/duplicate
- /v2/compute/projects/{project_id}/docker/nodes/{node_id}/pause
- /v2/compute/projects/{project_id}/docker/nodes/{node_id}/reload
- /v2/compute/projects/{project_id}/docker/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/docker/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/docker/nodes/{node_id}/suspend
- /v2/compute/projects/{project_id}/docker/nodes/{node_id}/unpause
- Dynamips vm
- /v2/compute/dynamips/images
- /v2/compute/dynamips/images/{filename:.+}
- /v2/compute/projects/{project_id}/dynamips/nodes
- /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}
- /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/auto_idlepc
- /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/duplicate
- /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/idlepc_proposals
- /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/reload
- /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/resume
- /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/suspend
- Ethernet hub
- /v2/compute/projects/{project_id}/ethernet_hub/nodes
- /v2/compute/projects/{project_id}/ethernet_hub/nodes/{node_id}
- /v2/compute/projects/{project_id}/ethernet_hub/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/ethernet_hub/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/ethernet_hub/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/ethernet_hub/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/ethernet_hub/nodes/{node_id}/duplicate
- /v2/compute/projects/{project_id}/ethernet_hub/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/ethernet_hub/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/ethernet_hub/nodes/{node_id}/suspend
- Ethernet switch
- /v2/compute/projects/{project_id}/ethernet_switch/nodes
- /v2/compute/projects/{project_id}/ethernet_switch/nodes/{node_id}
- /v2/compute/projects/{project_id}/ethernet_switch/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/ethernet_switch/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/ethernet_switch/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/ethernet_switch/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/ethernet_switch/nodes/{node_id}/duplicate
- /v2/compute/projects/{project_id}/ethernet_switch/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/ethernet_switch/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/ethernet_switch/nodes/{node_id}/suspend
- Frame relay switch
- /v2/compute/projects/{project_id}/frame_relay_switch/nodes
- /v2/compute/projects/{project_id}/frame_relay_switch/nodes/{node_id}
- /v2/compute/projects/{project_id}/frame_relay_switch/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/frame_relay_switch/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/frame_relay_switch/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/frame_relay_switch/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/frame_relay_switch/nodes/{node_id}/duplicate
- /v2/compute/projects/{project_id}/frame_relay_switch/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/frame_relay_switch/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/frame_relay_switch/nodes/{node_id}/suspend
- Iou
- /v2/compute/iou/images
- /v2/compute/iou/images/{filename:.+}
- /v2/compute/projects/{project_id}/iou/nodes
- /v2/compute/projects/{project_id}/iou/nodes/{node_id}
- /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/iou/nodes/{node_id}/duplicate
- /v2/compute/projects/{project_id}/iou/nodes/{node_id}/reload
- /v2/compute/projects/{project_id}/iou/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/iou/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/iou/nodes/{node_id}/suspend
- Nat
- /v2/compute/projects/{project_id}/nat/nodes
- /v2/compute/projects/{project_id}/nat/nodes/{node_id}
- /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/nat/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/nat/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/nat/nodes/{node_id}/suspend
- Network
- Notification
- Project
- Qemu
- /v2/compute/projects/{project_id}/qemu/nodes
- /v2/compute/projects/{project_id}/qemu/nodes/{node_id}
- /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/duplicate
- /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/reload
- /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/resize_disk
- /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/resume
- /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/suspend
- /v2/compute/qemu/binaries
- /v2/compute/qemu/capabilities
- /v2/compute/qemu/images
- /v2/compute/qemu/images/{filename:.+}
- /v2/compute/qemu/img
- /v2/compute/qemu/img-binaries
- Server
- Traceng
- /v2/compute/projects/{project_id}/traceng/nodes
- /v2/compute/projects/{project_id}/traceng/nodes/{node_id}
- /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/duplicate
- /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/reload
- /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/suspend
- Virtualbox
- /v2/compute/projects/{project_id}/virtualbox/nodes
- /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}
- /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/reload
- /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/resume
- /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/suspend
- /v2/compute/virtualbox/vms
- Vmware
- /v2/compute/projects/{project_id}/vmware/nodes
- /v2/compute/projects/{project_id}/vmware/nodes/{node_id}
- /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/interfaces/vmnet
- /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/reload
- /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/resume
- /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/suspend
- /v2/compute/vmware/vms
- Vpcs
- /v2/compute/projects/{project_id}/vpcs/nodes
- /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}
- /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/nio
- /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/pcap
- /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/start_capture
- /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:d+}/ports/{port_number:d+}/stop_capture
- /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/duplicate
- /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/reload
- /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/start
- /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/stop
- /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/suspend