/v1/projects/{project_id}/vpcs/vms/{vm_id}

GET /v1/projects/{project_id}/vpcs/vms/{vm_id}

Get a VPCS instance

Parameters

  • project_id: UUID for the project
  • vm_id: UUID for the instance

Response status codes

  • 200: Success
  • 400: Invalid request
  • 404: Instance doesn’t exist

Output

Name Mandatory Type Description
console integer console TCP port
name string VPCS VM name
project_id string Project UUID
startup_script ['string', 'null'] Content of the VPCS startup script
startup_script_path ['string', 'null'] Path of the VPCS startup script relative to project directory
status enum Possible values: started, stopped
vm_directory string
vm_id string VPCS VM UUID

Sample session

curl -i -X GET 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/7e24fcc2-e38c-43e8-a7bb-fc22d7b91547'

GET /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/7e24fcc2-e38c-43e8-a7bb-fc22d7b91547 HTTP/1.1



HTTP/1.1 200
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 422
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}

{
    "console": 2010,
    "name": "PC TEST 1",
    "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
    "startup_script": null,
    "startup_script_path": null,
    "status": "stopped",
    "vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpqqnauky9/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/7e24fcc2-e38c-43e8-a7bb-fc22d7b91547",
    "vm_id": "7e24fcc2-e38c-43e8-a7bb-fc22d7b91547"
}

PUT /v1/projects/{project_id}/vpcs/vms/{vm_id}

Update a VPCS instance

Parameters

  • project_id: UUID for the project
  • vm_id: UUID for the instance

Response status codes

  • 200: Instance updated
  • 400: Invalid request
  • 404: Instance doesn’t exist
  • 409: Conflict

Input

Name Mandatory Type Description
console ['integer', 'null'] console TCP port
name ['string', 'null'] VPCS VM name
startup_script ['string', 'null'] Content of the VPCS startup script

Output

Name Mandatory Type Description
console integer console TCP port
name string VPCS VM name
project_id string Project UUID
startup_script ['string', 'null'] Content of the VPCS startup script
startup_script_path ['string', 'null'] Path of the VPCS startup script relative to project directory
status enum Possible values: started, stopped
vm_directory string
vm_id string VPCS VM UUID

Sample session

curl -i -X PUT 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/608a4cd0-476c-40ba-95db-0c81effc8e9c' -d '{"console": 2012, "name": "test", "startup_script": "ip 192.168.1.1"}'

PUT /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/608a4cd0-476c-40ba-95db-0c81effc8e9c HTTP/1.1
{
    "console": 2012,
    "name": "test",
    "startup_script": "ip 192.168.1.1"
}


HTTP/1.1 200
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 438
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}

{
    "console": 2012,
    "name": "test",
    "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
    "startup_script": "ip 192.168.1.1",
    "startup_script_path": "startup.vpc",
    "status": "stopped",
    "vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpqqnauky9/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/608a4cd0-476c-40ba-95db-0c81effc8e9c",
    "vm_id": "608a4cd0-476c-40ba-95db-0c81effc8e9c"
}

DELETE /v1/projects/{project_id}/vpcs/vms/{vm_id}

Delete a VPCS instance

Parameters

  • project_id: UUID for the project
  • vm_id: UUID for the instance

Response status codes

  • 400: Invalid request
  • 404: Instance doesn’t exist
  • 204: Instance deleted

Sample session

curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/6f9f4ab8-1b77-4eee-b0fb-e8d299b843a7'

DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/6f9f4ab8-1b77-4eee-b0fb-e8d299b843a7 HTTP/1.1



HTTP/1.1 204
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}