IBM Cloud API Docs

Introduction

You can use the IBM® Power® Virtual Server to easily deploy and configure virtual servers that are running AIX, IBM i, or Linux (RHEL and SLES) workloads.

To learn about using Power Virtual Server, see:

Endpoint URLs

The Power Virtual Server service uses regional endpoints over a public network.

Automatically generated regional API endpoints (service URL) will default to IBM Cloud Regions which may cause your request to fail. You should always use the Power Virtual Server regions in the service URL.

The following table shows the IBM Cloud® regions and their corresponding Power Virtual Server region where the APIs are available:

Table 1. Location and endpoint mapping
Location IBM Cloud Region Power Virtual Server region Endpoint (service URL)
Dallas, USA us-south us-south https://us-south.power-iaas.cloud.ibm.com
Washington DC, USA us-east us-east https://us-east.power-iaas.cloud.ibm.com
São Paulo, Brazil br-sao sao https://sao.power-iaas.cloud.ibm.com
Toronto, Canada ca-tor tor https://tor.power-iaas.cloud.ibm.com
Montreal, Canada ca-mon mon https://mon.power-iaas.cloud.ibm.com
Frankfurt, Germany eu-de eu-de https://eu-de.power-iaas.cloud.ibm.com
London, UK eu-gb lon https://lon.power-iaas.cloud.ibm.com
Sydney, Australia au-syd syd https://syd.power-iaas.cloud.ibm.com
Tokyo, Japan jp-tok tok https://tok.power-iaas.cloud.ibm.com
Osaka, Japan jp-osa osa https://osa.power-iaas.cloud.ibm.com

Curl service URL intro

To call the API, select the service URL that corresponds to the region of your choice and add a method path to form the complete request URL. For example, to list all the workspaces available in the us-south region, make a GET request to https://us-south.iaas.cloud.ibm.com/v1/workspaces.

Example request to call the us-south service URL:

curl -H "Authorization: Bearer {token}" -X {http_method} "https://us-south.iaas.cloud.ibm.com/v1{path}"

Replace {token}, {http_method}, and {path} in this example with the values for your particular request.

Authentication

The Power Virtual Server API uses Identity and Access Management (IAM) to authenticate requests. To call each API method, you must be assigned a role that includes the required IAM actions. Each method has an Authorization section that lists the required actions and, if applicable, the conditions under which each action is required. Check your access on the IBM Cloud console by navigating to Users > User > Access.

For more information about IAM actions and how they map to roles, see Assigning access to account management services and Managing IAM access for Power Virtual Server.

Learn about obtaining an IAM token for an authenticated user or service ID in the IAM Identity Services API. If you first create an API key, you can use it to generate an IAM token.

To use the API, add a valid IAM token to the HTTP Authorization request header. For example, -H 'Authorization: Bearer {token}'.

For specific APIs you must need to include your IBM Cloud IAM access token and the Power Virtual Server instance ID, also known as your Cloud Resource Name (CRN), in each request. The first part of your CRN contains your Tenant ID and the second part contains your Cloud Instance ID.

The following example shows a typical CRN:

crn:v1:staging:public:power-iaas:us-east:a/abcdefghijklmnopqrstuvwxyzabcdef:121d5ee5-b87d-4a0e-86b8-aaff422135478::

Tenant ID {tenant_id} = abcdefghijklmnopqrstuvwxyzabcdef
Cloud Instance ID {cloud_instance_id} = 121d5ee5-b87d-4a0e-86b8-aaff422135478

You can retrieve an access token by first creating an API key, and then exchanging your API key for a IBM Cloud IAM token. For more information, see Retrieving an access token programmatically and Retrieving your instance ID.

To retrieve your access token:

curl -X POST   "https://iam.cloud.ibm.com/identity/token"   --header 'Content-Type: application/x-www-form-urlencoded'   --header 'Accept: application/json'   --data-urlencode 'grant_type=urn:ibm:params:oauth:grant-type:apikey'   --data-urlencode 'apikey={api_key}'

To use the API, replace {token} with the token obtained above from IAM, replace {http_method} with an HTTP method such as POST, and replace {url} with a request URL such as https://us-south.iaas.cloud.ibm.com/v1/workspaces/{workspace_id}:

curl -H "Authorization: Bearer {token}" -X {http_method} "{url}"
     -H "CRN"

Auditing

Monitor API activity within your account by using the IBM Cloud Activity Tracker service. Each time you make an API call, one or more events are generated that you can track and audit from within Activity Tracker. Specific auditing event types are listed for each individual method. For more information about Power Virtual Server activity tracking, see Activity Tracker events.

Error handling

This API uses standard HTTP response codes to indicate whether a method completed successfully. A 200 response indicates success. A 400 type response indicates a failure, and a 500 type response indicates an internal system error.

Table 1. HTTP error codes with their descriptions
HTTP Error Code Description Recovery
400 Bad Request The input parameters in the request body are either incomplete, malformed, or too large. Be sure to include all required parameters in your request.
401 Unauthorized You are not authorized to make this request. Log in to IBM Cloud and try submitting the request again. If this error persists, contact the account owner to check your permissions.
403 Forbidden The supplied authentication is not authorized to perform the requested operation. Either you do not have valid access through IAM access policies or your request is denied. If this error persists, contact the account owner to check your permissions.
404 Not Found The requested resource could not be found but may be available in the future.
405 Method Not Allowed The requested resource does not support the request method.
406 Not Acceptable The resource the client requested is not available in a format allowed by the Accept header supplied by the client.
408 Request Timeout The connection to the server timed out. Wait a few minutes, and try submitting the request again.
409 Conflict The request cannot be completed because of a conflict between the request and the current state of the resource.
412 Precondition Failed The client specified one or more preconditions in its headers, and the server cannot meet those preconditions.
426 Upgrade Required The server refuses to perform the request using the current protocol but might perform the request after the client upgrades to a different protocol.
500 Internal Server Error The request cannot be processed because the client encountered an unexpected condition on the server. Wait a few minutes and try submitting the request again. If this error persists, contact IBM Support.
501 Not Implemented The server either does not recognize the request method, or it lacks the ability to fulfill the request.
502 Bad Gateway The server was acting as a gateway or proxy and received an invalid response from the upstream server.
503 Service Unavailable The server cannot process the request. Generally, this condition is temporary, such as when a server is overloaded or down for scheduled maintenance. This condition could also be due to an unplanned outage of a service that is needed to process the request. Wait a few minutes and try submitting the request again. If this error persists, contact IBM Support.
504 Gateway Timeout The server was acting as a gateway or proxy and did not receive a timely response from the upstream server.
505 HTTP Version Not Supported The server does not support the HTTP protocol version that is used in the request.

Release notes

Use the release notes to learn about the latest changes to the Power Virtual Server API.

The following APIs are availavle:

  • You can now get new error messages for undefined response codes for new service endpoint response codes.

Methods

Get a Cloud Instance's current state/information

GET /pcloud/v1/cloud-instances/{cloud_instance_id}

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.read

    Grants access to this and other methods.

  • power-iaas.cloud-instance.list

Auditing

Calling this method generates the following auditing event.

  • power-iaas.cloud-instance.read

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

  • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

Response

Status Code

  • OK

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Internal Server Error

No Sample Response

This method does not specify any sample responses.

Get all cloud connections in this cloud instance

GET /pcloud/v1/cloud-instances/{cloud_instance_id}/cloud-connections

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.read

    Grants access to this and other methods.

  • power-iaas.cloud-connection.list

Auditing

Calling this method generates the following auditing event.

  • power-iaas.cloud-connection.list

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

  • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/cloud-connections   --header "Authorization: Bearer ${TOKEN}"   --header "Content-Type: application/json"   --header "crn: ${CRN}"

Response

Status Code

  • OK

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Request Timeout

  • Internal Server Error

Example responses
  • {
      "cloudConnections": [
        {
          "cloudConnectionID": "fc010e03-4a07-4bd0-aec9-571fcac5f17f",
          "creationDate": "2021-02-26T20:39:53.696Z",
          "globalRouting": false,
          "ibmIPAddress": "1.2.3.4/5",
          "linkStatus": "connect",
          "metered": false,
          "name": "powervs-cloud-connection-1",
          "port": 0,
          "speed": 1000,
          "userIPAddress": "1.2.3.4/5"
        },
        {
          "cloudConnectionID": "ec610e13-4a07-4bd0-aec9-571fcac5f17d",
          "creationDate": "2021-02-26T20:40:52.100Z",
          "globalRouting": false,
          "ibmIPAddress": "1.2.3.4/5",
          "linkStatus": "connect",
          "metered": false,
          "name": "powervs-cloud-connection-2",
          "port": 0,
          "speed": 1000,
          "userIPAddress": "1.2.3.4/5"
        }
      ]
    }

Create a new cloud connection

POST /pcloud/v1/cloud-instances/{cloud_instance_id}/cloud-connections

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.modify

    Grants access to this and other methods.

  • power-iaas.cloud-connection.create

Auditing

Calling this method generates the following auditing event.

  • power-iaas.cloud-connection.create

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

Parameters for the creation of a new cloud connection

  • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/cloud-connections   --header "Authorization: Bearer ${TOKEN}"   --header "Content-Type: application/json"   --header "crn: ${CRN}"
      --data-raw '{
            "classic": {
            "enabled": true,
            "gre": {
                  "cidr": "string",
                  "destIPAddress": "string"
                   }
                  },
            "globalRouting": true,
            "metered": true,
            "name": "string",
            "speed": 50,
            "subnets": [
              "string"
              ],
            "transitEnabled": true,
            "vpc": {
              "enabled": true,
            "vpcs": [
            {
              "name": "string",
              "vpcID": "string"
            }
              ]
            }
          }'

Response

Status Code

  • OK

  • Created

  • Accepted

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Request Timeout

  • Conflict

  • Unprocessable Entity

  • Internal Server Error

  • Service Unavailable

  • Gateway Timeout

Example responses
  • {
      "cloudConnectionID": "fc010e03-4a07-4bd0-aec9-571fcac5f17f",
      "creationDate": "2021-02-28T22:42:54.574Z",
      "globalRouting": true,
      "ibmIPAddress": "1.2.3.4/5",
      "linkStatus": "idle",
      "metered": true,
      "name": "powervs-cloud-connection",
      "port": 0,
      "speed": 5000,
      "userIPAddress": "1.2.3.4/5"
    }

Get all virtual private cloud connections in this cloud instance

GET /pcloud/v1/cloud-instances/{cloud_instance_id}/cloud-connections-virtual-private-clouds

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.read

    Grants access to this and other methods.

  • power-iaas.cloud-connection-vpc.list

Auditing

Calling this method generates the following auditing event.

  • power-iaas.cloud-connection.list

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

  • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/cloud-connections-virtual-private-clouds   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

Response

Status Code

  • OK

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Request Timeout

  • Internal Server Error

  • Service Unavailable

  • Gateway Timeout

Example responses
  • {
      "virtualPrivateClouds": [
        {
          "classicAccess": false,
          "name": "datacenter1-powervs-virtual-private-cloud",
          "status": "available",
          "vpcID": "crn:v1..."
        },
        {
          "classicAccess": false,
          "name": "datacenter2-powervs-virtual-private-cloud",
          "status": "available",
          "vpcID": "crn:v1..."
        }
      ]
    }

Delete a Cloud Connection

DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/cloud-connections/{cloud_connection_id}

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.modify

    Grants access to this and other methods.

  • power-iaas.cloud-connection.delete

Auditing

Calling this method generates the following auditing event.

  • power-iaas.cloud-connection.delete

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

  • Cloud Connection ID

  • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/cloud-connections/${CLOUD_CONNECTION_ID}   --header "Authorization: Bearer ${TOKEN}"   --header "Content-Type: application/json"   --header "crn: ${CRN}"

Response

Status Code

  • OK

  • Accepted

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Request Timeout

  • Gone

  • Internal Server Error

No Sample Response

This method does not specify any sample responses.

Get a cloud connection's state/information

GET /pcloud/v1/cloud-instances/{cloud_instance_id}/cloud-connections/{cloud_connection_id}

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.read

    Grants access to this and other methods.

  • power-iaas.cloud-connection.read

Auditing

Calling this method generates the following auditing event.

  • power-iaas.cloud-connection.read

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

  • Cloud Connection ID

  • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/cloud-connections/${CLOUD_CONNECTION_ID}   --header "Authorization: Bearer ${TOKEN}"   --header "Content-Type: application/json"   --header "crn: ${CRN}"

Response

Status Code

  • OK

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Request Timeout

  • Internal Server Error

Example responses
  • {
      "classic": {
        "enabled": true,
        "gre": {
          "destIPAddress": "1.2.3.4",
          "sourceIPAddress": "10.0.0.1"
        }
      },
      "cloudConnectionID": "fc010e03-4a07-4bd0-aec9-571fcac5f17f",
      "creationDate": "2021-02-28T22:42:54.574Z",
      "globalRouting": true,
      "ibmIPAddress": "1.2.3.4/5",
      "linkStatus": "idle",
      "metered": false,
      "name": "powervs-cloud-connection-1",
      "networks": [
        {
          "href": "/pcloud/v1/cloud-instances/9f7b1c66a7bc6404908dd5e0c2e24ec8/networks/295784b0-a7d2-4752-8ad5-e894529895b2",
          "jumbo": false,
          "name": "powervs-cloud-connections-network",
          "networkID": "295784b0-a7d2-4752-8ad5-e894529895b2",
          "type": "vlan",
          "vlanID": 3254
        }
      ],
      "port": 0,
      "speed": 5000,
      "userIPAddress": "1.2.3.4/5",
      "vpc": {
        "enabled": true,
        "vpcs": [
          {
            "name": "vpc-fc010e03-4a07-4bd0-aec9-571fcac5f17f-0",
            "vpcID": "crn:v1..."
          }
        ]
      }
    }

Update a Cloud Connection

PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/cloud-connections/{cloud_connection_id}

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.modify

    Grants access to this and other methods.

  • power-iaas.cloud-connection.update

Auditing

Calling this method generates the following auditing event.

  • power-iaas.cloud-connection.update

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

  • Cloud Connection ID

Parameters to update a Cloud Connection

  • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/cloud-connections/${CLOUD_CONNECTION_ID}   --header "Authorization: Bearer ${TOKEN}"   --header "Content-Type: application/json"   --header "crn: ${CRN}"
      --data-raw '{
          "classic": {
              "enabled": true,
              "gre": {
                  "cidr": "10.0.0.0/24",
                  "destIPAddress": "1.2.3.4"
              }
          },
          "globalRouting": true,
          "metered": false,
          "name": "powervs-cloud-connection-1",
          "speed": 5000,
          "vpc": {
              "enabled": true,
              "vpcs": [
                  {
                      "vpcID": "crn:v1..."
                  },
                  {
                      "vpcID": "crn:v1..."
                  }
              ]
          }
       }'

Response

Status Code

  • OK

  • Accepted

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Method Not Allowed

  • Request Timeout

  • Conflict

  • Unprocessable Entity

  • Internal Server Error

  • Service Unavailable

No Sample Response

This method does not specify any sample responses.

Detach a network from a Cloud Connection

DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/cloud-connections/{cloud_connection_id}/networks/{network_id}

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.modify

    Grants access to this and other methods.

  • power-iaas.cloud-connection-network.delete

Auditing

Calling this method generates the following auditing event.

  • power-iaas.cloud-connection.delete

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

  • Cloud Connection ID

  • Network ID

  • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/cloud-connections/${CLOUD_CONNECTION_ID}/networks/${NETWORK_ID}   --header "Authorization: Bearer ${TOKEN}"   --header "Content-Type: application/json"   --header "crn: ${CRN}"

Response

Status Code

  • OK

  • Accepted

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Request Timeout

  • Gone

  • Internal Server Error

Example responses
  • {
      "href": "pcloud/v1/cloud-instances/d234578e-9520-408g-9e94-259dda713d9e/jobs/c113467d-8419-449c-8d83-259dda713d9e",
      "id": "c113467d-8419-449c-8d83-259dda713d9e"
    }

Attach a network to the cloud connection

PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/cloud-connections/{cloud_connection_id}/networks/{network_id}

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.modify

    Grants access to this and other methods.

  • power-iaas.cloud-connection-network.update

Auditing

Calling this method generates the following auditing event.

  • power-iaas.cloud-connection.update

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

  • Cloud Connection ID

  • Network ID

  • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/cloud-connections/${CLOUD_CONNECTION_ID}/networks/${NETWORK_ID}   --header "Authorization: Bearer ${TOKEN}"   --header "Content-Type: application/json"   --header "crn: ${CRN}"

Response

Status Code

  • OK

  • Accepted

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Request Timeout

  • Unprocessable Entity

  • Internal Server Error

Example responses
  • {
      "href": "pcloud/v1/cloud-instances/d234578e-9520-408g-9e94-259dda713d9e/jobs/c113467d-8419-449c-8d83-259dda713d9e",
      "id": "c113467d-8419-449c-8d83-259dda713d9e"
    }

Get detail of last cos-image import job

GET /pcloud/v1/cloud-instances/{cloud_instance_id}/cos-images

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.read

    Grants access to this and other methods.

  • power-iaas.cos-image.read

Auditing

Calling this method generates the following auditing event.

  • power-iaas.image.read

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

  • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/cos-images   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

Response

Status Code

  • OK

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Internal Server Error

Example responses
  • {
      "createTimestamp": "2021-08-09T20:17:39.827Z",
      "id": "c113467d-8419-449c-8d81-259dda713d9f",
      "operation": {
        "action": "imageImport",
        "id": "b81ea020-bb47-452e-af96-8523c68e",
        "target": "image"
      },
      "status": {
        "message": "download of  <imageFileName>.ova.gz from <bucketname> is in progress",
        "progress": "imageDownloadMonitor",
        "state": "running"
      }
    }

Create an cos-image import job

POST /pcloud/v1/cloud-instances/{cloud_instance_id}/cos-images

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.modify

    Grants access to this and other methods.

  • power-iaas.cos-image.create

Auditing

Calling this method generates the following auditing event.

  • power-iaas.image.import

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

Parameters for the creation of a new cos-image import job

  • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/cos-images   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'
      -d '{
            "imageName": "my-image-catalog-name",
            "region": "us-east",
            "imageFilename": "my-os-image-file.ova.gz",
            "bucketName": "my-cos-bucket-name",
            "accessKey": "my-cos-bucket-access-key",
            "secretKey": "my-cos-bucket-secret-key",
            "storageType": "tier3"    
            "storagePool": "StoragePool-3"
            "storageAffinity": {
              "affinityPolicy": "affinity",
              "affinityPVMInstance": "testVM3", 
            }
          }'

Response

Status Code

  • Accepted, cos-image import successfully added to the jobs queue

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Conflict

  • Unprocessable Entity

  • Internal Server Error

Example responses
  • {
      "href": "pcloud/v1/jobs/c113467d-8419-449c-8d83-259dda713d9e",
      "jobID": "c113467d-8419-449c-8d83-259dda713d9e"
    }

List all images for this cloud instance

GET /pcloud/v1/cloud-instances/{cloud_instance_id}/images

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.read

    Grants access to this and other methods.

  • power-iaas.cloud-instance-image.list

Auditing

Calling this method generates the following auditing event.

  • power-iaas.image.list

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

  • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/images   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

Response

Status Code

  • OK

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Internal Server Error

Example responses
  • {
      "images": [
        {
          "creationDate": "2019-12-04T19:45:48.000Z",
          "description": "",
          "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/images/938b1104-18bc-4666-a384-b205793aab86",
          "imageID": "938b1104-18bc-4666-a384-b205793aab86",
          "lastUpdateDate": "2019-12-04T19:46:19.000Z",
          "name": "7100-05-04",
          "specifications": {
            "architecture": "ppc64",
            "containerFormat": "bare",
            "diskFormat": "raw",
            "endianness": "big-endian",
            "hypervisorType": "phyp",
            "imageType": "stock",
            "operatingSystem": "aix"
          },
          "state": "active",
          "storageType": "tier3-gen2"
        },
        {
          "creationDate": "2019-09-11T16:10:00.000Z",
          "description": "",
          "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/images/b39f1013-6d26-4585-856d-8aa4ea5e9ee9",
          "imageID": "b39f1013-6d26-4585-856d-8aa4ea5e9ee9",
          "lastUpdateDate": "2019-09-11T16:10:17.000Z",
          "name": "7200-03-03",
          "specifications": {
            "architecture": "ppc64",
            "containerFormat": "bare",
            "diskFormat": "raw",
            "endianness": "big-endian",
            "hypervisorType": "phyp",
            "imageType": "stock",
            "operatingSystem": "aix"
          },
          "state": "active",
          "storageType": "tier3-gen2"
        },
        {
          "creationDate": "2020-01-08T20:35:36.000Z",
          "description": "",
          "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/images/e3c453a9-40b0-4fd6-89f9-3b71273446b0",
          "imageID": "e3c453a9-40b0-4fd6-89f9-3b71273446b0",
          "lastUpdateDate": "2020-01-08T20:45:09.000Z",
          "name": "COS-import-7100-05-04-img",
          "specifications": {
            "architecture": "ppc64",
            "containerFormat": "bare",
            "diskFormat": "raw",
            "endianness": "big-endian",
            "hypervisorType": "phyp",
            "imageType": "import",
            "operatingSystem": "aix"
          },
          "state": "active",
          "storageType": "standard"
        },
        {
          "creationDate": "2019-12-05T18:13:27.000Z",
          "description": "",
          "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/images/affa57fc-493d-4599-bfb6-755f99c9cab6",
          "imageID": "affa57fc-493d-4599-bfb6-755f99c9cab6",
          "lastUpdateDate": "2019-12-05T18:14:14.000Z",
          "name": "IBMi-72-09-002",
          "specifications": {
            "architecture": "ppc64",
            "containerFormat": "bare",
            "diskFormat": "raw",
            "endianness": "big-endian",
            "hypervisorType": "phyp",
            "imageType": "stock",
            "operatingSystem": "ibmi"
          },
          "state": "active",
          "storageType": "standard"
        },
        {
          "creationDate": "2019-09-17T10:55:13.000Z",
          "description": "",
          "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/images/8105a084-0360-478f-bfe8-c5a2af98f690",
          "imageID": "8105a084-0360-478f-bfe8-c5a2af98f690",
          "lastUpdateDate": "2019-09-17T10:55:41.000Z",
          "name": "IBMi-73-06-001",
          "specifications": {
            "architecture": "ppc64",
            "containerFormat": "bare",
            "diskFormat": "raw",
            "endianness": "big-endian",
            "hypervisorType": "phyp",
            "imageType": "stock",
            "operatingSystem": "ibmi"
          },
          "state": "active",
          "storageType": "tier3-gen2"
        },
        {
          "creationDate": "2019-11-04T22:26:04.000Z",
          "description": "",
          "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/images/75be671c-9e45-49c0-b462-7672e28fc80c",
          "imageID": "75be671c-9e45-49c0-b462-7672e28fc80c",
          "lastUpdateDate": "2019-11-04T22:27:14.000Z",
          "name": "IBMi-74-00-001",
          "specifications": {
            "architecture": "ppc64",
            "containerFormat": "bare",
            "diskFormat": "raw",
            "endianness": "big-endian",
            "hypervisorType": "phyp",
            "imageType": "stock",
            "operatingSystem": "ibmi"
          },
          "state": "active",
          "storageType": "tier3-gen2"
        }
      ]
    }

Create a new Image (from available images)

POST /pcloud/v1/cloud-instances/{cloud_instance_id}/images

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.modify

    Grants access to this and other methods.

  • power-iaas.cloud-instance-image.create

Auditing

Calling this method generates the following auditing event.

  • power-iaas.image.import

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

Parameters for the creation of a new image from available images

  • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/images   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
            "source": "root-project",
            "imageID": "b39f1013-6d26-4585-856d-8aa4ea5e9ee9"
          }'

Response

Status Code

  • OK

  • Created

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Conflict

  • Unprocessable Entity

  • Internal Server Error

No Sample Response

This method does not specify any sample responses.

Delete an Image from a Cloud Instance

DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/images/{image_id}

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.modify

    Grants access to this and other methods.

  • power-iaas.cloud-instance-image.delete

Auditing

Calling this method generates the following auditing event.

  • power-iaas.image.delete

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

  • Image ID of a image

  • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/images/{image_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

Response

Status Code

  • OK

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Gone

  • Internal Server Error

No Sample Response

This method does not specify any sample responses.

Detailed info of an image

GET /pcloud/v1/cloud-instances/{cloud_instance_id}/images/{image_id}

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.read

    Grants access to this and other methods.

  • power-iaas.cloud-instance-image.read

Auditing

Calling this method generates the following auditing event.

  • power-iaas.image.read

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

  • Image ID of a image

  • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/images/{image_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

Response

Status Code

  • OK

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Internal Server Error

Example responses
  • {
      "creationDate": "2019-09-11T16:10:00.000Z",
      "imageID": "b39f1013-6d26-4585-856d-8aa4ea5e9ee9",
      "lastUpdateDate": "2019-09-11T16:10:17.000Z",
      "name": "7200-03-03",
      "servers": [
        "kylej-pointer-test",
        "dl02-test",
        "nni-vm01",
        "gre-vm02"
      ],
      "size": 20,
      "specifications": {
        "architecture": "ppc64",
        "containerFormat": "bare",
        "diskFormat": "raw",
        "endianness": "big-endian",
        "hypervisorType": "phyp",
        "imageType": "stock",
        "operatingSystem": "aix"
      },
      "state": "active",
      "storageType": "standard",
      "volumes": [
        {
          "bootable": true,
          "name": "volume-969afb22cb00-23977--cf758b7d-e30b",
          "size": 20
        }
      ]
    }

Export an image

This API is deprecated for /pcloud/v2/cloud-instances/{cloud_instance_id}/images/{image_id}/export.

Note: Support for this API is available till Oct 2022.

POST /pcloud/v1/cloud-instances/{cloud_instance_id}/images/{image_id}/export

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.modify

    Grants access to this and other methods.

  • power-iaas.image-export.create

Auditing

Calling this method generates the following auditing event.

  • power-iaas.image.export

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

  • Image ID of a image

Parameters for exporting an image

  • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/images/{image_id}/export   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
            "bucketName": "cloud-object-storage-bucket"
            "accessKey": "347aa3a4b34344f8bc7c7cccdf856e4c"
          }'

Response

Status Code

  • Accepted

  • Bad Request

  • Unauthorized

  • Forbidden

  • Not Found

  • Unprocessable Entity

  • Internal Server Error

No Sample Response

This method does not specify any sample responses.

List all available stock images

GET /pcloud/v1/cloud-instances/{cloud_instance_id}/stock-images

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

  • power-iaas.cloud-instance.read

    Grants access to this and other methods.

  • power-iaas.stock-image.list

Auditing

Calling this method generates the following auditing event.

  • power-iaas.stock-image.list

Request

Path Parameters

  • Cloud Instance ID of a PCloud Instance

Query Parameters

  • Include SAP images with get available stock images

  • Include VTL images with get available stock images

    Response

    Status Code

    • OK

    • Bad Request

    • Unauthorized

    • Forbidden

    • Not Found

    • Internal Server Error

    No Sample Response

    This method does not specify any sample responses.

    Detailed info of an available stock image

    GET /pcloud/v1/cloud-instances/{cloud_instance_id}/stock-images/{image_id}

    Authorization

    To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

    • power-iaas.cloud-instance.read

      Grants access to this and other methods.

    • power-iaas.stock-image.read

    Auditing

    Calling this method generates the following auditing event.

    • power-iaas.stock-image.read

    Request

    Path Parameters

    • Cloud Instance ID of a PCloud Instance

    • Image ID of a image

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Internal Server Error

      No Sample Response

      This method does not specify any sample responses.

      List all the images in the image-catalog

      This API is deprecated for /pcloud/v1/cloud-instances/{cloud_instance_id}/stock-images.

      Note: Support for this API will be available till 31st March 2023.

      GET /pcloud/v1/images

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.read

        Grants access to this and other methods.

      • power-iaas.image.list

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.image.list

      Request

      Query Parameters

      • Include SAP images with get available stock images

      • Include VTL images with get available stock images

      • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/images   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Internal Server Error

      No Sample Response

      This method does not specify any sample responses.

      Detailed info of an image in the image-catalog

      This API is deprecated for /pcloud/v1/cloud-instances/{cloud_instance_id}/stock-images/{image_id}.

      Note: Support for this API will be available till 31st March 2023.

      GET /pcloud/v1/images/{image_id}

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.read

        Grants access to this and other methods.

      • power-iaas.image.read

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.image.read

      Request

      Path Parameters

      • Image ID of a image

      • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/images/{image_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Internal Server Error

      No Sample Response

      This method does not specify any sample responses.

      Get detail of last image export job

      GET /pcloud/v2/cloud-instances/{cloud_instance_id}/images/{image_id}/export

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.read

        Grants access to this and other methods.

      • power-iaas.image-export.read

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.job.read

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      • Image ID of a image

      • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/images/{image_id}/export   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Internal Server Error

      Example responses
      • {
          "createTimestamp": "2021-08-09T20:17:39.827Z",
          "id": "c113467d-8419-449c-8d81-259dda713d9f",
          "operation": {
            "action": "imageExport",
            "id": "b81ea020-bb47-452e-af96-8523c68f",
            "target": "image"
          },
          "status": {
            "message": "compression of image ova file is in progress",
            "progress": "imageCompress",
            "state": "running"
          }
        }

      Add image export job to the jobs queue

      POST /pcloud/v2/cloud-instances/{cloud_instance_id}/images/{image_id}/export

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.modify

        Grants access to this and other methods.

      • power-iaas.image-export.create

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.image.export

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      • Image ID of a image

      Parameters for the export

      • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/images/{image_id}/export   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                "bucketName": "cloud-object-storage-bucket"
                "accessKey": "347aa3a4b34344f8bc7c7cccdf856e4c"
              }

      Response

      Status Code

      • Accepted, image export successfully added to the jobs queue

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Conflict, a conflict has prevented adding image export job

      • Unprocessable Entity

      • Internal Server Error

      Example responses
      • {
          "href": "pcloud/v1/jobs/c113467d-8419-449c-8d81-259dda713d9f",
          "jobID": "c113467d-8419-449c-8d81-259dda713d9fcreate"
        }

      Get events from this cloud instance since a specific timestamp

      GET /pcloud/v1/cloud-instances/{cloud_instance_id}/events

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.read

        Grants access to this and other methods.

      • power-iaas.event.list

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.event.list

      Request

      Custom Headers

      • The language requested for the return document

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      Query Parameters

      • (deprecated - use from_time) A time in either ISO 8601 or unix epoch format

      • A from query time in either ISO 8601 or unix epoch format

      • A to query time in either ISO 8601 or unix epoch format

      • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/events   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Internal Server Error

      Example responses
      • {
          "events": [
            {
              "action": "create",
              "eventID": "d20d80f7-c87c-4ab7-bea2-2bc4736e7c2e",
              "level": "info",
              "message": "Power virtual server instance 'stg-provision-test-eu-de' has been created successfully.",
              "metadata": {
                "pvmInstanceID": "27380612-2062-46ec-ae5b-9e723ede304d"
              },
              "resource": "pvm-instance",
              "time": "2020-04-20T00:17:40.772Z",
              "timestamp": 1587341860,
              "user": {
                "email": "unknown@us.ibm.com",
                "name": "Unknown User",
                "userID": "1234567890"
              }
            }
          ]
        }

      Get a single event

      GET /pcloud/v1/cloud-instances/{cloud_instance_id}/events/{event_id}

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.read

        Grants access to this and other methods.

      • power-iaas.event.read

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.event.read

      Request

      Custom Headers

      • The language requested for the return document

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      • Event ID

      • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/events/${EVENT_ID}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Internal Server Error

      Example responses
      • {
          "action": "create",
          "eventID": "d20d80f7-c87c-4ab7-bea2-2bc4736e7c2e",
          "level": "info",
          "message": "Power virtual server instance 'stg-provision-test-eu-de' has been created successfully.",
          "metadata": {
            "pvmInstanceID": "27380612-2062-46ec-ae5b-9e723ede304d"
          },
          "resource": "pvm-instance",
          "time": "2020-04-20T00:17:40.772Z",
          "timestamp": 1587341860,
          "user": {
            "email": "unknown@us.ibm.com",
            "name": "Unknown User",
            "userID": "1234567890"
          }
        }

      List up to the last 5 jobs initiated by the cloud instance

      GET /pcloud/v1/cloud-instances/{cloud_instance_id}/jobs

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.read

        Grants access to this and other methods.

      • power-iaas.job.list

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.job.list

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      Query Parameters

      • Operation ID to filter jobs (optional)

      • Operation target to filter jobs (optional)

        Allowable values: [cloudConnection,pvmInstance,image,vpnConnection]

      • Operation action to filter jobs (optional) vmCapture - includes operation action value (vmCapture) imageExport - includes operation action value (imageExport) imageImport - includes operation action value (imageImport) storage - includes operation action values (vmCapture,imageExport,imageImport)

        Allowable values: [vmCapture,imageExport,imageImport,storage]

      • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/jobs   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Internal Server Error

      Example responses
      • {
          "createTimestamp": "2022-04-27T09:48:44.620Z",
          "id": "3f09ffff-7d95-480b-b5ff-e2ba6ac3699c",
          "operation": [
            {
              "action": "imageImport",
              "id": "testImg",
              "target": "image"
            }
          ],
          "status": [
            {
              "message": "imageImport operation::import of image file testImg.ova.gz to image testImg has completed successfully",
              "progress": "imageImportMonitor",
              "state": "completed"
            }
          ]
        }

      Delete a cloud instance job

      DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/jobs/{job_id}

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.modify

        Grants access to this and other methods.

      • power-iaas.job.delete

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.job.delete

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      • PCloud Job ID

      • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/jobs/{job_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Conflict

      • Internal Server Error

      No Sample Response

      This method does not specify any sample responses.

      List the detail of a job

      GET /pcloud/v1/cloud-instances/{cloud_instance_id}/jobs/{job_id}

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.read

        Grants access to this and other methods.

      • power-iaas.job.read

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.job.read

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      • PCloud Job ID

      • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/jobs/{job_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Internal Server Error

      Example responses
      • {
          "createTimestamp": "2021-08-09T20:17:39.827Z",
          "id": "c113467d-8419-449c-8d81-259dda713d9f",
          "operation": [
            {
              "action": "vmCapture",
              "id": "b81ea020-bb47-452e-af96-8523c68e",
              "target": "pvmInstance"
            }
          ],
          "status": [
            {
              "message": "capturing VM to an image file",
              "progress": "capture",
              "state": "running"
            }
          ]
        }

      Get the disaster recovery site details for the current location

      GET /pcloud/v1/cloud-instances/{cloud_instance_id}/locations/disaster-recovery

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.read

        Grants access to this and other methods.

      • power-iaas.disaster-recovery.read

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.disaster-recovery.read

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/locations/disaster-recovery   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Internal Server Error

      Example responses
      • {
          "location": "dal12",
          "replicationSites": [
            {
              "isActive": true,
              "location": "us-east"
            }
          ]
        }

      Get all disaster recovery locations supported by Power Virtual Server

      GET /pcloud/v1/locations/disaster-recovery

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.disaster-recovery.read

      Request

      No Request Parameters

      This method does not accept any request parameters.

      • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/locations/disaster-recovery   -H 'Authorization: Bearer <>'   -H 'Content-Type: application/json'

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Internal Server Error

      Example responses
      • {
          "disasterRecoveryLocations": [
            {
              "location": "dal12",
              "replicationSites": [
                {
                  "isActive": true,
                  "location": "us-east"
                }
              ]
            },
            {
              "location": "us-east",
              "replicationSites": [
                {
                  "isActive": true,
                  "location": "dal12"
                }
              ]
            }
          ]
        }

      Get all networks in this cloud instance

      GET /pcloud/v1/cloud-instances/{cloud_instance_id}/networks

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.read

        Grants access to this and other methods.

      • power-iaas.network.list

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.network.list

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      Query Parameters

      • A filter expression that filters resources listed in the response

      • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/networks   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Internal Server Error

      Example responses
      • {
          "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/networks/392913e3-e8ac-406b-a061-b431ee4bd239",
          "jumbo": false,
          "mtu": 1450,
          "name": "test-ibm-network",
          "networkID": "392913e3-e8ac-406b-a061-b431ee4bd239",
          "type": "vlan",
          "vlanID": 3314
        }

      Create a new Network

      POST /pcloud/v1/cloud-instances/{cloud_instance_id}/networks

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.modify

        Grants access to this and other methods.

      • power-iaas.network.create

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.network.create

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      Parameters for the creation of a new network

      Examples:
      View
      • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/networks   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                "type": "vlan"
              }'

      Response

      Status Code

      • OK

      • Created

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Conflict

      • Unprocessable Entity

      • Internal Server Error

      • Workspace Status Error

      No Sample Response

      This method does not specify any sample responses.

      Delete a Network

      DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/networks/{network_id}

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.modify

        Grants access to this and other methods.

      • power-iaas.network.delete

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.network.delete

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      • Network ID

      • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/networks/{network_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Gone

      • Internal Server Error

      No Sample Response

      This method does not specify any sample responses.

      Get a network's current state/information

      GET /pcloud/v1/cloud-instances/{cloud_instance_id}/networks/{network_id}

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.read

        Grants access to this and other methods.

      • power-iaas.network.read

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.network.read

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      • Network ID

      • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/networks/{network_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Internal Server Error

      Example responses
      • {
          "cidr": "172.16.5.0/24",
          "dnsServers": [
            "9.9.9.9",
            "127.0.0.3"
          ],
          "gateway": "172.16.5.1",
          "ipAddressMetrics": {
            "available": 250,
            "total": 251,
            "used": 1,
            "utilization": 0
          },
          "ipAddressRanges": [
            {
              "endingIPAddress": "172.16.5.254",
              "startingIPAddress": "172.16.5.4"
            }
          ],
          "jumbo": false,
          "mtu": 1450,
          "name": "testMangala1",
          "networkID": "392913e3-e8ac-406b-a061-b431ee4bd239",
          "type": "vlan",
          "vlanID": 3314
        }

      Update a Network

      PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/networks/{network_id}

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.modify

        Grants access to this and other methods.

      • power-iaas.network.update

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.network.update

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      • Network ID

      Parameters to update a Network

      • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/networks/{network_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                "ipAddressRanges": {
                  "startingIPAddress": "192.168.100.4"
                  "endingIPAddress": "192.168.103.254"
                }
              }'

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Unprocessable Entity

      • Internal Server Error

      No Sample Response

      This method does not specify any sample responses.

      Get all ports for this network

      GET /pcloud/v1/cloud-instances/{cloud_instance_id}/networks/{network_id}/ports

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.read

        Grants access to this and other methods.

      • power-iaas.network-port.list

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.port.list

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      • Network ID

      • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/networks/{network_id}/ports   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

      Response

      Status Code

      • OK

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Internal Server Error

      Example responses
      • {
          "ports": [
            {
              "description": "",
              "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/networks/4d8713c5-123d-4662-8f58-8578c79d6814/ports/10890e8a-158b-49b5-8d05-96efd9f44824",
              "ipAddress": "192.168.140.28",
              "macAddress": "fa:16:3e:6a:35:cd",
              "portID": "10890e8a-158b-49b5-8d05-96efd9f44824",
              "pvmInstance": {
                "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/pvm-instances/08490a29-ce61-4064-9a3b-ca051e005cf7",
                "pvmInstanceID": "08490a29-ce61-4064-9a3b-ca051e005cf7"
              },
              "status": "DOWN"
            },
            {
              "description": "",
              "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/networks/4d8713c5-123d-4662-8f58-8578c79d6814/ports/6a863b69-aa0c-48fa-8ce7-b69051f844ee",
              "ipAddress": "192.168.140.26",
              "macAddress": "fa:68:11:17:77:20",
              "portID": "6a863b69-aa0c-48fa-8ce7-b69051f844ee",
              "pvmInstance": {
                "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/pvm-instances/ad2f6b96-9063-456c-a1a7-725eebdc86c1",
                "pvmInstanceID": "ad2f6b96-9063-456c-a1a7-725eebdc86c1"
              },
              "status": "ACTIVE"
            }
          ]
        }

      Perform port addition, deletion, and listing

      POST /pcloud/v1/cloud-instances/{cloud_instance_id}/networks/{network_id}/ports

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.modify

        Grants access to this and other methods.

      • power-iaas.network-port.create

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.port.create

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      • Network ID

      Create a Network Port

      • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/networks/{network_id}/ports   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

      Response

      Status Code

      • Created

      • Bad Request

      • Unauthorized

      • Forbidden

      • Not Found

      • Conflict

      • Unprocessable Entity

      • Internal Server Error

      Example responses
      • {
          "ports": [
            {
              "description": "",
              "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/networks/4d8713c5-123d-4662-8f58-8578c79d6814/ports/10890e8a-158b-49b5-8d05-96efd9f44824",
              "ipAddress": "192.168.140.28",
              "macAddress": "fa:16:3e:6a:35:cd",
              "portID": "10890e8a-158b-49b5-8d05-96efd9f44824",
              "pvmInstance": {
                "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/pvm-instances/08490a29-ce61-4064-9a3b-ca051e005cf7",
                "pvmInstanceID": "08490a29-ce61-4064-9a3b-ca051e005cf7"
              },
              "status": "DOWN"
            },
            {
              "description": "",
              "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/networks/4d8713c5-123d-4662-8f58-8578c79d6814/ports/6a863b69-aa0c-48fa-8ce7-b69051f844ee",
              "ipAddress": "192.168.140.26",
              "macAddress": "fa:68:11:17:77:20",
              "portID": "6a863b69-aa0c-48fa-8ce7-b69051f844ee",
              "pvmInstance": {
                "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/pvm-instances/ad2f6b96-9063-456c-a1a7-725eebdc86c1",
                "pvmInstanceID": "ad2f6b96-9063-456c-a1a7-725eebdc86c1"
              },
              "status": "ACTIVE"
            }
          ]
        }

      Delete a Network Port

      DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/networks/{network_id}/ports/{port_id}

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

      • power-iaas.cloud-instance.modify

        Grants access to this and other methods.

      • power-iaas.network-port.delete

      Auditing

      Calling this method generates the following auditing event.

      • power-iaas.port.delete

      Request

      Path Parameters

      • Cloud Instance ID of a PCloud Instance

      • Network ID

      • Port ID

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Gone

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Get a port's information

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/networks/{network_id}/ports/{port_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.network-port.read

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.port.read

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Network ID

        • Port ID

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/networks/{network_id}/ports/{port_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses

        Update a port's information

        PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/networks/{network_id}/ports/{port_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.network-port.update

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.port.update

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Network ID

        • Port ID

        Parameters for updating a Port

        • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/networks/{network_id}/ports/{port_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'
            -d '{
                 description: "port-description"
                 pvmInstanceID: "pvm-instance-id"
                }'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Unprocessable Entity

        • Internal Server Error

        Example responses
        • {
            "examples": {
              "description": "",
              "ipAddress": "192.168.140.28",
              "macAddress": "fa:16:3e:6a:35:cd",
              "portID": "10890e8a-158b-49b5-8d05-96efd9f44824",
              "pvmInstance": {
                "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/pvm-instances/08490a29-ce61-4064-9a3b-ca051e005cf7",
                "pvmInstanceID": "08490a29-ce61-4064-9a3b-ca051e005cf7"
              },
              "status": "DOWN"
            }
          }

        Get all Server Placement Groups

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/placement-groups

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.placement-group.list

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.placement-group.list

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloudInstanceID}/placement-groups   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "placementGroups": [
              {
                "id": "7a3583cc-85ec-4589-b5b5-b5d7af58354f",
                "members": [],
                "name": "MyAffinity-servergroup-1620150831",
                "policy": "affinity"
              },
              {
                "id": "7af58354f-85ec-4589-b5b5-b5d77a3583cc",
                "members": [],
                "name": "MyAnti-Affinity-servergroup",
                "policy": "anti-affinity"
              }
            ]
          }

        Create a new Server Placement Group

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/placement-groups

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.placement-group.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.placement-group.create

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        Parameters for the creation of a new Server Placement Group

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloudInstanceID}/placement-groups   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                 "name": "MyAffinity-servergroup-1620150831",
                 "policy": "affinity"
               }'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Unprocessable Entity

        • Internal Server Error

        Example responses
        • {
            "id": "7a3583cc-85ec-4589-b5b5-b5d7af58354f",
            "members": [],
            "name": "MyAffinity-servergroup-1620150831",
            "policy": "affinity"
          }

        Delete Server Placement Group

        DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/placement-groups/{placement_group_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.placement-group.delete

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.placement-group.delete

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Placement Group ID

        • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloudInstanceID}/placement-groups/{placement_group_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Get Server Placement Group detail

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/placement-groups/{placement_group_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.placement-group.read

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.placement-group.read

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Placement Group ID

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloudInstanceID}/placement-groups{placement_group_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "id": "7a3583cc-85ec-4589-b5b5-b5d7af58354f",
            "members": [
              "541c1cda-a8da-4081-8020-3a0ce9850ca0"
            ],
            "name": "MyAffinity-servergroup-1620150831",
            "policy": "affinity"
          }

        Remove Server from Placement Group

        DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/placement-groups/{placement_group_id}/members

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.placement-group-member.delete

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.placement-groups.update

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Placement Group ID

        Parameters for removing a Server in a Placement Group

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloudInstanceID}/placement-groups/{placementGroupID}/members   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                 "id": "541c1cda-a8da-4081-8020-3a0ce9850ca0",
               }'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Unprocessable Entity

        • Internal Server Error

        Example responses
        • {
            "id": "7a3583cc-85ec-4589-b5b5-b5d7af58354f",
            "members": [],
            "name": "MyAffinity-servergroup-1620150831",
            "policy": "affinity"
          }

        Add Server to Placement Group

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/placement-groups/{placement_group_id}/members

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.placement-group-member.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.placement-groups.update

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Placement Group ID

        Parameters for adding a server to a Server Placement Group

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloudInstanceID}/placement-groups/{placementGroupID}/members   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                 "id": "541c1cda-a8da-4081-8020-3a0ce9850ca0",
               }'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Unprocessable Entity

        • Internal Server Error

        Example responses
        • {
            "id": "7a3583cc-85ec-4589-b5b5-b5d7af58354f",
            "members": [
              "541c1cda-a8da-4081-8020-3a0ce9850ca0"
            ],
            "name": "MyAffinity-servergroup-1620150831",
            "policy": "affinity"
          }

        List of available resources within a particular Pod

        Applicable to satellite locations only.

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/pod-capacity

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following action, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.pod-capacity.view

          Required for satellite locations, ignored for public data centers.

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pod-capacity.list

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        Response

        List of available resources within a Pod

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Get all the pvm instances for this cloud instance

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.pvm-instance.list

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.list

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Request Timeout

        • Internal Server Error

        Example responses
        • {
            "addresses": {
              "externalIP": "172.70.134.153",
              "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/pvm-instances/6da0fd14-f7d3-4142-96f5-078df36c2539/networks/testMangala",
              "ip": "172.16.5.168",
              "ipAddress": "172.16.5.168",
              "macAddress": "fa:a0:34:00:14:20",
              "networkID": "8838dcff-d423-4490-aa95-7bfed54adbae",
              "networkName": "ibm-test-network",
              "type": "fixed",
              "version": 4
            },
            "creationDate": "2019-11-21T10:41:33.000Z",
            "health": {
              "lastUpdate": "2019-11-21T16:31:09.443Z",
              "status": "WARNING"
            },
            "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/pvm-instances/6da0fd14-f7d3-4142-96f5-078df36c2539",
            "imageID": "732a5136-10b0-4c65-8882-7dc46601f3d5",
            "storagePool": "StoragePool-2",
            "storagePoolAffinity": true,
            "storageType": "tier1"
          }

        Create a new Power VM Instance

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.create

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        Query Parameters

        • Option to skip host validation on PVMInstance Create API

        Parameters for the creation of a new Power VM Instance

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "serverName": "server-name"
                  "imageID": "image-id"
                  "placementGroup": "7a3583cc-85ec-4589-b5b5-b5d7af58354f"
                  "processors" "number-of-processors"
                  "procType": "dedicated"
                  "memory": "amount-of-memory"
                  "networkIDs": "list-network-ids"
                  "sysType": "s922"
                  "volumeIDs": ["data-volume-1", “data-volume-2”]
                  "storageType": "tier1"
                  "storagePool": "StoragePool-3"
                  "storageAffinity": {
                    "affinityPolicy": "affinity",
                    "affinityPVMInstance": "testVM3", 
                    }
                    {
                      "affinityPolicy": "anti-affinity",
                      "antiAffinityPVMInstances": ["testVM1", “testVM2”]
                    }
                }'

        Response

        A list of PVMInstances

        Status Code

        • OK

        • Created

        • Accepted

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Unprocessable Entity

        • Internal Server Error

        • Gateway Timeout. Request is still processing and taking longer than expected.

        Example responses
        • {
            "addresses": [
              {
                "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/pvm-instances/35c0e26c-e51f-4230-b556-49ada44d8831/networks/64782dfc-820f-45e7-9975-7320a548f116",
                "ip": "192.168.2.153",
                "ipAddress": "192.168.2.153",
                "macAddress": "fa:f2:5f:3c:86:20",
                "networkID": "64782dfc-820f-45e7-9975-7320a548f116",
                "networkName": "MoyTest",
                "type": "fixed",
                "version": 4
              }
            ],
            "creationDate": "2020-01-17T05:55:28.000Z",
            "diskSize": 80,
            "health": {
              "lastUpdate": "2020-01-17T17:23:04.070Z",
              "status": "OK"
            },
            "imageID": "8105a084-0360-478f-bfe8-c5a2af98f690",
            "maxmem": 4,
            "maxproc": 0.5,
            "memory": 2,
            "migratable": false,
            "minmem": 2,
            "minproc": 0.25,
            "networkIDs": [
              "64782dfc-820f-45e7-9975-7320a548f116"
            ],
            "networks": [
              {
                "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/pvm-instances/35c0e26c-e51f-4230-b556-49ada44d8831/networks/64782dfc-820f-45e7-9975-7320a548f116",
                "ip": "192.168.2.153",
                "ipAddress": "192.168.2.153",
                "macAddress": "fa:f2:5f:3c:86:20",
                "networkID": "64782dfc-820f-45e7-9975-7320a548f116",
                "networkName": "MoyTest",
                "type": "fixed",
                "version": 4
              }
            ],
            "procType": "shared",
            "processors": 0.25,
            "pvmInstanceID": "35c0e26c-e51f-4230-b556-49ada44d8831",
            "serverName": "MoyMetadataTest3",
            "status": "ACTIVE",
            "storageType": "standard",
            "sysType": "s922",
            "updatedDate": "2020-01-17T05:55:28.000Z",
            "volumeIDs": [
              "3a40ee8a-e80c-49bc-9db4-b09687c38bd1"
            ]
          }

        Delete a PCloud PVM Instance

        DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance.delete

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.delete

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        Query Parameters

        • Indicates if all data volumes attached to the PVMInstance should be deleted when deleting the PVMInstance. Shared data volumes will be deleted if there are no other PVMInstances attached.

        • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Gone

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Get a PVM Instance's current state or information

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.pvm-instance.read

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.read

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "addresses": [
              {
                "externalIP": "xxx.xxx.xxx.xxx",
                "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/pvm-instances/8ab7ede5-540e-44bc-99cf-9c8bf1ac6297/networks/8838dcff-d423-4490-aa95-7bfed54adbae",
                "ip": "192.168.140.38",
                "ipAddress": "192.168.140.38",
                "macAddress": "fa:38:e6:a8:19:20",
                "networkID": "8838dcff-d423-4490-aa95-7bfed54adbae",
                "networkName": "public-192_168_140_32-29-VLAN_3305",
                "type": "fixed",
                "version": 4
              }
            ],
            "creationDate": "2020-04-22T17:12:41.000Z",
            "diskSize": 20,
            "health": {
              "lastUpdate": "2020-04-22T17:16:28.099Z",
              "status": "WARNING"
            },
            "imageID": "dd04bafb-fda2-49c5-825b-1c1d274a8a99",
            "maxmem": 4,
            "maxproc": 0.5,
            "memory": 2,
            "migratable": false,
            "minmem": 2,
            "minproc": 0.25,
            "networkIDs": [
              "8838dcff-d423-4490-aa95-7bfed54adbae"
            ],
            "networks": [
              {
                "externalIP": "161.156.179.134",
                "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/pvm-instances/8ab7ede5-540e-44bc-99cf-9c8bf1ac6297/networks/8838dcff-d423-4490-aa95-7bfed54adbae",
                "ip": "192.168.140.38",
                "ipAddress": "192.168.140.38",
                "macAddress": "fa:38:e6:a8:19:20",
                "networkID": "8838dcff-d423-4490-aa95-7bfed54adbae",
                "networkName": "public-192_168_140_32-29-VLAN_3305",
                "type": "fixed",
                "version": 4
              }
            ],
            "pinPolicy": "none",
            "placementGroup": "none",
            "procType": "shared",
            "processors": 0.25,
            "pvmInstanceID": "8ab7ede5-540e-44bc-99cf-9c8bf1ac6297",
            "serverName": "stg-provision-test-eu-de-1",
            "status": "ACTIVE",
            "storagePool": "StoragePool-1",
            "storagePoolAffinity": true,
            "storageType": "tier3",
            "sysType": "s922",
            "updatedDate": "2020-04-22T17:12:41.000Z",
            "volumeIDs": [
              "d2c0e860-bceb-48a1-aa54-e8c5af9bdefc"
            ]
          }

        Update a PCloud PVM Instance

        PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance.update

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.update

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        Parameters to update a PCloud PVM Instance

        • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'
            -d '{
                "serverName": server-name
                "processors": number-of-processors
                "procType": "dedicated"
                "memory": "4"
                "migratable": "false"
                "softwareLicenses": "software-licenses"
                "pinPolicy": "soft"
                "storagePoolAffinity": true
                }'

        Response

        Status Code

        • Accepted (this is a long running operation)

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Unprocessable Entity

        • Internal Server Error

        Example responses
        • {
            "addresses": [
              {
                "externalIP": "xxx.xxx.xxx.xxx",
                "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/pvm-instances/8ab7ede5-540e-44bc-99cf-9c8bf1ac6297/networks/8838dcff-d423-4490-aa95-7bfed54adbae",
                "ip": "192.168.140.38",
                "ipAddress": "192.168.140.38",
                "macAddress": "fa:38:e6:a8:19:20",
                "networkID": "8838dcff-d423-4490-aa95-7bfed54adbae",
                "networkName": "public-192_168_140_32-29-VLAN_3305",
                "type": "fixed",
                "version": 4
              }
            ],
            "creationDate": "2020-04-22T17:12:41.000Z",
            "diskSize": 20,
            "health": {
              "lastUpdate": "2020-04-22T17:16:28.099Z",
              "status": "WARNING"
            },
            "imageID": "dd04bafb-fda2-49c5-825b-1c1d274a8a99",
            "maxmem": 4,
            "maxproc": 0.5,
            "memory": 4,
            "migratable": false,
            "minmem": 2,
            "minproc": 0.25,
            "networkIDs": [
              "8838dcff-d423-4490-aa95-7bfed54adbae"
            ],
            "networks": [
              {
                "externalIP": "xxx.xxx.xxx.xxx",
                "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/pvm-instances/8ab7ede5-540e-44bc-99cf-9c8bf1ac6297/networks/8838dcff-d423-4490-aa95-7bfed54adbae",
                "ip": "192.168.140.38",
                "ipAddress": "192.168.140.38",
                "macAddress": "fa:38:e6:a8:19:20",
                "networkID": "8838dcff-d423-4490-aa95-7bfed54adbae",
                "networkName": "public-192_168_140_32-29-VLAN_3305",
                "type": "fixed",
                "version": 4
              }
            ],
            "pinPolicy": "soft",
            "procType": "dedicated",
            "processors": 0.25,
            "pvmInstanceID": "8ab7ede5-540e-44bc-99cf-9c8bf1ac6297",
            "serverName": "stg-provision-test-eu-de-1",
            "status": "ACTIVE",
            "storageType": "tier1",
            "sysType": "s922",
            "updatedDate": "2020-04-22T17:12:41.000Z",
            "volumeIDs": [
              "d2c0e860-bceb-48a1-aa54-e8c5af9bdefc"
            ]
          }

        Perform an action on a PVMInstance

        Corresponding actions are 'start', 'stop', 'reboot', 'immediate-shutdown', 'reset'

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/action

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance.action

        Auditing

        Calling this method generates the following auditing events.

        • power-iaas.pvm-instance.start

        • power-iaas.pvm-instance.stop

        • power-iaas.pvm-instance.immediate-shutdown

        • power-iaas.pvm-instance.renew

        • power-iaas.pvm-instance.unknown

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        Parameters for the desired action

        • curl -X POST   https://< Cloud IP>/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/${PVM_Instance_ID}/action   -H "authorization: <AuthToken>"   -H "content-type: application/json"   -H 'crn: <CRN>'   -d '{
                  "action":"immediate-shutdown"
                }'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Capture a PVMInstance and create a deployable image

        This API is deprecated for /pcloud/v2/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/capture.

        Note: Support for this API is available till Oct 2022.

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/capture

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance-capture.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.capture

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        Parameters for the capture PVMInstance

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/capture   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "captureName": "deployable-image-name"
                  "captureDestination": "deployable-image-destination"
                }'

        Response

        Status Code

        • OK

        • Accepted, upload to cloud storage in progress

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Unprocessable Entity

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        List all console languages

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/console

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.pvm-instance-console.read

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.monitor

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Generate the noVNC Console URL

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/console

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.pvm-instance-console.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.monitor

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/console   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

        Response

        Status Code

        • Created

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Unprocessable Entity

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Update PVMInstance console laguage code

        PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/console

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.pvm-instance-console.update

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.monitor

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        Parameters to update a PVMInstance console required codepage

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Get all networks for this PVM Instance

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/networks

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.pvm-instance-network.list

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance-network.list

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/networks   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "networks": [
              {
                "externalIP": "xxx.xxx.xxx.xxx",
                "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/pvm-instances/8ab7ede5-540e-44bc-99cf-9c8bf1ac6297/networks/8838dcff-d423-4490-aa95-7bfed54adbae",
                "ip": "192.168.140.38",
                "ipAddress": "192.168.140.38",
                "macAddress": "fa:38:e6:a8:19:20",
                "networkID": "8838dcff-d423-4490-aa95-7bfed54adbae",
                "networkName": "public-192_168_140_32-29-VLAN_3305",
                "type": "fixed",
                "version": 4
              }
            ]
          }

        Perform network addition

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/networks

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance-network.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance-network.create

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        Add network to PVM Instance parameters

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/networks   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "networkID": "network-ID"
                }'

        Response

        A map containing information about a network address

        Status Code

        • Created

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Unprocessable Entity

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Remove all Address of Network from a PVM Instance

        DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/networks/{network_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance-network.delete

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance-network.delete

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • Network ID

        Remove a network from PVM Instance parameters

        • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/networks/{network_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Gone

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Get a PVM Instance's network information

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/networks/{network_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.pvm-instance-network.read

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance-network.read

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • Network ID

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/networks/{network_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "networks": [
              {
                "externalIP": "xxx.xxx.xxx.xxx",
                "ip": "192.168.140.38",
                "ipAddress": "192.168.140.38",
                "macAddress": "fa:38:e6:a8:19:20",
                "networkID": "8838dcff-d423-4490-aa95-7bfed54adbae",
                "networkName": "public-192_168_140_32-29-VLAN_3305",
                "type": "fixed",
                "version": 4
              }
            ]
          }

        Perform an operation on a PVMInstance

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/operations

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance.operation

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.operation

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        Parameters for the desired operations

        • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/<PVMInstance_ID>/operations   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "operationType":"boot"
                  "operation": {
                    "bootMode": "a", (Possible values: a, b, c, d)
                    "operatingMode": "manual", (Possible values: normal or manual)
                    "task":"iopresent (Possible values: dston, retrydump, consoleservice, iopreset, remotedstoff, remotedston, iopdump, dumprestart)
                  }
                }'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Unprocessable Entity

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Get all snapshots for this PVM Instance

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/snapshots

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.pvm-instance-snapshot.list

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.list

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/snapshots   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "snapshots": [
              {
                "action": "snapshot",
                "creationDate": "2022-08-16T08:02:05.000Z",
                "description": "test",
                "lastUpdateDate": "2022-08-16T08:02:14.000Z",
                "name": "test-abcd-snap",
                "percentComplete": 100,
                "pvmInstanceID": "2eee5ae2-66d2-435d-8e8b-32f80a65df23",
                "snapshotID": "4f37a134-4822-4e86-b56b-d95e82cb056c",
                "status": "available",
                "volumeSnapshots": {
                  "f57e242f-203d-4678-bde5-a8f1792e9117": "fa62198c-f614-4750-983a-671b67a38ef3"
                }
              },
              {
                "action": "snapshot",
                "creationDate": "2022-08-16T08:13:25.000Z",
                "description": "test",
                "lastUpdateDate": "2022-08-16T08:13:34.000Z",
                "name": "test-abcd-snap1",
                "percentComplete": 100,
                "pvmInstanceID": "2eee5ae2-66d2-435d-8e8b-32f80a65df23",
                "snapshotID": "59cadf8d-e553-4509-81f4-2889f2a21104",
                "status": "available",
                "volumeSnapshots": {
                  "f57e242f-203d-4678-bde5-a8f1792e9117": "c37a50dc-cda3-4cba-8254-2cc8b8ee806"
                }
              }
            ]
          }

        Create a PVM Instance snapshot

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/snapshots

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance-snapshot.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.snapshot

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        PVM Instance snapshot create parameters

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/snapshots   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "name": "VM1-SS",
                  "description": "Snapshot for VM1",
                  "volumeIDs":["VM1-7397dc00-0000035b-boot-0"]
                }'

        Response

        Status Code

        • Accepted

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Internal Server Error

        • Gateway Timeout

        Example responses
        • {
            "snapshotID": "je47ff70-55c9-4cf5-965a-ecdf90e7d78a"
          }

        Restore a PVM Instance snapshot

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/snapshots/{snapshot_id}/restore

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance-snapshot.restore

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.read

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • PVM Instance snapshot id

        Query Parameters

        • Action to take on a failed snapshot restore

          Allowable values: [retry,rollback]

        PVM Instance snapshot restore parameters

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/snapshots/{snapshot_id}/restore   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'
            -d '{
                "force": "true"
                }'

        Response

        Status Code

        • Accepted

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Internal Server Error

        Example responses
        • {
            "action": "action",
            "creationDate": "2000-01-23T04:56:07.000+00:00",
            "description": "snapshot restore",
            "lastUpdateDate": "2000-01-23T04:56:07.000+00:00",
            "name": "name",
            "percentComplete": 0,
            "pvmInstanceID": "pvmInstanceID",
            "snapshotID": "snapshotID",
            "status": "status",
            "volumeSnapshots": {
              "key": "volumeSnapshots"
            }
          }

        Get all the pvm instances for this cloud instance

        GET /pcloud/v2/cloud-instances/{cloud_instance_id}/pvm-instances

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.pvm-instance.list

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.pvm-instance.list

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Request Timeout

        • Internal Server Error

        Example responses
        • {
            "pvminstances": [
              {
                "configuration": {
                  "licenseRepositoryCapacity": 1,
                  "systemReferenceCodes": []
                },
                "cores": {
                  "assigned": 0.5,
                  "maximum": 0.75,
                  "minimum": 0.25
                },
                "creationDate": "2019-11-21T10:41:33.000Z",
                "deployment": {
                  "machineType": "s922",
                  "pinPolicy": "soft",
                  "processorMode": "shared"
                },
                "health": {
                  "status": "ATTENTION"
                },
                "host": {
                  "id": 82
                },
                "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/pvm-instances/6da0fd14-f7d3-4142-96f5-078df36c2539",
                "id": "6da0fd14-f7d3-4142-96f5-078df36c2539",
                "memory": {
                  "assigned": 16,
                  "maximum": 24,
                  "minimum": 12
                },
                "name": "Test_VTL",
                "networkPorts": {
                  "id": "c4af3a74-0852-4b1c-95d6-4b4b9bc040a7",
                  "ipProtocol": "IPv4",
                  "macAddress": "fa:f2:a4:c3:9e:a3",
                  "privateIP": "192.168.0.0",
                  "type": "static"
                },
                "operatingSystem": {
                  "type": "vtl",
                  "version": "Linux/CentOS Linux 3.10.0-957.27.2.el7.ppc647 (AltArch), 7 (AltArch)"
                },
                "placementGroup": {
                  "id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
                },
                "status": "ACTIVE",
                "virtualCores": {
                  "assigned": 15,
                  "maximum": 20,
                  "minimum": 10
                }
              },
              {
                "configuration": {
                  "softwareLicenses": {
                    "ibmiCSS": false,
                    "ibmiDBQ": true,
                    "ibmiPHA": false,
                    "ibmiRDS": false
                  },
                  "systemReferenceCodes": []
                },
                "cores": {
                  "assigned": 0.5,
                  "maximum": 0.75,
                  "minimum": 0.25
                },
                "creationDate": "2020-01-17T05:55:28.000Z",
                "deployment": {
                  "machineType": "s922",
                  "pinPolicy": "none",
                  "processorMode": "shared"
                },
                "health": {
                  "status": "WARNING"
                },
                "host": {
                  "id": 29
                },
                "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/pvm-instances/35c0e26c-e51f-4230-b556-49ada44d8831",
                "id": "35c0e26c-e51f-4230-b556-49ada44d8831",
                "memory": {
                  "assigned": 16,
                  "maximum": 24,
                  "minimum": 12
                },
                "name": "Test_IBMI",
                "networkPorts": {
                  "id": "1d57c166-d982-43a5-8487-f59e48632u2a",
                  "ipProtocol": "IPv4",
                  "macAddress": "fa:f2:5f:ea:15:20",
                  "privateIP": "",
                  "type": "dhcp"
                },
                "operatingSystem": {
                  "type": "ibmi",
                  "version": "V7R3M0 410 9"
                },
                "placementGroup": {
                  "id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
                },
                "status": "ACTIVE",
                "virtualCores": {
                  "assigned": 15,
                  "maximum": 20,
                  "minimum": 10
                }
              },
              {
                "configuration": {
                  "sapProfile": {
                    "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/sap/saptest-1x4",
                    "profileID": "saptest-1x4"
                  },
                  "systemReferenceCodes": []
                },
                "cores": {
                  "assigned": 4,
                  "maximum": 4,
                  "minimum": 4
                },
                "creationDate": "2021-09-26T02:55:28.000Z",
                "deployment": {
                  "machineType": "s922",
                  "pinPolicy": "none",
                  "processorMode": "dedicated",
                  "type": "SAP-RISE"
                },
                "health": {
                  "status": "OK"
                },
                "host": {
                  "id": 37
                },
                "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0/pvm-instances/35c0e26c-e51f-4230-b556-49adac4d8838",
                "id": "35c0e26c-e51f-4230-b556-49adac4d8838",
                "memory": {
                  "assigned": 16,
                  "maximum": 24,
                  "minimum": 12
                },
                "name": "Test_RHEL",
                "networkPorts": {
                  "id": "64782dfc-820f-45e7-9975-7320a548f116",
                  "ipProtocol": "IPv4",
                  "macAddress": "fa:f2:5f:3c:86:20",
                  "privateIP": "192.168.2.153",
                  "type": "static"
                },
                "operatingSystem": {
                  "type": "rhel",
                  "version": "Linux/Red Hat Enterprise Linux 4.16.0-305.45.1.el8_4.ppc8.4 (Ootpa), 8.4 (Ootpa)"
                },
                "placementGroup": {
                  "id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
                },
                "status": "ACTIVE",
                "virtualCores": {
                  "assigned": 15,
                  "maximum": 20,
                  "minimum": 10
                }
              }
            ]
          }

        Get detail of last capture job

        GET /pcloud/v2/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/capture

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.pvm-instance-capture.read

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.job.read

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/capture   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "createTimestamp": "2021-08-09T20:17:39.827Z",
            "id": "c113467d-8419-449c-8d81-259dda713d9f",
            "operation": [
              {
                "action": "vmCapture",
                "id": "b81ea020-bb47-452e-af96-8523c68e",
                "target": "pvmInstance"
              }
            ],
            "status": [
              {
                "message": "capturing VM to an image file",
                "progress": "capture",
                "state": "running"
              }
            ]
          }

        Add a capture pvm-instance to the jobs queue

        POST /pcloud/v2/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/capture

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance-capture.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.job.create

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        Parameters for the capture

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/capture   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "captureName": "deployable-image-name"
                  "captureDestination": "deployable-image-destination"
                }'

        Response

        Status Code

        • Accepted, pvm-instance capture successfully added to the jobs queue

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict, a conflict has prevented adding the pvm-instance capture job

        • Unprocessable Entity

        • Internal Server Error

        Example responses
        • {
            "href": "pcloud/v1/jobs/c113467d-8419-449c-8d81-259dda713d9f",
            "jobID": "c113467d-8419-449c-8d81-259dda713d9f"
          }

        List all volumes attached to a PVM Instance

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/volumes

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.pvm-instance-volume.list

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.list

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/volumes   -H 'Authorization: Bearer <>'   -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "volumes": [
              {
                "bootVolume": true,
                "bootable": true,
                "creationDate": "2020-04-22T16:16:08.000Z",
                "diskType": "tier1",
                "href": "/pcloud/v1/cloud-instances/66b2c271412a4726b4ba72db3637ee60/volumes/22f701a6-81a5-4df9-8c0b-eaec1c5e8bc7",
                "lastUpdateDate": "2020-04-22T16:16:21.000Z",
                "name": "testVolume",
                "pvmInstanceIDs": [
                  "6c98be83-bc60-441d-bd37-9894b58ec98c"
                ],
                "shareable": false,
                "size": 20,
                "state": "in-use",
                "volumeID": "22f701a6-81a5-4df9-8c0b-eaec1c5e8bc7",
                "volumePool": "Tier1-Flash-1",
                "volumeType": "Tier1-Flash-1",
                "wwn": 9.00507640081029e+31
              }
            ]
          }

        Detach a volume from a PVMInstance

        DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/volumes/{volume_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance-volume.delete

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.configure

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • Volume ID

        • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/volumes/{volume_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Detailed info of a volume attached to a PVMInstance

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/volumes/{volume_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.pvm-instance-volume.read

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.read

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • Volume ID

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/volumes/{volume_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "bootable": true,
            "creationDate": "2020-04-22T16:16:08.000Z",
            "diskType": "tier1",
            "lastUpdateDate": "2020-04-22T16:16:21.000Z",
            "name": "testVolume",
            "pvmInstanceIDs": [
              "6c98be83-bc60-441d-bd37-9894b58ec98c"
            ],
            "shareable": false,
            "size": 20,
            "state": "in-use",
            "volumeID": "22f701a6-81a5-4df9-8c0b-eaec1c5e8bc7",
            "volumePool": "Tier1-Flash-1",
            "volumeType": "Tier1-Flash-1",
            "wwn": 9.00507640081029e+31
          }

        Attach a volume to a PVMInstance

        Attach a volume to a PVMInstance.

        Note: Recommended for attaching data volumes. In the case of VMRM, it is recommended to use the 'Attach all volumes to a PVM instance' API for attaching the first boot volume.

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/volumes/{volume_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance-volume.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.configure

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • Volume ID

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/volumes/{volume_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Update a volume attached to a PVMInstance

        PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/volumes/{volume_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance-volume.update

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.configure

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • Volume ID

        Parameters to update a volume attached to a PVMInstance

        • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/volumes/{volume_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "deleteOnTermination": "true"
                }'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Set the PVMInstance volume as the boot volume

        Set the PVMInstance volume as the boot volume.

        Note: If a non-bootable volume is provided, it will be converted to a bootable volume and then attached.

        PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/volumes/{volume_id}/setboot

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance-boot-volume.update

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.configure

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        • Volume ID

        • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/volumes/{volume_id}/setboot   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        List all volumes for this cloud instance

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/volumes

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.cloud-instance-volume.list

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.list

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        Query Parameters

        • true or false, limits a volumes list to replication or non replication enabled volumes

        • A pvmInstance (id or name), limits a volumes list response to only volumes that have affinity to the pvmInstance

        • true or false, limits a volume list to auxiliary or non auxiliary volumes

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • [
            {
              "bootVolume": false,
              "bootable": true,
              "creationDate": "2019-11-21T10:41:38.000Z",
              "diskType": "tier1",
              "href": "/pcloud/v1/cloud-instances/969afb22cb004e807ab84b827abfa1b0/volumes/8a78e4b2-fc59-473e-9260-51a753634fd9",
              "lastUpdateDate": "2019-11-21T10:42:16.000Z",
              "name": "testr-6da0fd14-00000953-boot-0",
              "shareable": false,
              "size": 20,
              "state": "in-use",
              "volumeID": "8a78e4b2-fc59-473e-9260-51a753634fd9",
              "volumePool": "StoragePool-1",
              "volumeType": "StoragePool-1",
              "wwn": "wwn-id"
            },
            {
              "auxVolumeName": "aux_test-vol-1-ff2dd3a6-17ed44275611",
              "auxiliary": false,
              "bootVolume": false,
              "bootable": false,
              "creationDate": "2022-07-08T12:28:41.000Z",
              "diskType": "tier1",
              "href": "/pcloud/v1/cloud-instances/6dc23f8f500f44a180661501eee2d9f8/volumes/ff2dd3a6-17ed-453d-88fc-7f77882c4d81",
              "lastUpdateDate": "2022-07-08T12:28:47.000Z",
              "masterVolumeName": "volume-test-vol-1-ff2dd3a6-17ed",
              "mirroringState": "inconsistent_copying",
              "name": "test-vol-1",
              "primaryRole": "master",
              "pvmInstanceIDs": [],
              "replicationEnabled": true,
              "replicationStatus": "enabled",
              "replicationType": "global",
              "shareable": false,
              "size": 2,
              "state": "available",
              "volumeID": "ff2dd3a6-17ed-453d-88fc-7f77882c4d66",
              "volumePool": "Tier1-Flash-1",
              "volumeType": "Tier1-Flash-1-DR",
              "wwn": "6005076400810289700000000000B788"
            }
          ]

        Create a new data Volume

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/volumes

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.cloud-instance-volume.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.create

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        Parameters for the creation of a new data volume

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "diskType": "tier3",
                  "name": "volume-name",
                  "shareable": false,
                  "size": "volume-size"
                  "volumePool": "StoragePool1"
                  “affinityPolicy”: “anti-affinity”
                  “antiAffinityVolumes”: [“data-volume-1”,”data-volume-2”]
                }'     

        Response

        Status Code

        • Accepted

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Unprocessable Entity

        • Internal Server Error

        Example responses
        • {
            "bootVolume": false,
            "bootable": false,
            "creationDate": "2021-08-31T19:26:55.000Z",
            "diskType": "tier3",
            "href": "/pcloud/v1/cloud-instances/a28e43001b7748b0acbdfb2d36288643/volumes/322d6d22-5006-4813-9f9c-92d6acea84ee",
            "lastUpdateDate": "1970-01-01T00:00:00.000Z",
            "name": "data-volume-1",
            "pvmInstanceIDs": [],
            "replicationStatus": "not-capable",
            "shareable": false,
            "size": 2000,
            "state": "creating",
            "volumeID": "322d6d22-5006-4813-9f9c-92d6acea84ee",
            "volumePool": "Tier3-Flash-1",
            "volumeType": "Tier3-Flash-1",
            "wwn": "322d6d22-5006-4813-9f9c-92d6acea84ee"
          }

        Create a volume clone for specified volumes

        This API is deprecated, use v2 clone API to perform the volume clone.

        Note: Support for this API will be available till 31st March 2023.

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/volumes/clone

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.volume-clone.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.clone

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        Parameters for the cloning of volumes

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/clone   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "volumeIDs": ["volume-id-1","volume-id-2"],
                  "displayName": "name-of-clone"
                }'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Internal Server Error

        Example responses
        • {
            "clonedVolumes": {
              "volume-id-1": "cloned-volume-id-1",
              "volume-id-2": "cloned-volume-id-2"
            }
          }

        Delete a cloud instance volume

        DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/volumes/{volume_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.cloud-instance-volume.delete

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.delete

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Volume ID

        • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/{volume_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Gone

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Detailed info of a volume

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/volumes/{volume_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.cloud-instance-volume.read

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.read

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Volume ID

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/{volume_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "bootable": false,
            "creationDate": "2020-01-10T16:43:39.000Z",
            "diskType": "tier3",
            "lastUpdateDate": "2020-01-13T17:58:45.000Z",
            "name": "tim-data-vol-4",
            "shareable": false,
            "size": 32,
            "state": "in-use",
            "volumeID": "e8cc1226-a4d5-46c8-875c-312b8b5bdda6",
            "volumePool": "StoragePool-1",
            "volumeType": "StoragePool-1",
            "wwn": "wwn-id"
          }

        Update a cloud instance volume

        PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/volumes/{volume_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.cloud-instance-volume.update

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.update

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Volume ID

        Parameters to update a cloud instance volume

        • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/{volume_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "name": "volume-name"
                  "size": "volume-size"
                  "shareable": "true"
                  "bootable": "false"
                }'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Unprocessable Entity

        • Internal Server Error

        Example responses
        • {
            "bootable": false,
            "creationDate": "2020-01-10T16:43:39.000Z",
            "diskType": "tier1",
            "lastUpdateDate": "2020-01-13T17:58:45.000Z",
            "name": "test-data-vol-4",
            "shareable": true,
            "size": 32,
            "state": "in-use",
            "volumeID": "e8cc1226-a4d5-46c8-875c-312b8b5bdda6"
          }

        Perform an action on a Volume

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/volumes/{volume_id}/action

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.cloud-instance-volume.action

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.operation

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Volume ID

        Parameters for the desired action

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/{volume_id}/action   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "name": "volume-name"
                  "size": "volume-size"
                  "shareable": true
                  "replicationEnabled": true
                }'

        Response

        Status Code

        • Accepted

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Get a list of flashcopy mappings of a given volume

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/volumes/{volume_id}/flash-copy-mappings

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.volume-flash-copy.read

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.read

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Volume ID

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/{volume_id}/flash-copy-mappings   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Too Many Requests

        • Internal Server Error

        Example responses
        • [
            {
              "flashCopyName": "fcmap44",
              "sourceVolumeName": "volume-vol-demo-b52b93df-746c",
              "startTime": "0001-01-01T00:00:00.000Z",
              "status": "stopped",
              "targetVolumeName": "chg_volume-vol-demo-b52b93df-746c"
            },
            {
              "copyRate": "50,",
              "flashCopyName": "fcmap45",
              "sourceVolumeName": "chg_volume-vol-demo-b52b93df-746c",
              "startTime": "0001-01-01T00:00:00.000Z",
              "status": "idle_or_copied",
              "targetVolumeName": "volume-vol-demo-b52b93df-746c"
            }
          ]

        Get remote copy relationship of a volume

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/volumes/{volume_id}/remote-copy

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.volume-remote-copy.read

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.read

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Volume ID

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/{volume_id}/remote-copy   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Too Many Requests

        • Internal Server Error

        Example responses
        • {
            "auxChangedVolumeName": "chg_aux_volume-vol-demo-b52b93df-746c1210664",
            "auxVolumeName": "aux_volume-vol-demo-b52b93df-746c1210664",
            "copyType": "global",
            "cyclePeriodSeconds": "500,",
            "cyclingMode": "multi",
            "freezeTime": "2022-09-14T06:10:42.000Z",
            "id": "b52b93df-746c-4ff0-9885-292b4be86sdsd",
            "masterChangedVolumeName": "chg_volume-vol-demo-b52b93df-746c",
            "masterVolumeName": "volume-vol-demo-b52b93df-746c",
            "name": "rcrel23",
            "primaryRole": "master",
            "progress": "100,",
            "remoteCopyID": "101",
            "state": "consistent_copying"
          }

        Attach all volumes to a PVMInstance

        Attach all volumes to a PVMInstance.

        Note: In the case of VMRM, if a single volume ID is provided in the 'volumeIDs' field, that volume will be converted to a bootable volume and then attached.

        POST /pcloud/v2/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}/volumes

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.pvm-instance-volume.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.configure

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • PCloud PVM Instance ID

        Parameter to attach volumes to a PVMInstance

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/pvm-instances/{pvm_instance_id}/volumes   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "volumeIDs": ["volID1","volID2"]
                }'

        Response

        Status Code

        • Accepted

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Create multiple data volumes from a single definition

        POST /pcloud/v2/cloud-instances/{cloud_instance_id}/volumes

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.cloud-instance-volume.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.create

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        Parameters for creating multiple volumes

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/{cloud_instance_id}/volumes   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                 "diskType": "tier3",
                  "name": "volume-name",
                  "shareable": false,
                  "size": "volume-size"
                  "volumePool": "StoragePool1"
                  “affinityPolicy”: “anti-affinity”
                  “antiAffinityVolumes”: [“data-volume-1”,”data-volume-2”]
               }'

        Response

        Status Code

        • Created

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Unprocessable Entity

        • Internal Server Error

        Example responses
        • {
            "volumes": [
              {
                "bootVolume": false,
                "bootable": false,
                "creationDate": "2020-08-04T15:34:28.000Z",
                "diskType": "tier3",
                "href": "/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/{volume_id}",
                "lastUpdateDate": "2020-08-04T15:34:28.000Z",
                "name": "base-name-1",
                "pvmInstanceIDs": [],
                "shareable": false,
                "size": 5,
                "state": "creating",
                "volumeID": "<uuid>",
                "volumePool": "Tier3-Flash-1",
                "volumeType": "Tier3-Flash-1",
                "wwn": "322d6d22-5006-4813-9f9c-92d6acea84ee"
              },
              {
                "bootVolume": false,
                "bootable": false,
                "creationDate": "2020-08-04T15:34:28.000Z",
                "diskType": "tier1",
                "href": "/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/{volume_id}",
                "lastUpdateDate": "2020-08-04T15:34:28.000Z",
                "name": "base-name-2",
                "pvmInstanceIDs": [],
                "shareable": false,
                "size": 5,
                "state": "creating",
                "volumeID": "<uuid>",
                "volumePool": "Tier1-Flash-1",
                "volumeType": "Tier1-Flash-1",
                "wwn": "322d6d22-5006-4813-9f9c-92d6acea84ee"
              }
            ]
          }

        Get the list of volumes-clone request for a cloud instance

        GET /pcloud/v2/cloud-instances/{cloud_instance_id}/volumes-clone

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.volume-clone.list

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.list

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        Query Parameters

        • volumes-clone filter to limit list items: prepare - includes status values (preparing, prepared) start - includes status values (starting, available) execute - includes status values (executing, available-rollback) cancel - includes status values (cancelling) completed - includes status values (completed) failed - includes status values (failed) cancelled - includes status values (cancelled) finalized - included status values (completed, failed, cancelled)

          Allowable values: [prepare,start,execute,cancel,completed,failed,cancelled,finalized]

        • curl --location --request GET   http://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/volumes-clone   -H 'Authorization: Bearer <> '     -H 'CRN:'     -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • [
            {
              "action": "prepare",
              "creationDate": "2020-09-28T15:09:33.829-05:00",
              "lastUpdateDate": "2020-09-28T15:09:50.749-05:00",
              "name": "test2-Sep28",
              "percentComplete": 70,
              "status": "preparing",
              "volumesCloneID": "a4945ba6-5b4c-45b5-8312-485e3ac1ec3d"
            },
            {
              "action": "start",
              "creationDate": "2020-09-28T14:42:38.618-05:00",
              "lastUpdateDate": "2020-09-28T14:44:52.386-05:00",
              "name": "test1-Sep28",
              "percentComplete": 100,
              "status": "available",
              "volumesCloneID": "8553bb63-7eac-405c-af8c-ccfe71186ca8"
            }
          ]

        Create a new volumes clone request and initiates the Prepare action

        Requires a minimum of two volumes. Requires a minimum of one volume to be in the in-use state. Requires a unique volumes clone name. Prepare action does the preparatory work for creating the snapshot volumes.

        Note: If there is an existing prepare, user cannot trigger another prepare for the same set of volumes. Prepare should be followed by start and execute. If existing prepare does not have to be used then it should be first cancelled before the next prepare operation.

        POST /pcloud/v2/cloud-instances/{cloud_instance_id}/volumes-clone

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.volume-clone.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.clone

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        Parameters for preparing a set of volumes to be cloned

        • curl --location --request POST   http://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/volumes-clone   -H 'Authorization: Bearer <> '     -H 'CRN:'     -H 'Content-Type: application/json'
            --data-raw '{
            "name":"test1-Sep28",
            "volumeIDs": [
            "test-vm-capture-1-boot",
            "test-vm-capture-1-data-1",
            "test-vm-capture-1-data-2",
            "test-vm-capture-1-data-3",
            "test-vm-capture-1-data-4"
            ]
            }'

        Response

        Status Code

        • Accepted

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "action": "prepare",
            "creationDate": "2020-09-28T14:42:38.618-05:00",
            "lastUpdateDate": "2020-09-28T14:42:38.618-05:00",
            "name": "test1-Sep28",
            "percentComplete": 0,
            "status": "preparing",
            "volumesCloneID": "8553bb63-7eac-405c-af8c-ccfe71186ca8"
          }

        Delete a volumes-clone request

        DELETE /pcloud/v2/cloud-instances/{cloud_instance_id}/volumes-clone/{volumes_clone_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.volume-clone.delete

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.clone

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Volumes Clone ID

        • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/volumes-clone/{volumes_clone_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        No Sample Response

        This method does not specify any sample responses.

        Get the details for a volumes-clone request

        GET /pcloud/v2/cloud-instances/{cloud_instance_id}/volumes-clone/{volumes_clone_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.volume-clone.read

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.clone

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Volumes Clone ID

        • curl --location --request GET   http://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/volumes-clone/{volumes_clone_id}       -H 'Authorization: Bearer <>'
                -H 'CRN:'
                -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "action": "execute",
            "clonedVolumes": [
              {
                "clone": {
                  "name": "clone-tim-xyz-23222-5",
                  "volumeID": "38809cf7-0c9e-4c21-b4f5-b3b99305bf1a"
                },
                "source": {
                  "name": "tim-vm-capture-1-data-2",
                  "volumeID": "f2e3d534-c2af-4ead-9ba5-54ccb43ead79"
                }
              },
              {
                "clone": {
                  "name": "clone-tim-xyz-23222-4",
                  "volumeID": "920863d2-f6c1-4e21-8df5-d016bf6c10ef"
                },
                "source": {
                  "name": "tim-vm-capture-1-data-3",
                  "volumeID": "bfa57ddb-dcfa-4aad-aee2-e63a95519a07"
                }
              },
              {
                "clone": {
                  "name": "clone-tim-xyz-23222-1",
                  "volumeID": "67316c07-877f-4e2b-8126-dce1e1d36302"
                },
                "source": {
                  "name": "tim-test-capture-1-boot",
                  "volumeID": "cf367e26-12b7-4870-9cf3-bf9a75e565ca"
                }
              },
              {
                "clone": {
                  "name": "clone-tim-xyz-23222-3",
                  "volumeID": "3e2c0def-783d-426b-9121-56c7cfd313bb"
                },
                "source": {
                  "name": "tim-vm-capture-1-data-4",
                  "volumeID": "3b58f6ee-095e-4e95-9c82-615a07e7d661"
                }
              },
              {
                "clone": {
                  "name": "clone-tim-xyz-23222-2",
                  "volumeID": "d83b83e0-a8db-4ecd-a660-58fe13a12dba"
                },
                "source": {
                  "name": "tim-vm-capture-1-data-1",
                  "volumeID": "d313abd1-827d-4803-9712-122aa9b667b7"
                }
              }
            ],
            "creationDate": "2020-09-28T14:42:38.618-05:00",
            "lastUpdateDate": "2020-09-28T14:49:03.914-05:00",
            "name": "test1-Sep28",
            "percentComplete": 100,
            "status": "completed",
            "volumesCloneID": "8553bb63-7eac-405c-af8c-ccfe71186ca8"
          }

        Cancel a volumes-clone request

        Initiates the cleanup action that performs the cleanup of the preparatory clones and snapshot volumes.

        POST /pcloud/v2/cloud-instances/{cloud_instance_id}/volumes-clone/{volumes_clone_id}/cancel

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.volume-clone.cancel

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.clone

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Volumes Clone ID

        Parameters for cancelling a volumes-clone request

        • curl --location --request POST   http://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/volumes-clone/{volumes_clone_id}/cancel     -H 'Authorization: Bearer <>'
              -H 'CRN:'
              -H 'Content-Type: application/json'
              -d '{
                 "force": true
                  }'

        Response

        Status Code

        • Accepted

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "action": "cancel",
            "creationDate": "2020-09-28T15:09:33.829-05:00",
            "lastUpdateDate": "2020-09-28T15:16:31.950-05:00",
            "name": "test2-Sep28",
            "percentComplete": 0,
            "status": "cancelling",
            "volumesCloneID": "a4945ba6-5b4c-45b5-8312-485e3ac1ec3d"
          }

        Initiate the Execute action for a volumes-clone request

        Execute action creates the cloned volumes using the volume snapshots.

        POST /pcloud/v2/cloud-instances/{cloud_instance_id}/volumes-clone/{volumes_clone_id}/execute

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.volume-clone.execute

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.clone

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Volumes Clone ID

        Parameters for the cloning of volumes

        • curl --location --request POST   http://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/volumes-clone/{volumes_clone_id}/execute       -H 'Authorization: Bearer <>'
                -H 'CRN:'
                -H 'Content-Type: application/json'
                -d '{
                    "name":"test-volume",
                    "rollbackPrepare": false
                    }'

        Response

        Status Code

        • Accepted

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "action": "execute",
            "creationDate": "2020-09-28T14:42:38.618-05:00",
            "lastUpdateDate": "2020-09-28T14:47:04.309-05:00",
            "name": "test1-Sep28",
            "percentComplete": 0,
            "status": "executing",
            "volumesCloneID": "8553bb63-7eac-405c-af8c-ccfe71186ca8"
          }

        Initiate the Start action for a volumes-clone request

        Start action starts the consistency group to initiate the flash copy.

        POST /pcloud/v2/cloud-instances/{cloud_instance_id}/volumes-clone/{volumes_clone_id}/start

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.volume-clone.start

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.start

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Volumes Clone ID

        • curl --location --request POST   http://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/volumes-clone/{volumes_clone_id}/start   -H 'Authorization: Bearer <>'
            -H 'CRN:'
            -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "action": "start",
            "creationDate": "2020-09-28T14:42:38.618-05:00",
            "lastUpdateDate": "2020-09-28T14:44:52.386-05:00",
            "name": "test1-Sep28",
            "percentComplete": 100,
            "status": "available",
            "volumesCloneID": "8553bb63-7eac-405c-af8c-ccfe71186ca8"
          }

        Create a volume clone for specified volumes

        POST /pcloud/v2/cloud-instances/{cloud_instance_id}/volumes/clone

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.volume-clone.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.clone

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        Parameters for the cloning of volumes

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/clone   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "name": "base-name",
                  "volumeIDs": [
                        "3f3a0c29-d459-4397-920c-10e42eecb658",
                        "my-data-volume"]
                }'

        Response

        Status Code

        • Accepted

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • href:"pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/clone-tasks/fe14b0f3-9027-41c0-b804-760bf95ffc1d" cloneTaskID:"fe14b0f3-9027-41c0-b804-760bf95ffc1d"

        Get the status of a volumes clone request for the specified clone task ID

        GET /pcloud/v2/cloud-instances/{cloud_instance_id}/volumes/clone-tasks/{clone_task_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.volume-clone.read

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.volume.clone

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • Volumes Clone Task ID

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v2/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/clone-tasks/{clone_task_id} \

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Internal Server Error

        Example responses
        • {
            "clonedVolumes": [
              {
                "clonedVolumeID": "d21f6941-aeb8-467e-9bd1-c11c0c34cd77",
                "sourceVolumeID": "3a70a152-c097-4892-914f-57e33aa8af10"
              },
              {
                "clonedVolumeID": "a649a8dc-8191-490b-8a56-c1da40ae0529",
                "sourceVolumeID": "9af30313-79d5-4e40-bedf-8e4cd30fd3fb"
              }
            ]
          }

        Get list of SAP profiles

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/sap

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.sap.list

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.sap.list

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/sap   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

        Response

        Status Code

        • OK

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Internal Server Error

        Example responses
        • {
            "profiles": [
              {
                "certified": true,
                "cores": 1,
                "memory": 4,
                "profileID": "test-1x4",
                "type": "compute"
              },
              {
                "certified": false,
                "cores": 16,
                "memory": 1600,
                "profileID": "test-16x1600",
                "type": "balanced"
              },
              {
                "certified": false,
                "cores": 20,
                "memory": 2000,
                "profileID": "test-20x2000",
                "type": "balanced"
              }
            ]
          }

        Create a new SAP PVM Instance

        POST /pcloud/v1/cloud-instances/{cloud_instance_id}/sap

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.modify

          Grants access to this and other methods.

        • power-iaas.sap.create

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.sap.create

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        Parameters for the creation of a new SAP PVM Instance

        • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/sap   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                  "imageID": "01234567-abcd-abcd-abcd-012345678901",
                  "name": "test-instance",
                  "networks": [
                    {
                      "networkID": "01234567-abcd-abcd-abcd-012345678902"
                    }
                  ],
                  "pinPolicy": "none",
                  "placementGroup": "01234567-abcd-abcd-abcd-012345678906",
                  "profileID": "profile-name",
                  "sshKeyName": "ssh-key-name",
                  "storageAffinity": {
                    "affinityPolicy": "anti-affinity",
                    "antiAffinityPVMInstances": null,
                    "antiAffinityVolumes": [
                      "01234567-abcd-abcd-abcd-012345678903"
                    ]
                  },
                  "storageType": "tier1",
                  "sysType": "e980",
                  "userData": "encoded-base64-user-data",
                  "volumeIDs": [
                    "01234567-abcd-abcd-abcd-012345678904",
                    "01234567-abcd-abcd-abcd-012345678905"
                  ]
                }

        Response

        A list of PVMInstances

        Status Code

        • OK

        • Created

        • Accepted

        • Bad Request

        • Unauthorized

        • Forbidden

        • Not Found

        • Conflict

        • Unprocessable Entity

        • Internal Server Error

        Example responses
        • [
            {
              "addresses": [
                {
                  "networkID": "26038c24-fdde-4982-8d86-eaf01ab0cf7d"
                }
              ],
              "creationDate": "0001-01-01T00:00:00.000Z",
              "diskSize": 100,
              "imageID": "ed37bc0b-1968-4d88-96a2-30fe4e977e1b",
              "memory": 4,
              "networkIDs": [
                "26038c24-fdde-4982-8d86-eaf01ab0cf7d"
              ],
              "networks": [
                {
                  "networkID": "26038c24-fdde-4982-8d86-eaf01ab0cf7d"
                }
              ],
              "osType": "rhel",
              "pinPolicy": "none",
              "procType": "dedicated",
              "processors": 1,
              "pvmInstanceID": "72820ebc-97fb-4898-a763-4a6ccfc60dff",
              "sapProfile": {
                "href": "/pcloud/v1/cloud-instances/a28e43001b7748b0acbdfb2d36288643/sap/tinytest-1x4",
                "profileID": "tinytest-1x4"
              },
              "serverName": "test-rj-sap",
              "srcs": [],
              "status": "BUILDING",
              "storagePool": "Tier1-Flash-2",
              "storageType": "tier1",
              "sysType": "e980",
              "updatedDate": "0001-01-01T00:00:00.000Z",
              "volumeIDs": []
            }
          ]

        Get the information on an SAP profile

        GET /pcloud/v1/cloud-instances/{cloud_instance_id}/sap/{sap_profile_id}

        Authorization

        To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

        • power-iaas.cloud-instance.read

          Grants access to this and other methods.

        • power-iaas.sap.read

        Auditing

        Calling this method generates the following auditing event.

        • power-iaas.sap.read

        Request

        Path Parameters

        • Cloud Instance ID of a PCloud Instance

        • SAP Profile ID

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          No Sample Response

          This method does not specify any sample responses.

          Get the list of Shared Processor Pools for a cloud instance

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/shared-processor-pools

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.shared-processor-pool.list

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.shared-processor-pool.list

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/shared-processor-pools   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "sharedProcessorPools": [
                {
                  "allocatedCores": 5,
                  "availableCores": 0,
                  "hostGroup": "s922",
                  "hostID": 308,
                  "id": "5f0e3a10-0a33-4197-bb51-c9db4f530951",
                  "name": "SPP1",
                  "reservedCores": 5,
                  "sharedProcessorPoolPlacementGroups": [
                    {
                      "id": "ad20e260-b4cd-4d51-aad7-95f75487dc67",
                      "name": "SPPPG4",
                      "policy": "anti-affinity"
                    },
                    {
                      "id": "402f58c5-bbe5-4d07-9853-8a7bc6522717",
                      "name": "SPPPG3",
                      "policy": "affinity"
                    }
                  ],
                  "status": "active",
                  "statusDetail": "shared processor pool SPP1 is active"
                },
                {
                  "allocatedCores\"": 0,
                  "availableCores": 4,
                  "hostGroup": "e980",
                  "hostID": 408,
                  "id": "4f22601f-28e2-4eb3-b6ef-6d5a6328ea3b",
                  "name": "spp_2",
                  "reservedCores": 4,
                  "sharedProcessorPoolPlacementGroups": [],
                  "status": "active",
                  "statusDetail": "shared processor pool spp_2 is active"
                }
              ]
            }

          Create a new Shared Processor Pool

          POST /pcloud/v1/cloud-instances/{cloud_instance_id}/shared-processor-pools

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.shared-processor-pool.create

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.shared-processor-pool.create

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          Parameters for the creation of a new Shared Processor Pool

          • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/shared-processor-pools   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                    "hostGroup": "string"
                    "name": "string"
                    "placementGroupID": "string"
                    "reservedCores": 0 
                  }'

          Response

          Status Code

          • Accepted

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Conflict

          • Unprocessable Entity

          • Internal Server Error

          Example responses
          • {
              "id": "95e79570-1339-46da-9999-2a49ee141dda",
              "name": "SPP2",
              "reservedCores": 3,
              "status": "configuring",
              "statusDetail": "“configuration of shared processor pool SPP2 in progress”"
            }

          Delete a Shared Processor Pool from a cloud instance

          DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/shared-processor-pools/{shared_processor_pool_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.shared-processor-pool.delete

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.shared-processor-pool.delete

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • Shared Processor Pool ID or Name

          • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/shared-processor-pools/${SPP_ID}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \                        

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Conflict

          • Internal Server Error

          No Sample Response

          This method does not specify any sample responses.

          Get the detail of a Shared Processor Pool for a cloud instance

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/shared-processor-pools/{shared_processor_pool_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.shared-processor-pool.read

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.shared-processor-pool.read

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • Shared Processor Pool ID or Name

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/shared-processor-pools/${SPP_ID}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "allocatedCores": 5,
              "availableCores": 0,
              "hostGroup": "s922",
              "hostID": 308,
              "id": "5f0e3a10-0a33-4197-bb51-c9db4f530951",
              "name": "SPP1",
              "reservedCores": 5,
              "sharedProcessorPoolPlacementGroups": [
                {
                  "id": "ad20e260-b4cd-4d51-aad7-95f75487dc67",
                  "name": "SPPPG4",
                  "policy": "anti-affinity"
                },
                {
                  "id": "402f58c5-bbe5-4d07-9853-8a7bc6522717",
                  "name": "SPPPG3",
                  "policy": "affinity"
                }
              ],
              "status": "active",
              "statusDetail": "shared processor pool SPP1 is active"
            }

          Update a Shared Processor Pool for a cloud instance

          PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/shared-processor-pools/{shared_processor_pool_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.shared-processor-pool.update

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.shared-processor-pool.update

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • Shared Processor Pool ID or Name

          Parameters for the update of a Shared Processor Pool

          • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/shared-processor-pools/${SPP_ID}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                    "name": "string"                              
                    "reservedCores": 0 
                  }'

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "allocatedCores": 6,
              "availableCores": 0,
              "hostGroup": "s922",
              "hostID": 308,
              "id": "5f0e3a10-0a33-4197-bb51-c9db4f530951",
              "name": "SPP_DB",
              "reservedCores": 6,
              "sharedProcessorPoolPlacementGroups": [],
              "status": "active",
              "statusDetail": "shared processor pool SPP1 is active"
            }

          List all PVM instance snapshots for this cloud instance

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/snapshots

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.cloud-instance-snapshot.list

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.image.list

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/snapshots   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "snapshots": [
                {
                  "action": "snapshot1",
                  "creationDate": "2022-08-16T08:02:05.000Z",
                  "description": "test1",
                  "lastUpdateDate": "2022-08-16T08:02:14.000Z",
                  "name": "test-abc-snap1",
                  "percentComplete": 100,
                  "pvmInstanceID": "2eee5ae2-66d2-435d-8e8b-32f80a65df23",
                  "snapshotID": "4f37a134-4822-4e86-b56b-d95e82cb056c",
                  "status": "available",
                  "volumeSnapshots": {
                    "f57e242f-203d-4678-bde5-a8f1792e9117": "fa62198c-f614-4750-983a-671b67a38ef3"
                  }
                },
                {
                  "action": "snapshot2",
                  "creationDate": "2022-09-16T08:02:05.000Z",
                  "description": "test2",
                  "lastUpdateDate": "2022-09-16T08:02:14.000Z",
                  "name": "test-abc-snap2",
                  "percentComplete": 100,
                  "pvmInstanceID": "3abc5bf3-66d2-435d-8e8b-33f80a65df24",
                  "snapshotID": "5g48b245-4822-4e86-b56b-d95e82cc167d",
                  "status": "available",
                  "volumeSnapshots": {
                    "g68f353g-203d-4678-bde5-a8f1792f0228": "gb73209d-f614-4750-983a-782c78b49ff4"
                  }
                }
              ]
            }

          Delete a PVM instance snapshot of a cloud instance

          DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/snapshots/{snapshot_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.cloud-instance-snapshot.delete

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.image.delete

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • PVM Instance snapshot id

          • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/snapshots/{snapshot_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

          Response

          Status Code

          • Accepted

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Gone

          • Internal Server Error

          No Sample Response

          This method does not specify any sample responses.

          Get the detail of a snapshot

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/snapshots/{snapshot_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.cloud-instance-snapshot.read

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.image.read

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • PVM Instance snapshot id

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/snapshots/{snapshot_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "snapshots": [
                {
                  "action": "snapshot",
                  "creationDate": "2022-08-16T08:02:05.000Z",
                  "description": "test",
                  "lastUpdateDate": "2022-08-16T08:02:14.000Z",
                  "name": "test-abcd-snap",
                  "percentComplete": 100,
                  "pvmInstanceID": "2eee5ae2-66d2-435d-8e8b-32f80a65df23",
                  "snapshotID": "4f37a134-4822-4e86-b56b-d95e82cb056c",
                  "status": "available",
                  "volumeSnapshots": {
                    "f57e242f-203d-4678-bde5-a8f1792e9117": "fa62198c-f614-4750-983a-671b67a38ef3"
                  }
                },
                {
                  "action": "snapshot",
                  "creationDate": "2022-08-16T08:13:25.000Z",
                  "description": "test1",
                  "lastUpdateDate": "2022-08-16T08:13:34.000Z",
                  "name": "test-abcd-snap1",
                  "percentComplete": 100,
                  "pvmInstanceID": "2eee5ae2-66d2-435d-8e8b-32f80a65df23",
                  "snapshotID": "59cadf8d-e553-4509-81f4-2889f2a21104",
                  "status": "available",
                  "volumeSnapshots": {
                    "f57e242f-203d-4678-bde5-a8f1792e9117": "c37a50dc-cda3-4cba-8254-2cc8b8ee806"
                  }
                }
              ]
            }

          Update a PVM instance snapshot

          PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/snapshots/{snapshot_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.cloud-instance-snapshot.update

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.image.update

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • PVM Instance snapshot id

          Parameters for the update of a PVM instance snapshot

          • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/snapshots/{snapshot_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                    "name": "name-change",
                    "description": "eescription-change"
                  }'

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          No Sample Response

          This method does not specify any sample responses.

          Get the list of Shared Processor Pool Placement Groups for a cloud instance

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/spp-placement-groups

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.spp-placement-group.list

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.spp-placement-group.list

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "sppPlacementGroups": [
                {
                  "id": "95445036-ee96-454d-869e-535ddc45c4a1",
                  "memberSharedProcessorPools": [],
                  "name": "SPG_Anti",
                  "policy": "anti-affinity"
                },
                {
                  "id": "402f58c5-bbe5-4d07-9853-8a7bc6522717",
                  "memberSharedProcessorPools\"": [
                    "SPP1"
                  ],
                  "name": "SPPPG3",
                  "policy\"": "affinity"
                }
              ]
            }

          Create a new Shared Processor Pool Placement Group

          POST /pcloud/v1/cloud-instances/{cloud_instance_id}/spp-placement-groups

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.spp-placement-group.create

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.spp-placement-group.create

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          Parameters for the creation of a Shared Processor Pool Placement Group

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Conflict

          • Unprocessable Entity

          • Internal Server Error

          Example responses
          • {
              "id": "95445036-ee96-454d-869e-535ddc45c4a1",
              "memberSharedProcessorPools": [],
              "name": "Tim_Anti",
              "policy": "anti-affinity"
            }

          Delete a Shared Processor Pool Placement Group from a cloud instance

          DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/spp-placement-groups/{spp_placement_group_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.spp-placement-group.delete

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.spp-placement-group.delete

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • Shared Processor Pool Placement Group ID or Name

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Conflict

          • Internal Server Error

          No Sample Response

          This method does not specify any sample responses.

          Get the detail of a Shared Processor Pool Placement Group for a cloud instance

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/spp-placement-groups/{spp_placement_group_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.spp-placement-group.read

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.spp-placement-group.read

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • Shared Processor Pool Placement Group ID or Name

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "id": "95445036-ee96-454d-869e-535ddc45c4a1",
              "memberSharedProcessorPools": [],
              "name": "Tim_Anti",
              "policy": "anti-affinity"
            }

          Delete Shared Processor Pool member from a Shared Processor Pool Placement Group

          DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/spp-placement-groups/{spp_placement_group_id}/members/{shared_processor_pool_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.spp-placement-group-member.delete

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.spp-placement-groups.delete

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • Shared Processor Pool Placement Group ID or Name

          • Shared Processor Pool ID or Name

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Conflict

          • Internal Server Error

          Example responses
          • {
              "id": "95445036-ee96-454d-869e-535ddc45c4a1",
              "memberSharedProcessorPools": [],
              "name": "Tim_Anti",
              "policy": "anti-affinity"
            }

          Add Shared Processor Pool as a member of a Shared Processor Pool Placement Group

          POST /pcloud/v1/cloud-instances/{cloud_instance_id}/spp-placement-groups/{spp_placement_group_id}/members/{shared_processor_pool_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.spp-placement-group-member.create

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.spp-placement-groups.update

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • Shared Processor Pool Placement Group ID or Name

          • Shared Processor Pool ID or Name

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Conflict

          • Unprocessable Entity

          • Internal Server Error

          Example responses
          • {
              "id": "95445036-ee96-454d-869e-535ddc45c4a1",
              "memberSharedProcessorPools": [
                "SPP1"
              ],
              "name": "Tim_Anti",
              "policy": "anti-affinity"
            }

          Storage capacity for all available storage pools in a region

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/storage-capacity/storage-pools

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.pod-capacity.view

            Required for satellite locations, ignored for public data centers.

          • power-iaas.storage-capacity-pool.list

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.storage-capacity.list

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • curl --location --request GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/storage-capacity/storage-pools   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Storage capacity for all storage pools

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "maximumStorageAllocation": {
                "maxAllocationSize": 147401,
                "storagePool": "Tier1-Pool-1",
                "storageType": "tier1"
              },
              "storagePoolsCapacity": [
                {
                  "maxAllocationSize": 7680,
                  "poolName": "Tier1-Pool-cp1",
                  "storageType": "tier1",
                  "totalCapacity": 10240
                },
                {
                  "maxAllocationSize": 147401,
                  "poolName": "Tier1-Pool-1",
                  "storageType": "tier1",
                  "totalCapacity": 182906
                },
                {
                  "maxAllocationSize": 9214,
                  "poolName": "Tier3-Pool-cp2",
                  "storageType": "tier3",
                  "totalCapacity": 10240
                }
              ]
            }

          Storage capacity for a storage pool in a region

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/storage-capacity/storage-pools/{storage_pool_name}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.pod-capacity.view

            Required for satellite locations, ignored for public data centers.

          • power-iaas.storage-capacity-pool.read

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.storage-capacity.read

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • Storage pool name

          • curl --location --request GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/storage-capacity/storage-pools/Tier1-Pool-cp1'   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Storage pool capacity

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "maxAllocationSize": 7680,
              "poolName": "Tier1-Pool-cp1",
              "storageType": "tier1",
              "totalCapacity": 10240
            }

          Storage capacity for all available storage types in a region

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/storage-capacity/storage-types

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.storage-capacity-type.list

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.storage-capacity.list

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • curl --location --request GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/storage-capacity/storage-types   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Storage types capacity

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          No Sample Response

          This method does not specify any sample responses.

          Storage capacity for a storage type in a region

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/storage-capacity/storage-types/{storage_type_name}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.pod-capacity.view

            Required for satellite locations, ignored for public data centers.

          • power-iaas.storage-capacity-type.read

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.storage-capacity.read

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • Storage type name

          • curl --location --request GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/storage-capacity/storage-types/tier3   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Storage type capacity

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          No Sample Response

          This method does not specify any sample responses.

          List all supported storage tiers for this cloud instance

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/storage-tiers

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.storage-tier.read

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.service-broker.read

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • curl --location --request GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/storage-tiers   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' 

          Response

          An array of of storage tiers supported in a region

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • [
              {
                "description": "Tier0 - 25 iops/gb",
                "name": "tier0",
                "state": "active"
              },
              {
                "description": "Tier1 - 10 iops/gb",
                "name": "tier1",
                "state": "active"
              },
              {
                "description": "Tier3 - 3 iops/gb",
                "name": "tier3",
                "state": "active"
              },
              {
                "description": "Tier5k - 5000 iops",
                "name": "tier5k",
                "state": "active"
              }
            ]

          List of available system pools within a particular DataCenter

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/system-pools

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.pod-capacity.view

            Required for satellite locations, ignored for public data centers.

          • power-iaas.system-pool.list

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.system-pools.list

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/system-pools   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          List of available system pools within a particular DataCenter

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          No Sample Response

          This method does not specify any sample responses.

          Get all volume groups

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/volume-groups

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.volume-group.list

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.volume-group.list

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volume-groups   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "volumeGroups": [
                {
                  "consistencyGroupName": "rccg-36e8-543wa",
                  "id": "7e34b8a2-5101-43e6-b0cd-906667f2f0as",
                  "name": "VG-Test-1",
                  "replicationStatus": "enabled",
                  "status": "available",
                  "statusDescription": {
                    "errors": []
                  }
                },
                {
                  "consistencyGroupName": "rccg-987e-1161as",
                  "id": "987e4439-eb01-43c1-b922-7c9d644116112",
                  "name": "VG-Test-2",
                  "replicationStatus": "enabled",
                  "status": "error",
                  "statusDescription": {
                    "errors": [
                      {
                        "key": "VOL-NOT-IN-GROUP",
                        "message": "Failed to add volume to CG rccg-987e-1161as because volume aaaca558-3dc9-4956-8980-6f4a5496eb03 is already part of CG rccg-36e8-543ui.",
                        "volIDs": [
                          "aaaca558-3dc9-4956-8980-6f4a5496eb56"
                        ]
                      }
                    ]
                  }
                }
              ]
            }

          Create a new volume group

          POST /pcloud/v1/cloud-instances/{cloud_instance_id}/volume-groups

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.volume-group.create

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.volume-group.post

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          Parameters for the creation of a new volume group

          • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volume-groups   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'
              -d '{
                    "consistencyGroupName": "string",
                    "name": "strin",                              
                    volumeIDs: [“string-1”,”string-2”]
                  }'

          Response

          Status Code

          • Accepted

          • Partial Content

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Conflict

          • Unprocessable Entity

          • Internal Server Error

          • Gateway Timeout. Request is still processing and taking longer than expected.

          Example responses
          • {
              "id": "83f31c4c-ffdb-4af3-8e19-5a836b6d6634",
              "name": "test-volume-group-1",
              "status": "available"
            }

          Get all volume groups with details

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/volume-groups/details

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.volume-group.list

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.volume-group.list

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volume-groups/details   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "volumeGroups": [
                {
                  "consistencyGroupName": "rccg-36e8-543wa",
                  "id": "36e83257-f7f5-4848-96f6-47a7b4e54323",
                  "name": "VG-Test-1",
                  "replicationStatus": "enabled",
                  "status": "available",
                  "statusDescription": {
                    "errors": []
                  },
                  "volumeIDs": [
                    "1711cbc9-3456-42ef-a9c0-b2373561147b",
                    "4356217e-af84-4579-b419-497b4cddc751"
                  ]
                },
                {
                  "consistencyGroupName": "rccg-987e-1161as",
                  "id": "987e4439-eb01-43c1-b922-7c9d644116112",
                  "name": "VG-Test-2",
                  "replicationStatus": "enabled",
                  "status": "error",
                  "statusDescription": {
                    "errors": [
                      {
                        "key": "VOL-NOT-IN-GROUP",
                        "message": "Failed to add volume to CG rccg-987e-1161as because volume aaaca558-3dc9-4956-8980-6f4a5496eb03 is already part of CG rccg-36e8-543ui.",
                        "volIDs": [
                          "aaaca558-3dc9-4956-8980-6f4a5496eb56"
                        ]
                      }
                    ]
                  },
                  "volumeIDs": []
                }
              ]
            }

          Delete a cloud instance volume group

          DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/volume-groups/{volume_group_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.volume-group.delete

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.volume-group.delete

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • The ID of the volume group

          • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volume-groups/{VOLUME_GROUP_ID}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Status Code

          • Accepted

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          No Sample Response

          This method does not specify any sample responses.

          Get volume Group

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/volume-groups/{volume_group_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.volume-group.read

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.volume-group.read

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • The ID of the volume group

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volume-groups/{VOLUME_GROUP_ID}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "consistencyGroupName": "rccg-36e8-543wa",
              "id": "7e34b8a2-5101-43e6-b0cd-906667f2f0as",
              "name": "VG-Test-1",
              "replicationStatus": "enabled",
              "status": "available",
              "statusDescription": {
                "errors": []
              }
            }

          updates the volume group

          PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/volume-groups/{volume_group_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.volume-group.update

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.volume-group.update

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • The ID of the volume group

          Parameters for updating a volume-group

          • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volume-groups/{VOLUME_GROUP_ID}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'
              -d '{
                    "addVolumes": [“string-1”,”string-2”],                              
                    "removeVolumes": [“string-1”,”string-2”]
                  }'

          Response

          Status Code

          • Accepted

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Conflict

          • Unprocessable Entity

          • Internal Server Error

          No Sample Response

          This method does not specify any sample responses.

          Perform an action on a volume group

          Corresponding actions are 'start', 'stop', 'reset'

          POST /pcloud/v1/cloud-instances/{cloud_instance_id}/volume-groups/{volume_group_id}/action

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.volume-group.action

          Auditing

          Calling this method generates the following auditing events.

          • power-iaas.volume-group.start

          • power-iaas.volume-group.stop

          • power-iaas.volume-group.reset

          • power-iaas.volume-group.unknown

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • The ID of the volume group

          Parameters for the desire action.

          • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volume-groups/{VOLUME_GROUP_ID}/action   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                    "reset":
                      "status": "available"
                  }'

          Response

          Status Code

          • Accepted

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Unprocessable Entity

          • Internal Server Error

          No Sample Response

          This method does not specify any sample responses.

          Get volume Group details

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/volume-groups/{volume_group_id}/details

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.volume-group.read

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.volume-group.read

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • The ID of the volume group

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volume-groups/{VOLUME_GROUP_ID}/details   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "consistencyGroupName": "rccg-36e8-543wa",
              "id": "36e83257-f7f5-4848-96f6-47a7b4e54323",
              "name": "VG-Test-1",
              "replicationStatus": "enabled",
              "status": "available",
              "statusDescription": {
                "errors": []
              },
              "volumeIDs": [
                "1711cbc9-3456-42ef-a9c0-b2373561147b",
                "4356217e-af84-4579-b419-497b4cddc751"
              ]
            }

          Get remote copy relationships of the volume belonging to volume group

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/volume-groups/{volume_group_id}/remote-copy-relationships

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.volume-group-remote-copy.read

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.volume-group.read

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • The ID of the volume group

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volume-groups/{VOLUME_GROUP_ID}/remote-copy-relationships   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Too Many Requests

          • Internal Server Error

          Example responses
          • {
              "id": "af9e9d1c-c8c9-4f44-8dd9-1831d3524333",
              "remoteCopyRelationships": [
                {
                  "auxChangedVolumeName": "chg_aux_volume-test_vg-vol-3-7066e348-cc1c1210664",
                  "auxVolumeName": "aux_volume-test_vg-vol-3-7066e348-cc1c1210664",
                  "consistencyGroupName": "rccg-af9e-243dd",
                  "copyType": "global",
                  "cyclingMode": "multi",
                  "freezeTime": "2022-06-09T14:46:59.000Z",
                  "masterChangedVolumeName": "chg_volume-test_vg-vol-3-7066e348-cc1c",
                  "masterVolumeName": "volume-test_vg-vol-3-7066e348-cc1c",
                  "name": "rcrel490",
                  "primaryRole": "master",
                  "progress": 100,
                  "remoteCopyID": "1050",
                  "state": "consistent_copying"
                },
                {
                  "auxChangedVolumeName": "chg_aux_volume-test_vg-vol-4-0a40be7a-21b31210664",
                  "auxVolumeName": "aux_volume-test_vg-vol-4-0a40be7a-21b31210664",
                  "consistencyGroupName": "rccg-af9e-243dd",
                  "copyType": "global",
                  "cyclingMode": "multi",
                  "freezeTime": "2022-06-09T14:46:59.000Z",
                  "masterChangedVolumeName": "chg_volume-test_vg-vol-4-0a40be7a-21b3",
                  "masterVolumeName": "volume-test_vg-vol-4-0a40be7a-21b3",
                  "name": "rcrel499",
                  "primaryRole": "master",
                  "progress": 100,
                  "remoteCopyID": "1099",
                  "state": "consistent_copying"
                }
              ]
            }

          Get storage details of volume group

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/volume-groups/{volume_group_id}/storage-details

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.volume-group-storage.read

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.volume-group.read

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • The ID of the volume group

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volume-groups/{VOLUME_GROUP_ID}/storage-details   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Too Many Requests

          • Internal Server Error

          Example responses
          • {
              "consistencyGroupName": "rccg-15da-98ecc",
              "cyclePeriodSeconds": 500,
              "cyclingMode": "multi",
              "numOfvols": 2,
              "remoteCopyRelationshipNames": [
                "rcrel999",
                "rcrel1100"
              ],
              "replicationType": "global",
              "state": "idling",
              "sync": "out_of_sync"
            }

          List all volume onboardings for this cloud instance

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/volumes/onboarding

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.volume-onboarding.list

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.volume-onboarding.list

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/onboarding   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "onboardings": [
                {
                  "description": "onboardingDemo1",
                  "id": "845e40d3-035d-499a-a147-02e2adf8123",
                  "inputVolumes": [
                    "aux_volume-vol-demo15-a608b408-051c",
                    "aux_volume-vol-demo16-a608b408-051c"
                  ],
                  "status": "SUCCESS"
                },
                {
                  "description": "onboardingDemo2",
                  "id": "0bd0c4a7-df48-4b82-8aa2-31e267cdc213",
                  "inputVolumes": [
                    "aux_volume-vol-demo17-a608b408-051c",
                    "aux_volume-vol-demo10-a608b408-051c"
                  ],
                  "status": "REVERTED"
                }
              ]
            }

          Onboard auxiliary volumes to target site

          POST /pcloud/v1/cloud-instances/{cloud_instance_id}/volumes/onboarding

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.volume-onboarding.create

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.volume-onboarding.create

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          Parameters for the creation of volume onboarding

          • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/onboarding   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                    "Volumes":
                      - "auxiliaryVolumes":
                        - "auxVolumeName": "string"
                          "name": "string"
                      "sourceCRN": "string"
                    "description": "string"
                  }'

          Response

          Status Code

          • Accepted

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Conflict

          • Internal Server Error

          Example responses
          • {
              "description": "onboarding-test-1",
              "id": "6392eaf7-6edf-4edd-ae3e-a18583946241"
            }

          Get the information of volume onboarding operation

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/volumes/onboarding/{volume_onboarding_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.volume-onboarding.read

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.volume-onboarding.read

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • Indicates volume onboarding operation id

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/volumes/onboarding/{VOLUME_ONBOARDING_ID}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "creationTimestamp": "2022-09-03T11:37:42.000Z",
              "description": "onboardingDemo1",
              "id": "76ab88a3-8078-4a69-abff-31cafd1f96qq",
              "inputVolumes": [
                "aux_vol-1-80ed3950-ae0044275619",
                "aux_vol-2-80ed3950-ae0044275619"
              ],
              "progress": 100,
              "results": {
                "onboardedVolumes": [],
                "volumeOnboardingFailures": [
                  {
                    "failureMessage": "Unauthorized onboard of auxilary volumes.",
                    "volumes": [
                      "aux_DRVMTest-29e8ee86-000037b0-boot-0-0e71999a-857a44275619",
                      "aux_volume-vol-demo-test-99593-3-5414edfc-e1f144275619"
                    ]
                  }
                ]
              },
              "status": "REVERTED"
            }

          Get all IKE Policies

          List all IKE Policies with all attributes

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ike-policies

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.vpn-connection-ike-policy.read

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.ike-policy.read

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/vpn/ike-policies   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "ikePolicies": {
                "authentication": "sha1",
                "dhGroup": "19,",
                "encryption": "3des-cbc",
                "id": "7edc8988-eb18-4b5c-a594-0d73d8254463",
                "keyLifetime": 28800,
                "name": "ikePolicy1",
                "version": 2
              }
            }

          Add IKE Policy

          Add a new IKE Policy

          POST /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ike-policies

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.vpn-connection-ike-policy.create

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.ike-policy.create

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          Parameters for the creation of a new IKE Policy

          • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloudInstanceID}/vpn/ike-policies   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                    "authentication": "sha1",
                    "dhGroup": 19,
                    "encryption": "3des-cbc",
                    "keyLifetime": 28800,
                    "name": "ikePolicy1",
                    "presharedKey": "string",
                    "version": 2
                  }'

          Response

          IKE Policy object

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Conflict

          • Unprocessable Entity

          • Internal Server Error

          Example responses
          • {
              "authentication": "sha1",
              "dhGroup": 19,
              "encryption": "3des-cbc",
              "id": "7edc8988-eb18-4b5c-a594-0d73d8254463",
              "keyLifetime": 28800,
              "name": "ikePolicy1",
              "version": 2
            }

          Delete IKE Policy

          Delete an IKE Policy (by its unique identifier)

          DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ike-policies/{ike_policy_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.vpn-connection-ike-policy.delete

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.ike-policy.delete

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • ID of a IKE Policy

          • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloudInstanceID}/vpn/ike-policies/{ike_policy_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          No Sample Response

          This method does not specify any sample responses.

          Get the specified IKE Policy

          Get an IKE Policy (by its unique identifier)

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ike-policies/{ike_policy_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.vpn-connection-ike-policy.list

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.ike-policy.list

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • ID of a IKE Policy

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/vpn/ike-policies/{ike_policy_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

          Response

          IKE Policy object

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Unprocessable Entity

          • Internal Server Error

          Example responses
          • {
              "ikePolicies": [
                {
                  "authentication": "sha1",
                  "dhGroup": 19,
                  "encryption": "3des-cbc",
                  "id": "7edc8988-eb18-4b5c-a594-0d73d8254463",
                  "keyLifetime": 28800,
                  "name": "ikePolicy1",
                  "version": 2
                }
              ]
            }

          Update IKE Policy

          update an IKE Policy (by its unique identifier)

          PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ike-policies/{ike_policy_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.vpn-connection-ike-policy.update

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.ike-policy.update

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • ID of a IKE Policy

          Parameters for updating IKE Policy

          • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/vpn/ike-policies/{ike_policy_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'
              -d '{
                  "authentication": "sha1",
                  "dhGroup": 19,
                  "encryption": "3des-cbc",
                  "keyLifetime": 28800,
                  "name": "ikePolicy1",
                  "presharedKey": "string",
                  "version": 2
                  }'

          Response

          IKE Policy object

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Unprocessable Entity

          • Internal Server Error

          Example responses
          • {
              "authentication": "sha1",
              "dhGroup": 19,
              "encryption": "3des-cbc",
              "id": "7edc8988-eb18-4b5c-a594-0d73d8254463",
              "keyLifetime": 28800,
              "name": "ikePolicy1",
              "version": 2
            }

          Get all IPSec Policies

          Get all IPSec Policies with all their attributes

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ipsec-policies

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.vpn-connection-ipsec-policy.list

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.ipsec-policy.list

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/vpn/ipsec-policies   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "ipSecPolicies": {
                "authentication": "hmac-md5-96",
                "dhGroup": 2,
                "encryption": "3des-cbc",
                "id": "6edc8988-eb18-4b5c-a594-0d73d8254463",
                "keyLifetime": 28800,
                "name": "ipSecPolicy2",
                "pfs": true
              }
            }

          Add IPSec Policy

          Add a new IPSec Policy

          POST /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ipsec-policies

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.vpn-connection-ipsec-policy.create

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.ipsec-policy.create

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          Parameters for the creation of a new IPSec Policy

          • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloudInstanceID}/vpn/ipsec-policies   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                    "authentication": "hmac-md5-96",
                    "dhGroup": 2,
                    "encryption": "3des-cbc",
                    "keyLifetime": 28800,
                    "name": "ipSecPolicy2",
                    "pfs": true
                  }'

          Response

          IPSec Policy object

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Conflict

          • Unprocessable Entity

          • Internal Server Error

          Example responses
          • {
              "authentication": "hmac-md5-96",
              "dhGroup": 2,
              "encryption": "3des-cbc",
              "id": "6edc8988-eb18-4b5c-a594-0d73d8254463",
              "keyLifetime": 28800,
              "name": "ipSecPolicy2",
              "pfs": true
            }

          Delete IPSec Policy

          Delete an IPSec Policy (by its unique identifier)

          DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ipsec-policies/{ipsec_policy_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.vpn-connection-ipsec-policy.delete

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.ipsec-policy.delete

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • ID of a IPSec Policy

          • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloudInstanceID}/vpn/ipsec-policies/{ipsec_policy_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          No Sample Response

          This method does not specify any sample responses.

          Get the specified IPSec Policy

          Get an IPSec Policy (by its unique identifier)

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ipsec-policies/{ipsec_policy_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.vpn-connection-ipsec-policy.read

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.ipsec-policy.read

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • ID of a IPSec Policy

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/vpn/ipsec-policies/{ipsec_policy_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

          Response

          IPSec Policy object

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Unprocessable Entity

          • Internal Server Error

          Example responses
          • {
              "ipSecPolicies": [
                {
                  "authentication": "hmac-md5-96",
                  "dhGroup": 2,
                  "encryption": "3des-cbc",
                  "id": "6edc8988-eb18-4b5c-a594-0d73d8254463",
                  "keyLifetime": 28800,
                  "name": "ipSecPolicy2",
                  "pfs": true
                }
              ]
            }

          Update IPSec Policy

          update an IPSec Policy

          PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ipsec-policies/{ipsec_policy_id}

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.vpn-connection-ipsec-policy.update

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.ipsec-policy.update

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • ID of a IPSec Policy

          Parameters for the update of an IPSec Policy

          • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/vpn/ipsec-policies/{ipsec_policy_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'
              -d '{
                  "authentication": "hmac-md5-96",
                  "dhGroup": 2,
                  "encryption": "3des-cbc",
                  "keyLifetime": 28800,
                  "name": "ipSecPolicy2",
                  "pfs": true
                  }'

          Response

          IPSec Policy object

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Conflict

          • Unprocessable Entity

          • Internal Server Error

          Example responses
          • {
              "authentication": "hmac-md5-96",
              "dhGroup": 2,
              "encryption": "3des-cbc",
              "id": "6edc8988-eb18-4b5c-a594-0d73d8254463",
              "keyLifetime": 28800,
              "name": "ipSecPolicy2",
              "pfs": true
            }

          Get all VPN Connections

          Get all VPN Connections

          GET /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.read

            Grants access to this and other methods.

          • power-iaas.vpn-connection.list

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.vpn-connection.list

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/vpn/vpn-connections   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

          Response

          Status Code

          • OK

          • Bad Request

          • Unauthorized

          • Forbidden

          • Not Found

          • Internal Server Error

          Example responses
          • {
              "vpnConnections": [
                {
                  "deadPeerDetection": {
                    "action": "restart",
                    "interval": 10,
                    "threshold": 5
                  },
                  "id": "e4111a8eb2374b3eb317a6b8f3fe263d",
                  "ikePolicy": {
                    "id": "d1c0a9508e724cf4b93a06cda0c3a415",
                    "name": "ui-test-updated"
                  },
                  "ipSecPolicy": {
                    "id": "7ed08c4227284d4cba853c8968f18202",
                    "name": "ipsec-policy-ui-test-1"
                  },
                  "localGatewayAddress": "169.48.225.198",
                  "mode": "route",
                  "name": "vpn-connection-1",
                  "networkIDs": [
                    "d603cf33-3d4e-4e2b-b6ed-f846ee6b5831"
                  ],
                  "peerGatewayAddress": "1.1.1.1",
                  "peerSubnets": [
                    "128.197.11.0/24"
                  ],
                  "status": "active",
                  "vpnGatewayAddress": "169.48.225.198"
                }
              ]
            }

          Create VPN Connection

          Create a new VPN Connection

          POST /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

          • power-iaas.cloud-instance.modify

            Grants access to this and other methods.

          • power-iaas.vpn-connection.create

          Auditing

          Calling this method generates the following auditing event.

          • power-iaas.vpn-connection.create

          Request

          Path Parameters

          • Cloud Instance ID of a PCloud Instance

          VPN Connection object used for creation

            Response

            Status Code

            • Accepted

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Method Not Allowed

            • Conflict

            • Unprocessable Entity

            • Internal Server Error

            Example responses
            • {
                "deadPeerDetection": {
                  "action": "restart",
                  "interval": 10,
                  "threshold": 5
                },
                "id": "123e4567-e89b-12d3-a456-42661475",
                "ikePolicy": {
                  "id": "6edc8988-ab18-4b5c-b123-0d73e8254463",
                  "name": "IKE Policy 1"
                },
                "ipSecPolicy": {
                  "id": "7abc1234-ab18-4b5c-b123-0d73e8254463",
                  "name": "IPSec Policy 1"
                },
                "jobRef": {
                  "href": "pcloud/v1/cloud-instances/a28e43001b7748b0acbdfb2d36288643/jobs/cb6db5dd-17b9-4236-8754-8b82d1357e74",
                  "id": "cb6db5dd-17b9-4236-8754-8b82d1357e74"
                },
                "localGatewayAddress": "192.168.1.1",
                "mode": "policy",
                "name": "VPN-Connection-1",
                "networkIDs": [
                  "99b7cf8835eb4c77abdadd9e6ed5009c"
                ],
                "peerGatewayAddress": "192.168.1.1",
                "peerSubnets": [
                  "128.170.1.0/20",
                  "128.169.1.0/24",
                  "128.168.1.0/27",
                  "128.170.1.0/32"
                ],
                "status": "active",
                "vpnGatewayAddress": "192.168.204.1"
              }

            Delete VPN Connection

            Delete VPN Connection (by its identifier)

            DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.vpn-connection.delete

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.vpn-connection.delete

            Request

            Path Parameters

            • Cloud Instance ID of a PCloud Instance

            • ID of a VPN connection

            • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloudInstanceID}/vpn/vpn-connections/{vpn_connection_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

            Response

            Status Code

            • Accepted

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Internal Server Error

            Example responses
            • {
                "href": "pcloud/v1/cloud-instances/a28e43001b7748b0acbdfb2d36288643/jobs/565783da-268a-41df-8742-f4e2929af9e6",
                "id": "565783da-268a-41df-8742-f4e2929af9e6"
              }

            Get VPN Connection

            Get a VPN Connection

            GET /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.vpn-connection.read

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.vpn-connection.read

            Request

            Path Parameters

            • Cloud Instance ID of a PCloud Instance

            • ID of a VPN connection

            • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/vpn/vpn-connections/${vpn_connection_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Unprocessable Entity

            • Internal Server Error

            Example responses
            • {
                "deadPeerDetection": {
                  "action": "restart",
                  "interval": 10,
                  "threshold": 5
                },
                "id": "1dfb9c031c4145cfa7c696711ba0ef0d",
                "ikePolicy": {
                  "id": "d1c0a9508e724cf4b93a06cda0c3a415",
                  "name": "ui-test-updated"
                },
                "ipSecPolicy": {
                  "id": "ad1517c55e68450b9a160e0c1e52c0b6",
                  "name": "tbsec"
                },
                "localGatewayAddress": "169.48.225.198",
                "mode": "route",
                "name": "cli-test-vpn-connection-new-1",
                "networkIDs": [
                  "3a3dffcb-3621-40b4-82c3-ae393d2805ba"
                ],
                "peerGatewayAddress": "10.0.0.1",
                "peerSubnets": [
                  "1.2.5.0/24"
                ],
                "status": "active",
                "vpnGatewayAddress": "169.48.225.198"
              }

            Update VPN Connection

            update a VPN Connection (by its identifier)

            PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.vpn-connection.update

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.vpn-connection.update

            Request

            Path Parameters

            • Cloud Instance ID of a PCloud Instance

            • ID of a VPN connection

            VPN Connection object used for update

            • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/vpn/vpn-connections/${vpn_connection_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'
                -d '{
                    "ikePolicy": "c36723ec-8593-11eb-8dcd-0242ac133853",
                    "ipSecPolicy": "c12345d-8593-11eb-8dcd-0242ac134573",
                    "name": "VPN-Connection-1",
                    "peerGatewayAddress": "192.188.1.1"
                    }'

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Unprocessable Entity

            • Internal Server Error

            Example responses
            • {
                "deadPeerDetection": {
                  "action": "restart",
                  "interval": 10,
                  "threshold": 5
                },
                "id": "1dfb9c031c4145cfa7c696711ba0ef0d",
                "ikePolicy": {
                  "id": "d1c0a9508e724cf4b93a06cda0c3a415",
                  "name": "ui-test-updated"
                },
                "ipSecPolicy": {
                  "id": "ad1517c55e68450b9a160e0c1e52c0b6",
                  "name": "tbsec"
                },
                "localGatewayAddress": "169.48.225.198",
                "mode": "route",
                "name": "cli-test-vpn-connection-new",
                "networkIDs": [
                  "3a3dffcb-3621-40b4-82c3-ae393d2805ba"
                ],
                "peerGatewayAddress": "10.0.0.1",
                "peerSubnets": [
                  "1.2.5.0/24"
                ],
                "status": "active",
                "vpnGatewayAddress": "169.48.225.198"
              }

            Detach network

            Detach network from a specific VPN Connection

            DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}/networks

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.vpn-connection-network.delete

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.vpn-connection.delete

            Request

            Path Parameters

            • Cloud Instance ID of a PCloud Instance

            • ID of a VPN connection

            network to detach

            • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloudInstanceID}/vpn/vpn-connections/{vpn_connection_id}/networks   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'

            Response

            Status Code

            • Accepted

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Unprocessable Entity

            • Internal Server Error

            Example responses
            • {
                "href": "pcloud/v1/cloud-instances/a28e43001b7748b0acbdfb2d36288643/jobs/565783da-268a-41df-8742-f4e2929af9e6",
                "id": "565783da-268a-41df-8742-f4e2929af9e6"
              }

            Get attached networks

            Get a list of network IDs attached to a VPN Connection

            GET /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}/networks

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.vpn-connection-network.read

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.vpn-connection.read

            Request

            Path Parameters

            • Cloud Instance ID of a PCloud Instance

            • ID of a VPN connection

            • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/vpn/vpn-connections//{vpn_connection_id}/networks   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Internal Server Error

            Example responses
            • {
                "networkIDs": [
                  "7f950c76-8582-11qeb-8dcd-0242ac143",
                  "7f950c76-8582-11veb-8dcd-0242ac153",
                  "7f950c76-8582-11deb-8dcd-0242ac163"
                ]
              }

            Attach network

            Attach a network to a VPN Connection

            PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}/networks

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.vpn-connection-network.update

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.vpn-connection.update

            Request

            Path Parameters

            • Cloud Instance ID of a PCloud Instance

            • ID of a VPN connection

            network to attach

            • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/vpn/vpn-connections/{vpn_connection_id}/networks   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'
                -d '{
                    "networkID": "7f950c76-8582-11qeb-8dcd-0242ac172"
                    }'

            Response

            Status Code

            • Accepted

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Unprocessable Entity

            • Internal Server Error

            Example responses
            • {
                "href": "pcloud/v1/cloud-instances/a28e43001b7748b0acbdfb2d36288643/jobs/565783da-268a-41df-8742-f4e2929af9e6",
                "id": "565783da-268a-41df-8742-f4e2929af9e6"
              }

            Detach Peer Subnet

            Detach peer subnet from a VPN Connection

            DELETE /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}/peer-subnets

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.vpn-connection-peer-subnet.delete

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.vpn-connection.delete

            Request

            Path Parameters

            • Cloud Instance ID of a PCloud Instance

            • ID of a VPN connection

            Peer subnet to detach

            • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/{cloudInstanceID}/vpn/vpn-connections/{vpn_connection_id}/peer-subnets   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'
                -d '{
                    "cidr": <cidr of peer subnet>
                    }'

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Unprocessable Entity

            • Internal Server Error

            Example responses
            • {
                "peerSubnets": [
                  "128.170.1.0/20",
                  "128.169.1.0/24",
                  "128.168.1.0/27"
                ]
              }

            Get Peer Subnets

            Get a list of peer subnets attached to a specific VPN Connection

            GET /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}/peer-subnets

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.vpn-connection-peer-subnet.read

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.vpn-connection.read

            Request

            Path Parameters

            • Cloud Instance ID of a PCloud Instance

            • ID of a VPN connection

            • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/vpn/vpn-connections//{vpn_connection_id}/peer-subnets   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Internal Server Error

            Example responses
            • {
                "peerSubnets": [
                  "128.170.1.0/20",
                  "128.169.1.0/24",
                  "128.168.1.0/27",
                  "128.170.1.0/32"
                ]
              }

            Attach Peer Subnet

            Attach peer subnet to a VPN Connection

            PUT /pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}/peer-subnets

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.vpn-connection-peer-subnet.update

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.vpn-connection.update

            Request

            Path Parameters

            • Cloud Instance ID of a PCloud Instance

            • ID of a VPN connection

            peer subnet to attach

            • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/cloud-instances/${CLOUD_INSTANCE_ID}/vpn/vpn-connections/{vpn_connection_id}/peer-subnets   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'
                -d '{
                    "cidr": "128.170.1.0/32"
                    }'

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Unprocessable Entity

            • Internal Server Error

            Example responses
            • {
                "peerSubnets": [
                  "128.170.1.0/20",
                  "128.169.1.0/24",
                  "128.168.1.0/27",
                  "128.170.1.0/32"
                ]
              }

            Delete a Task

            DELETE /pcloud/v1/tasks/{task_id}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.task.delete

            Request

            Path Parameters

            • PCloud Task ID

            • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/tasks/{task_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Gone

            • Internal Server Error

            No Sample Response

            This method does not specify any sample responses.

            Get a Task

            GET /pcloud/v1/tasks/{task_id}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.task.read

            Request

            Path Parameters

            • PCloud Task ID

            • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/tasks/{task_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Internal Server Error

            No Sample Response

            This method does not specify any sample responses.

            Get a Tenant's current state/information

            GET /pcloud/v1/tenants/{tenant_id}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.tenant.read

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.tenant.read

            Request

            Path Parameters

            • Tenant ID of a pcloud tenant

            • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/tenants/{tenant_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Internal Server Error

            Example responses
            • {
                "cloudInstances": [
                  {
                    "cloudInstanceID": "78ea9383b1354924bdf97a3057f50110",
                    "enabled": true,
                    "href": "/pcloud/v1/cloud-instances/78ea9383b1354924bdf97a3057f50110",
                    "initialized": false,
                    "limits": {
                      "instanceMemory": 0,
                      "instanceProcUnits": 0,
                      "instances": 0,
                      "memory": 0,
                      "peeringBandwidth": 0,
                      "peeringNetworks": 0,
                      "procUnits": 0,
                      "processors": 0,
                      "storage": 0,
                      "storageSSD": 0
                    },
                    "name": "0d8f8fc5-5975-4e78-b541-aec77672ae51",
                    "region": "us-east"
                  },
                  {
                    "cloudInstanceID": "7c3d5c3f746c457a95ce3cebba76cf63",
                    "enabled": true,
                    "href": "/pcloud/v1/cloud-instances/7c3d5c3b746c457a95ce3bebba76cf63",
                    "initialized": false,
                    "limits": {
                      "instanceMemory": 0,
                      "instanceProcUnits": 0,
                      "instances": 0,
                      "memory": 0,
                      "peeringBandwidth": 0,
                      "peeringNetworks": 0,
                      "procUnits": 0,
                      "processors": 0,
                      "storage": 0,
                      "storageSSD": 0
                    },
                    "name": "37c24ed2-fd6a-4f4b-9119-f6a2817f1d58",
                    "region": "us-east"
                  },
                  {
                    "cloudInstanceID": "969afb22cb004e808cb84b827abfa1b0",
                    "enabled": true,
                    "href": "/pcloud/v1/cloud-instances/969afb22cb004e808ab84b827abfa1b0",
                    "initialized": false,
                    "limits": {
                      "instanceMemory": 0,
                      "instanceProcUnits": 0,
                      "instances": 0,
                      "memory": 0,
                      "peeringBandwidth": 0,
                      "peeringNetworks": 0,
                      "procUnits": 0,
                      "processors": 0,
                      "storage": 0,
                      "storageSSD": 0
                    }
                  }
                ],
                "creationDate": "2019-06-21T16:29:17.670Z",
                "enabled": true,
                "name": "781d5ef5-b87c-4a0a-86b8-aaa41213477",
                "region": "us-east",
                "sshKeys": [
                  {
                    "creationDate": "2019-09-20T18:11:04.508Z",
                    "name": "ibm-test",
                    "sshKey": "ssh-rsa AAAAB3NzaC1yc2EAAA..."
                  },
                  {
                    "creationDate": "2019-11-12T13:16:21.811Z",
                    "name": "default-key-DO_NOT_DELETE",
                    "sshKey": "ssh-rsa AAAAB3NzaC1yc2EAA... a459814@FR-MP144WBV"
                  },
                  {
                    "creationDate": "2019-11-21T09:40:47.042Z",
                    "name": "e2e1574329171394",
                    "sshKey": "abc"
                  },
                  {
                    "creationDate": "2019-11-21T10:04:23.684Z",
                    "name": "e2e1574330594605",
                    "sshKey": "abc"
                  }
                ],
                "tenantID": "efe5e8b9d3f04b948790fe5499bd18bc"
              }

            Update a tenant

            PUT /pcloud/v1/tenants/{tenant_id}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.tenant.update

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.tenant.update

            Request

            Path Parameters

            • Tenant ID of a pcloud tenant

            Parameters for updating a Tenant

            • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/tenants/{tenant_id}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                      "icn": "347aa3a4b34344f8bc7c7cccdf856e4d"
                    }'

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Unprocessable Entity

            • Internal Server Error

            No Sample Response

            This method does not specify any sample responses.

            List a Tenant's SSH Keys

            GET /pcloud/v1/tenants/{tenant_id}/sshkeys

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.tenant-sshkey.list

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.tenant-sshkey.list

            Request

            Path Parameters

            • Tenant ID of a pcloud tenant

            • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/tenants/{tenant_id}/sshkeys   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Internal Server Error

            Example responses
            • {
                "sshKeys": [
                  {
                    "creationDate": "2019-09-20T18:11:04.508Z",
                    "name": "ibm-test",
                    "sshKey": "ssh-rsa AAAAB3..."
                  },
                  {
                    "creationDate": "2019-11-12T13:16:21.811Z",
                    "name": "default-key-DO_NOT_DELETE",
                    "sshKey": "ssh-rsa AAAAB..."
                  }
                ]
              }

            Add a new SSH key to the Tenant

            POST /pcloud/v1/tenants/{tenant_id}/sshkeys

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.tenant-sshkey.create

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.tenant-sshkey.create

            Request

            Path Parameters

            • Tenant ID of a pcloud tenant

            Parameters for the creation of a new SSH key

            • curl -X POST   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/tenants/{tenant_id}/sshkeys   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                      "name": "sshkey-name"
                      "sshKey": "ssh-rsa-key"
                    }'

            Response

            Status Code

            • OK

            • Created

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Conflict

            • Unprocessable Entity

            • Internal Server Error

            No Sample Response

            This method does not specify any sample responses.

            Delete a Tenant's SSH key

            DELETE /pcloud/v1/tenants/{tenant_id}/sshkeys/{sshkey_name}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.tenant-sshkey.delete

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.tenant-sshkey.delete

            Request

            Path Parameters

            • Tenant ID of a pcloud tenant

            • SSH key name for a pcloud tenant

            • curl -X DELETE   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/tenants/{tenant_id}/sshkeys/{sshkey_name}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Gone

            • Internal Server Error

            No Sample Response

            This method does not specify any sample responses.

            Get a Tenant's SSH Key by name

            GET /pcloud/v1/tenants/{tenant_id}/sshkeys/{sshkey_name}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.tenant-sshkey.read

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.tenant-sshkey.read

            Request

            Path Parameters

            • Tenant ID of a pcloud tenant

            • SSH key name for a pcloud tenant

            • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/tenants/{tenant_id}/sshkeys/{sshkey_name}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json' \

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Internal Server Error

            No Sample Response

            This method does not specify any sample responses.

            Update an SSH Key

            PUT /pcloud/v1/tenants/{tenant_id}/sshkeys/{sshkey_name}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.tenant-sshkey.update

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.tenant-sshkey.update

            Request

            Path Parameters

            • Tenant ID of a pcloud tenant

            • SSH key name for a pcloud tenant

            Parameters for updating a Tenant's SSH Key

            • curl -X PUT   https://us-east.power-iaas.cloud.ibm.com/pcloud/v1/tenants/{tenant_id}/sshkeys/{sshkey_name}   -H 'Authorization: Bearer <>'   -H 'CRN: crn:v1...'   -H 'Content-Type: application/json'   -d '{
                      "name": "sshkey-name"
                      "sshKey": "ssh-rsa-key"
                    }'

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Unprocessable Entity

            • Internal Server Error

            No Sample Response

            This method does not specify any sample responses.

            List all the hosts that can be reserved

            GET /v1/available-hosts

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.available-hosts.list

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.available-hosts.list

            Request

            No Request Parameters

            This method does not accept any request parameters.

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Internal Server Error

            • Gateway Timeout. Request is still processing and taking longer than expected.

            Example responses
            • {
                "s1022": {
                  "capacity": {
                    "cores": {
                      "total": 40
                    },
                    "memory": {
                      "total": 2048
                    }
                  },
                  "count": 1,
                  "sysType": "s1022"
                },
                "s922": {
                  "capacity": {
                    "cores": {
                      "total": 20
                    },
                    "memory": {
                      "total": 1024
                    }
                  },
                  "count": 2,
                  "sysType": "s922"
                }
              }

            Get the list of host groups for the workspace

            GET /v1/host-groups

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.host-group.list

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.host-group.list

            Request

            No Request Parameters

            This method does not accept any request parameters.

            Response

            Description of a host group

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Internal Server Error

            • Gateway Timeout. Request is still processing and taking longer than expected.

            Example responses
            • [
                {
                  "creationDate": "2024-04-17T06:44:49.000Z",
                  "hosts": [
                    "/v1/hosts/269"
                  ],
                  "id": "2e408848-3b5e-44a6-afcc-4fb929cb15ac",
                  "name": "testHostGroup",
                  "primary": "7c107dc5-4b97-46af-a8b7-32c1aeabfb73",
                  "secondaries": [
                    "f1ab14fc-b085-4ff0-a053-3e42515c3115"
                  ]
                },
                {
                  "creationDate": "2024-04-18T0:43:17.000Z",
                  "hosts": [
                    "/v1/hosts/311",
                    "/v1/hosts/408"
                  ],
                  "id": "4434fb0b-3abd-4973-a3bb-65729b16f05f",
                  "name": "anotherHostGroup",
                  "primary": "7c107dc5-4b97-46af-a8b7-32c1aeabfb73"
                }
              ]

            Create a host group with one (or more) host

            POST /v1/host-groups

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.host-group.create

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.host-group.create

            Request

            Parameters for the creation of a new host group

            Response

            Description of a host group

            Status Code

            • Created

            • Bad Request

            • Unauthorized

            • Forbidden

            • Conflict

            • Unprocessable Entity

            • Internal Server Error

            • Gateway Timeout. Request is still processing and taking longer than expected.

            Example responses
            • {
                "creationDate": "2024-04-17T06:44:49.000Z",
                "hosts": [
                  "/v1/hosts/269"
                ],
                "id": "2e408848-3b5e-44a6-afcc-4fb929cb15ac",
                "name": "testHostGroup",
                "primary": "7c107dc5-4b97-46af-a8b7-32c1aeabfb73",
                "secondaries": [
                  "f1ab14fc-b085-4ff0-a053-3e42515c3115"
                ]
              }

            Get the details of a host group

            GET /v1/host-groups/{host_group_id}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.host-group.read

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.host-group.read

            Request

            Path Parameters

            • Hostgroup ID

            Response

            Description of a host group

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Internal Server Error

            • Gateway Timeout. Request is still processing and taking longer than expected.

            Example responses
            • {
                "creationDate": "2024-04-17T06:44:49.000Z",
                "hosts": [
                  "/v1/hosts/269"
                ],
                "id": "2e408848-3b5e-44a6-afcc-4fb929cb15ac",
                "name": "testHostGroup",
                "primary": "7c107dc5-4b97-46af-a8b7-32c1aeabfb73"
              }

            Share/unshare a host group with another workspace

            PUT /v1/host-groups/{host_group_id}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.host-group.update

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.host-group.update

            Request

            Path Parameters

            • Hostgroup ID

            Parameters to set the sharing status of the host group

            Response

            Description of a host group

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Conflict

            • Internal Server Error

            • Gateway Timeout. Request is still processing and taking longer than expected.

            Example responses
            • {
                "creationDate": "2024-04-17T06:44:49.000Z",
                "hosts": [
                  "/v1/hosts/269"
                ],
                "id": "2e408848-3b5e-44a6-afcc-4fb929cb15ac",
                "name": "testHostGroup",
                "primary": "7c107dc5-4b97-46af-a8b7-32c1aeabfb73",
                "secondaries": [
                  "f1ab14fc-b085-4ff0-a053-3e42515c3115"
                ]
              }

            Get the list of all the hosts the workspace has access to

            GET /v1/hosts

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.host.list

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.host.list

            Request

            No Request Parameters

            This method does not accept any request parameters.

            Response

            Host description

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Internal Server Error

            • Gateway Timeout. Request is still processing and taking longer than expected.

            Example responses
            • [
                {
                  "capacity": {
                    "cores": {
                      "available": 15,
                      "reserved": 5,
                      "total": 20,
                      "used": 0
                    },
                    "memory": {
                      "available": 940.65,
                      "reserved": 83.35,
                      "total": 1024,
                      "used": 0
                    }
                  },
                  "displayName": "s922Host",
                  "hostGroup": {
                    "access": "primary",
                    "href": "/v1/host-groups/f63294c1-642f-4d83-9bdc-221bf2b72674",
                    "name": "testHostGroup"
                  },
                  "id": 308,
                  "state": "up",
                  "status": "enabled",
                  "sysType": "s922"
                },
                {
                  "capacity": {
                    "cores": {
                      "available": 35,
                      "reserved": 5,
                      "total": 40,
                      "used": 0
                    },
                    "memory": {
                      "available": 1924.75,
                      "reserved": 123.25,
                      "total": 2048,
                      "used": 0
                    }
                  },
                  "displayName": "s1022Host",
                  "hostGroup": {
                    "access": "primary",
                    "href": "/v1/host-groups/f63294c1-642f-4d83-9bdc-221bf2b72674",
                    "name": "testHostGroup"
                  },
                  "id": 401,
                  "state": "up",
                  "status": "enabled",
                  "sysType": "s1022"
                }
              ]

            Add new host(s) to an existing host group

            POST /v1/hosts

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.host.create

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.host-group.update

            Request

            Parameters to add a host to an existing host group

            Response

            Host description

            Status Code

            • Created

            • Bad Request

            • Unauthorized

            • Forbidden

            • Unprocessable Entity

            • Internal Server Error

            • Gateway Timeout. Request is still processing and taking longer than expected.

            Example responses
            • {
                "capacity": {
                  "cores": {
                    "available": 15,
                    "reserved": 5,
                    "total": 20,
                    "used": 0
                  },
                  "memory": {
                    "available": 940.65,
                    "reserved": 83.35,
                    "total": 1024,
                    "used": 0
                  }
                },
                "displayName": "myHost",
                "hostGroup": {
                  "access": "primary",
                  "href": "/v1/host-groups/f63294c1-642f-4d83-9bdc-221bf2b72674",
                  "name": "testHostGroup"
                },
                "id": 308,
                "state": "up",
                "status": "enabled",
                "sysType": "s922"
              }

            Release a host from its host group

            DELETE /v1/hosts/{host_id}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.host.delete

            Auditing

            Calling this method generates the following auditing events.

            • power-iaas.host-group.delete

            • power-iaas.host.delete

            Request

            Path Parameters

            • Host ID

            Response

            Status Code

            • Accepted

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Internal Server Error

            • Gateway Timeout. Request is still processing and taking longer than expected.

            No Sample Response

            This method does not specify any sample responses.

            Get the details about a host

            GET /v1/hosts/{host_id}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.host.read

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.host.read

            Request

            Path Parameters

            • Host ID

            Response

            Host description

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Internal Server Error

            • Gateway Timeout. Request is still processing and taking longer than expected.

            Example responses
            • {
                "capacity": {
                  "cores": {
                    "available": 15,
                    "reserved": 5,
                    "total": 20,
                    "used": 0
                  },
                  "memory": {
                    "available": 940.65,
                    "reserved": 83.35,
                    "total": 1024,
                    "used": 0
                  }
                },
                "displayName": "myHost",
                "hostGroup": {
                  "access": "primary",
                  "href": "/v1/host-groups/f63294c1-642f-4d83-9bdc-221bf2b72674",
                  "name": "testHostGroup"
                },
                "id": 308,
                "state": "up",
                "status": "enabled",
                "sysType": "s922"
              }

            Modify the display name of a host

            PUT /v1/hosts/{host_id}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.modify

              Grants access to this and other methods.

            • power-iaas.host.update

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.host.update

            Request

            Path Parameters

            • Host ID

            Parameters to modify a host

            Response

            Host description

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Unprocessable Entity

            • Internal Server Error

            • Gateway Timeout. Request is still processing and taking longer than expected.

            Example responses
            • {
                "capacity": {
                  "cores": {
                    "available": 15,
                    "reserved": 5,
                    "total": 20,
                    "used": 0
                  },
                  "memory": {
                    "available": 940.65,
                    "reserved": 83.35,
                    "total": 1024,
                    "used": 0
                  }
                },
                "displayName": "updatedHostName",
                "hostGroup": {
                  "access": "primary",
                  "href": "/v1/host-groups/f63294c1-642f-4d83-9bdc-221bf2b72674",
                  "name": "testHostGroup"
                },
                "id": 308,
                "state": "up",
                "status": "enabled",
                "sysType": "s922"
              }

            Get all Datacenters information and capabilities

            GET /v1/datacenters

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.datacenter.list

            Request

            No Request Parameters

            This method does not accept any request parameters.

            • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/v1/datacenters   -H 'Authorization: Bearer <>'
                -H 'CRN:'
                -H 'Content-Type: application/json'

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Internal Server Error

            Example responses

            Get a Datacenter's information and capabilities

            GET /v1/datacenters/{datacenter_region}

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.datacenter.read

            Request

            Path Parameters

            • Datacenter Region

            • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/v1/datacenters/${datacenter_region}   -H 'Authorization: Bearer <>'
                -H 'CRN:'
                -H 'Content-Type: application/json'  

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Internal Server Error

            Example responses

            Get a list of all the snapshots on a workspace

            View the usage of snapshots on the workspace. The snapshots may take time sync because the data is cached.

            GET /v1/snapshots

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.snapshot.list

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.snapshot.list

            Request

            No Request Parameters

            This method does not accept any request parameters.

            Response

            Status Code

            • OK

            • Unauthorized

            • Forbidden

            • Not Found

            • Internal Server Error

            • Service Unavailable

            Example responses

            Get the detail of a snapshot

            View the usage of a snapshot. The snapshot may take time sync because the data is cached.

            GET /v1/snapshots/{snapshot_id}

            Authorization

            To call this method, you must be assigned one or more IAM access roles that include the following actions, depending on any listed conditions. You can check your access by going to Users > User > Access.

            • power-iaas.cloud-instance.read

              Grants access to this and other methods.

            • power-iaas.snapshot.read

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.snapshot.read

            Request

            Path Parameters

            • PVM Instance snapshot id

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Internal Server Error

            • Service Unavailable

            Example responses

            Get all Workspaces information and capabilities for a tenant

            GET /v1/workspaces

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.workspace.list

            Request

            No Request Parameters

            This method does not accept any request parameters.

            • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/v1/workspaces   -H 'Authorization: Bearer <>'
                -H 'CRN:'
                -H 'Content-Type: application/json'  

            Response

            Status Code

            • OK

            • Unauthorized

            • Forbidden

            • Too Many Requests

            • Internal Server Error

            Example responses

            Get a Workspace's information and capabilities

            GET /v1/workspaces/{workspace_id}

            Auditing

            Calling this method generates the following auditing event.

            • power-iaas.workspace.list

            Request

            Path Parameters

            • Workspace ID

            • curl -X GET   https://us-east.power-iaas.cloud.ibm.com/v1/workspaces/${workspace_id}   -H 'Authorization: Bearer <>'
                -H 'CRN:'
                -H 'Content-Type: application/json'

            Response

            Status Code

            • OK

            • Bad Request

            • Unauthorized

            • Forbidden

            • Not Found

            • Too Many Requests

            • Internal Server Error

            Example responses