diff --git a/docs/api/examples/controller_delete_projectsprojectidshapesshapeid.txt b/docs/api/examples/controller_delete_projectsprojectidshapesshapeid.txt new file mode 100644 index 00000000..e44cdf72 --- /dev/null +++ b/docs/api/examples/controller_delete_projectsprojectidshapesshapeid.txt @@ -0,0 +1,12 @@ +curl -i -X DELETE 'http://localhost:3080/v2/projects/a1d87587-dbed-4ba0-91e7-d8a46e511115/shapes/5f3a80ed-f145-41d3-b4b3-c086990ae9e0' + +DELETE /v2/projects/a1d87587-dbed-4ba0-91e7-d8a46e511115/shapes/5f3a80ed-f145-41d3-b4b3-c086990ae9e0 HTTP/1.1 + + + +HTTP/1.1 204 +CONTENT-LENGTH: 0 +DATE: Thu, 08 Jan 2015 16:09:15 GMT +SERVER: Python/3.5 GNS3/2.0.0dev1 +X-ROUTE: /v2/projects/{project_id}/shapes/{shape_id} + diff --git a/docs/api/examples/controller_get_projectsprojectidshapes.txt b/docs/api/examples/controller_get_projectsprojectidshapes.txt new file mode 100644 index 00000000..d45f2c90 --- /dev/null +++ b/docs/api/examples/controller_get_projectsprojectidshapes.txt @@ -0,0 +1,22 @@ +curl -i -X GET 'http://localhost:3080/v2/projects/50626c07-f12d-4dbf-9e51-1da3854e620a/shapes' + +GET /v2/projects/50626c07-f12d-4dbf-9e51-1da3854e620a/shapes HTTP/1.1 + + + +HTTP/1.1 200 +CONTENT-LENGTH: 186 +CONTENT-TYPE: application/json +DATE: Thu, 08 Jan 2015 16:09:15 GMT +SERVER: Python/3.5 GNS3/2.0.0dev1 +X-ROUTE: /v2/projects/{project_id}/shapes + +[ + { + "project_id": "50626c07-f12d-4dbf-9e51-1da3854e620a", + "shape_id": "82374821-e50d-4b2f-adcf-ab77216b5014", + "x": 10, + "y": 20, + "z": 0 + } +] diff --git a/docs/api/examples/controller_post_projectsprojectidshapes.txt b/docs/api/examples/controller_post_projectsprojectidshapes.txt new file mode 100644 index 00000000..1be3773b --- /dev/null +++ b/docs/api/examples/controller_post_projectsprojectidshapes.txt @@ -0,0 +1,25 @@ +curl -i -X POST 'http://localhost:3080/v2/projects/5490bb47-660d-4952-9b55-bedba5a3a7b8/shapes' -d '{"svg": "", "x": 10, "y": 20, "z": 0}' + +POST /v2/projects/5490bb47-660d-4952-9b55-bedba5a3a7b8/shapes HTTP/1.1 +{ + "svg": "", + "x": 10, + "y": 20, + "z": 0 +} + + +HTTP/1.1 201 +CONTENT-LENGTH: 154 +CONTENT-TYPE: application/json +DATE: Thu, 08 Jan 2015 16:09:15 GMT +SERVER: Python/3.5 GNS3/2.0.0dev1 +X-ROUTE: /v2/projects/{project_id}/shapes + +{ + "project_id": "5490bb47-660d-4952-9b55-bedba5a3a7b8", + "shape_id": "61dafcde-a1af-4147-9ef3-82ccbe0f4870", + "x": 10, + "y": 20, + "z": 0 +} diff --git a/docs/api/examples/controller_put_projectsprojectidshapesshapeid.txt b/docs/api/examples/controller_put_projectsprojectidshapesshapeid.txt new file mode 100644 index 00000000..f09aab81 --- /dev/null +++ b/docs/api/examples/controller_put_projectsprojectidshapesshapeid.txt @@ -0,0 +1,22 @@ +curl -i -X PUT 'http://localhost:3080/v2/projects/eac9bc49-0ec5-4839-831e-0b8a896e29c3/shapes/10b825e2-feb2-46ac-80b2-5c82007e0949' -d '{"x": 42}' + +PUT /v2/projects/eac9bc49-0ec5-4839-831e-0b8a896e29c3/shapes/10b825e2-feb2-46ac-80b2-5c82007e0949 HTTP/1.1 +{ + "x": 42 +} + + +HTTP/1.1 201 +CONTENT-LENGTH: 154 +CONTENT-TYPE: application/json +DATE: Thu, 08 Jan 2015 16:09:15 GMT +SERVER: Python/3.5 GNS3/2.0.0dev1 +X-ROUTE: /v2/projects/{project_id}/shapes/{shape_id} + +{ + "project_id": "eac9bc49-0ec5-4839-831e-0b8a896e29c3", + "shape_id": "10b825e2-feb2-46ac-80b2-5c82007e0949", + "x": 42, + "y": 20, + "z": 0 +} diff --git a/docs/api/v2/controller/shape.rst b/docs/api/v2/controller/shape.rst new file mode 100644 index 00000000..f3334b2e --- /dev/null +++ b/docs/api/v2/controller/shape.rst @@ -0,0 +1,8 @@ +Shape +----------------------------- + +.. toctree:: + :glob: + :maxdepth: 2 + + shape/* diff --git a/docs/api/v2/controller/shape/projectsprojectidshapes.rst b/docs/api/v2/controller/shape/projectsprojectidshapes.rst new file mode 100644 index 00000000..952ec3c0 --- /dev/null +++ b/docs/api/v2/controller/shape/projectsprojectidshapes.rst @@ -0,0 +1,71 @@ +/v2/projects/{project_id}/shapes +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/projects/**{project_id}**/shapes +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +List shapes of a project + +Parameters +********** +- **project_id**: Project UUID + +Response status codes +********************** +- **200**: List of shapes returned + +Sample session +*************** + + +.. literalinclude:: ../../../examples/controller_get_projectsprojectidshapes.txt + + +POST /v2/projects/**{project_id}**/shapes +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Create a new shape instance + +Parameters +********** +- **project_id**: Project UUID + +Response status codes +********************** +- **400**: Invalid request +- **201**: Shape created + +Input +******* +.. raw:: html + + + + + + + + + +
Name Mandatory Type Description
project_id string Project UUID
shape_id string Shape UUID
svg string SVG content of the shape
x integer X property
y integer Y property
z integer Z property
+ +Output +******* +.. raw:: html + + + + + + + + + +
Name Mandatory Type Description
project_id string Project UUID
shape_id string Shape UUID
svg string SVG content of the shape
x integer X property
y integer Y property
z integer Z property
+ +Sample session +*************** + + +.. literalinclude:: ../../../examples/controller_post_projectsprojectidshapes.txt + diff --git a/docs/api/v2/controller/shape/projectsprojectidshapesshapeid.rst b/docs/api/v2/controller/shape/projectsprojectidshapesshapeid.rst new file mode 100644 index 00000000..311b2520 --- /dev/null +++ b/docs/api/v2/controller/shape/projectsprojectidshapesshapeid.rst @@ -0,0 +1,74 @@ +/v2/projects/{project_id}/shapes/{shape_id} +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +PUT /v2/projects/**{project_id}**/shapes/**{shape_id}** +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Create a new shape instance + +Parameters +********** +- **project_id**: Project UUID +- **shape_id**: Shape UUID + +Response status codes +********************** +- **400**: Invalid request +- **201**: Shape updated + +Input +******* +.. raw:: html + + + + + + + + + +
Name Mandatory Type Description
project_id string Project UUID
shape_id string Shape UUID
svg string SVG content of the shape
x integer X property
y integer Y property
z integer Z property
+ +Output +******* +.. raw:: html + + + + + + + + + +
Name Mandatory Type Description
project_id string Project UUID
shape_id string Shape UUID
svg string SVG content of the shape
x integer X property
y integer Y property
z integer Z property
+ +Sample session +*************** + + +.. literalinclude:: ../../../examples/controller_put_projectsprojectidshapesshapeid.txt + + +DELETE /v2/projects/**{project_id}**/shapes/**{shape_id}** +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Delete a shape instance + +Parameters +********** +- **project_id**: Project UUID +- **shape_id**: Shape UUID + +Response status codes +********************** +- **400**: Invalid request +- **204**: Shape deleted + +Sample session +*************** + + +.. literalinclude:: ../../../examples/controller_delete_projectsprojectidshapesshapeid.txt +