/v2/projects/{project_id}¶
GET /v2/projects/{project_id}¶
Get a project
Parameters¶
project_id: Project UUID
Response status codes¶
200: Project information returned
404: The project doesn’t exist
Sample session¶
curl -i -X GET 'http://localhost:3080/v2/projects/2d37e1d1-0bbd-4525-8777-529b1bba7f85'
GET /v2/projects/2d37e1d1-0bbd-4525-8777-529b1bba7f85 HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 560
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:28:01 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/projects/{project_id}
{
"auto_close": true,
"auto_open": false,
"auto_start": false,
"drawing_grid_size": 25,
"filename": "test.gns3",
"grid_size": 75,
"name": "test",
"path": "/tmp/tmp_bw_8f9p/projects/2d37e1d1-0bbd-4525-8777-529b1bba7f85",
"project_id": "2d37e1d1-0bbd-4525-8777-529b1bba7f85",
"scene_height": 1000,
"scene_width": 2000,
"show_grid": false,
"show_interface_labels": false,
"show_layers": false,
"snap_to_grid": false,
"status": "opened",
"supplier": null,
"variables": null,
"zoom": 100
}
PUT /v2/projects/{project_id}¶
Update a project instance
Response status codes¶
200: Node updated
400: Invalid request
404: Instance doesn’t exist
Input¶
Name | Mandatory | Type | Description |
---|---|---|---|
auto_close | boolean | Project auto close when client cut off the notifications feed | |
auto_open | boolean | Project open when GNS3 start | |
auto_start | boolean | Project start when opened | |
drawing_grid_size | integer | Grid size for the drawing area for drawings | |
grid_size | integer | Grid size for the drawing area for nodes | |
name | ['string', 'null'] | Project name | |
path | ['string', 'null'] | Path of the project on the server (work only with --local) | |
scene_height | integer | Height of the drawing area | |
scene_width | integer | Width of the drawing area | |
show_grid | boolean | Show the grid on the drawing area | |
show_interface_labels | boolean | Show interface labels on the drawing area | |
show_layers | boolean | Show layers on the drawing area | |
snap_to_grid | boolean | Snap to grid on the drawing area | |
supplier | ['object', 'null'] | Supplier of the project | |
variables | ['array', 'null'] | Variables required to run the project | |
zoom | integer | Zoom of the drawing area |
Output¶
Name | Mandatory | Type | Description |
---|---|---|---|
auto_close | boolean | Project auto close when client cut off the notifications feed | |
auto_open | boolean | Project open when GNS3 start | |
auto_start | boolean | Project start when opened | |
drawing_grid_size | integer | Grid size for the drawing area for drawings | |
filename | ['string', 'null'] | Project filename | |
grid_size | integer | Grid size for the drawing area for nodes | |
name | ['string', 'null'] | Project name | |
path | ['string', 'null'] | Project directory | |
project_id | ✔ | string | Project UUID |
scene_height | integer | Height of the drawing area | |
scene_width | integer | Width of the drawing area | |
show_grid | boolean | Show the grid on the drawing area | |
show_interface_labels | boolean | Show interface labels on the drawing area | |
show_layers | boolean | Show layers on the drawing area | |
snap_to_grid | boolean | Snap to grid on the drawing area | |
status | enum | Possible values: opened, closed | |
supplier | ['object', 'null'] | Supplier of the project | |
variables | ['array', 'null'] | Variables required to run the project | |
zoom | integer | Zoom of the drawing area |
Sample session¶
curl -i -X PUT 'http://localhost:3080/v2/projects/10010203-0405-0607-0809-0a0b0c0d0e0f' -d '{"name": "test2"}'
PUT /v2/projects/10010203-0405-0607-0809-0a0b0c0d0e0f HTTP/1.1
{
"name": "test2"
}
HTTP/1.1 200
Connection: close
Content-Length: 692
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:28:01 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/projects/{project_id}
{
"auto_close": true,
"auto_open": false,
"auto_start": false,
"drawing_grid_size": 25,
"filename": "test.gns3",
"grid_size": 75,
"name": "test2",
"path": "/tmp/tmp4p7e6dvr/projects/10010203-0405-0607-0809-0a0b0c0d0e0f",
"project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f",
"scene_height": 1000,
"scene_width": 2000,
"show_grid": false,
"show_interface_labels": false,
"show_layers": false,
"snap_to_grid": false,
"status": "opened",
"supplier": null,
"variables": [
{
"name": "TEST1"
},
{
"name": "TEST2",
"value": "value1"
}
],
"zoom": 100
}
DELETE /v2/projects/{project_id}¶
Delete a project from disk
Parameters¶
project_id: Project UUID
Response status codes¶
204: Changes have been written on disk
404: The project doesn’t exist
Sample session¶
curl -i -X DELETE 'http://localhost:3080/v2/projects/e45cfcd2-7582-4ab2-9e60-aff5f4e519a4'
DELETE /v2/projects/e45cfcd2-7582-4ab2-9e60-aff5f4e519a4 HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:28:01 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/projects/{project_id}