Introduction

Use the IBM Cloud® Virtual Private Cloud (VPC) API to programmatically provision and manage virtual server instances, along with subnets, volumes, load balancers, and more.

SDKs for Java, Node, Python, and Go are available to make it easier to programmatically access the API from your code. The client libraries that are provided by the SDKs implement best practices for using the API and reduce the amount of code that you need to write. The tab for each language includes code examples that demonstrate how to use the client libraries.

For details about using IBM Cloud VPC, see Getting started with IBM Cloud® Virtual Private Cloud (VPC).

This documentation describes the Go SDK version 0.20.0. This SDK uses Semantic Versioning, and as such, there may be backward-incompatible changes for any new 0.y.z version. For information about the latest Go SDK, see Releases. For instructions and examples on using IBM Cloud services in an IBM Cloud SDK client library, see Using the SDK.

This documentation describes the Java SDK version 0.8.1. This SDK uses Semantic Versioning, and as such, there may be backward-incompatible changes for any new 0.y.z version. For information about the latest Java SDK, see Releases. For instructions and examples on using IBM Cloud services in an IBM Cloud SDK client library, see Using the SDK.

This documentation describes the Node SDK version 0.8.0. This SDK uses Semantic Versioning, and as such, there may be backward-incompatible changes for any new 0.y.z version. For information about the latest Node SDK, see Releases. For instructions and examples on using IBM Cloud services in an IBM Cloud SDK client library, see Using the SDK.

This documentation describes the Python SDK version 0.10.0. This SDK uses Semantic Versioning, and as such, there may be backward-incompatible changes for any new 0.y.z version. For information about the latest Python SDK, see Releases. For instructions and examples on using IBM Cloud services in an IBM Cloud SDK client library, see Using the SDK.

The code examples on this tab use the client library that is provided for Go.

Installation:

go get github.com/IBM/vpc-go-sdk@v0.20.0

For more information, view the project on GitHub: https://github.com/IBM/vpc-go-sdk/. See also Using the SDK.

The code examples on this tab use the client library that is provided for Java.

Maven example:

<dependency>
    <groupId>com.ibm.cloud</groupId>
    <artifactId>vpc</artifactId>
    <version>0.8.1</version>
</dependency>

Gradle example:

compile 'com.ibm.cloud:vpc:0.8.1'

For more information, view the project on GitHub: https://github.com/IBM/vpc-java-sdk/. See also Using the SDK.

The code examples on this tab use the client library that is provided for Node.

Installation:

npm install ibm-vpc

For more information, view the project on GitHub: https://github.com/IBM/vpc-node-sdk/. See also Using the SDK.

The code examples on this tab use the client library that is provided for Python.

Installation:

pip install --upgrade "ibm-vpc>=0.10.0"

For more information, view the project on GitHub: https://github.com/IBM/vpc-python-sdk/. See also the Python client library for IBM Cloud VPC Services https://pypi.org/project/ibm-vpc/ and Using the SDK.

Endpoint URLs

The IBM Cloud VPC API is available in the following IBM Cloud® regions:

Region name Region Endpoint (service URL)
US South us-south https://us-south.iaas.cloud.ibm.com/v1
US East us-east https://us-east.iaas.cloud.ibm.com/v1
Toronto ca-tor https://ca-tor.iaas.cloud.ibm.com/v1
United Kingdom eu-gb https://eu-gb.iaas.cloud.ibm.com/v1
EU - Germany eu-de https://eu-de.iaas.cloud.ibm.com/v1
Tokyo jp-tok https://jp-tok.iaas.cloud.ibm.com/v1
Osaka jp-osa https://jp-osa.iaas.cloud.ibm.com/v1
Sydney au-syd https://au-syd.iaas.cloud.ibm.com/v1
São Paulo br-sao https://br-sao.iaas.cloud.ibm.com/v1

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 images available in the us-south region, make a GET request to https://us-south.iaas.cloud.ibm.com/v1/images.

To change the SDK service URL, reinstantiate the service instance with a different region-specific URL. For more information, see Using the SDK.

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.

Default service URL:

https://us-south.iaas.cloud.ibm.com/v1

Example to change the service URL to the United Kingdom region:

authenticator := &core.IamAuthenticator{
  ApiKey: "{api_key}",
}

options := &vpcv1.VpcV1Options{
  Authenticator: authenticator,
  URL:  "https://eu-gb.iaas.cloud.ibm.com/v1",
}

For more information, see Using the SDK.

Default service URL:

https://us-south.iaas.cloud.ibm.com/v1

Example to change the service URL to the United Kingdom region:

Authenticator authenticator = new IamAuthenticator("{api_key}");
Vpc service = new Vpc("{version}", Vpc.DEFAULT_SERVICE_NAME, authenticator);
setServiceUrl("https://eu-gb.iaas.cloud.ibm.com/v1");

For more information, see Using the SDK.

Default service URL:

https://us-south.iaas.cloud.ibm.com/v1

Example to change the service URL to the United Kingdom region:

const service = {
  authenticator: new IamAuthenticator({
    apikey: '{api_key}'
  }),
  serviceUrl: 'https://eu-gb.iaas.cloud.ibm.com/v1'
};
const vpcService = new VpcV1(service);

For more information, see Using the SDK.

Default service URL:

https://us-south.iaas.cloud.ibm.com/v1

Example to change the service URL to the United Kingdom region:

from ibm_vpc import VpcV1
from ibm_cloud_sdk_core.authenticators import IAMAuthenticator

authenticator = IAMAuthenticator('apikey')
service = VpcV1(authenticator=authenticator)
service.set_service_url('https://eu-gb.iaas.cloud.ibm.com/v1')

For more information, see Using the SDK.

Authentication

The IBM Cloud VPC 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 > name > Access policies.

For more information about IAM actions and how they map to roles, see Assigning access to account management services and Required permissions.

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}'.

When you use the SDK, configure an IAM authenticator with the IAM API key. The authenticator automatically obtains the IAM access token for the API key and includes it with each request. You can construct an authenticator in either of two ways:

  • Programmatically, by constructing an IAM authenticator instance and supplying your IAM API key.
  • Externally, in configuration options that are then used by the SDK to construct an IAM authenticator at run time.

Provide external configuration options by either:

  • Storing the configuration options in environment variables. When you initialize the service client, the SDK constructs the authenticator by reading the configuration properties directly from the environment variables.
  • Saving the configuration options in a file. When you initialize the service client, the SDK constructs the authenticator by reading the configuration properties from the file specified by the IBM_CREDENTIALS_FILE environment variable.

In this example of using external configuration properties, an IAM authenticator instance is created with the configured API key, and then the service client is constructed with this authenticator instance and the configured service URL.

For more information, see the Authentication section in the IBM Cloud SDK Common documentation.

Outside of development and testing, never hard-code secrets (such as IAM API keys) into a client application.

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/keys:

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

Setting client options programmatically

Construct the service client programmatically, where {api_key} is your hardcoded IAM API key:

import {
  "github.com/IBM/go-sdk-core/v5/core"
  "github.com/IBM/vpc-go-sdk/vpcv1"
}
// Create an IAM authenticator.
authenticator := &core.IamAuthenticator{
  ApiKey: "{api_key}",
}
// Construct an "options" struct for creating the service client.
options := &vpcv1.VpcV1Options{
  Authenticator: authenticator,                            // required
  URL:           "https://us-east.iaas.cloud.ibm.com/v1",  // optional
}
// Construct the service client.
vpcService, err := vpcv1.NewVpcV1(options)
if err != nil {
  panic(err)
}

Service operations can now be invoked using the vpcService variable.

Setting client options through environment variables

Export environment variables to implement service client options, where {service_url} is an endpoint URL for the service and {api_key} is an IAM API key.

export VPC_URL={service_url}
export VPC_AUTH_TYPE=iam
export VPC_APIKEY={api_key}

Construct the service client using external configuration. vpcv1.NewVpcV1UsingExternalConfig() initializes the client with the environment variables, using them for subsequent authentication.

vpcService, err := vpcv1.NewVpcV1UsingExternalConfig()

Setting client options through a credentials file

Store credentials in a file such as my-credentials.env, where {service_url} is an endpoint URL for the service and {api_key} is an IAM API key.

VPC_URL={service_url}
VPC_AUTH_TYPE=iam
VPC_APIKEY={api_key}

Export the name of the file with an environment variable, where {credential_file_path} is the absolute path to your credentials file, such as "$HOME/secrets/vpc-credentials.env".

export IBM_CREDENTIALS_FILE={credential_file_path}

Construct the service client using external configuration. vpcv1.NewVpcV1UsingExternalConfig() initializes with the defined credential file, using it for subsequent authentication.

vpcService, err := vpcv1.NewVpcV1UsingExternalConfig()

Setting client options programmatically

Construct the service client programmatically, where {api_key} is your hardcoded IAM API key.

import com.ibm.cloud.is.vpc.v1.Vpc;
import com.ibm.cloud.sdk.core.security.Authenticator;
import com.ibm.cloud.sdk.core.security.IamAuthenticator;
// Create an IAM authenticator.
Authenticator authenticator = new IamAuthenticator.Builder()
  .apikey("{api_key}")
  .build();
// Construct the service client.
Vpc service = new Vpc(Vpc.DEFAULT_SERVICE_NAME, authenticator);
// Set our custom service URL (optional).
service.setServiceUrl("https://us-east.iaas.cloud.ibm.com/v1");

Setting client options through environment variables

Export environment variables to implement service client options, where {service_url} is an endpoint URL for the service and {api_key} is an IAM API key.

export VPC_URL={service_url}
export VPC_AUTH_TYPE=iam
export VPC_APIKEY={api_key}

Construct the service client using external configuration. Vpc.newInstance() initializes the client with the environment variables, using them for subsequent authentication.

import com.ibm.cloud.is.vpc.v1.Vpc;
Vpc service = Vpc.newInstance();

Setting client options through a credentials file

Store credentials in a file such as my-credentials.env, where {service_url} is an endpoint URL for the service and {api_key} is an IAM API key.

VPC_URL={service_url}
VPC_AUTH_TYPE=iam
VPC_APIKEY={api_key}

Export the name of the file with an environment variable, where {credential_file_path} is the absolute path to your credentials file, such as "$HOME/secrets/vpc-credentials.env".

export IBM_CREDENTIALS_FILE={credential_file_path}

Construct the service client using external configuration. Vpc.newInstance() initializes with the defined credential file, using it for subsequent authentication.

import com.ibm.cloud.is.vpc.v1.Vpc;
Vpc service = Vpc.newInstance();

Setting client options programmatically

Construct the service client programmatically, where {api_key} is your hardcoded IAM API key.

const VpcV1 = require('vpc-node-sdk/vpc/v1');
const { IamAuthenticator } = require('vpc-node-sdk/auth');

// Create an IAM authenticator.
const authenticator = new IamAuthenticator({
  apikey: '{api_key}',
});

// Construct the service client.
const vpcService = new VpcV1({
  authenticator,                                       // required
  serviceUrl: 'https://us-east.iaas.cloud.ibm.com/v1', // optional
});

Setting client options through environment variables

Export environment variables to implement service client options, where {service_url} is an endpoint URL for the service and {api_key} is an IAM API key.

export VPC_URL={service_url}
export VPC_AUTH_TYPE=iam
export VPC_APIKEY={api_key}

Construct the service client using external configuration. VpcV1.newInstance() initializes the client with the environment variables, using them for subsequent authentication.

const VpcV1 = require('vpc-node-sdk/vpc/v1');
const vpcService = VpcV1.newInstance();

Setting client options through a credentials file

Store credentials in a file such as my-credentials.env, where {service_url} is an endpoint URL for the service and {api_key} is an IAM API key.

VPC_URL={service_url}
VPC_AUTH_TYPE=iam
VPC_APIKEY={api_key}

Export the name of the file with an environment variable, where {credential_file_path} is the absolute path to your credentials file, such as "$HOME/secrets/vpc-credentials.env".

export IBM_CREDENTIALS_FILE={credential_file_path}

Construct the service client using external configuration. VpcV1.newInstance() initializes with the defined credential file, using it for subsequent authentication.

const VpcV1 = require('vpc-node-sdk/vpc/v1');
const vpcService = VpcV1.newInstance();

Setting client options programmatically

Construct the service client, where {api_key} is your hardcoded IAM API key

from ibm_vpc import VpcV1
from ibm_cloud_sdk_core.authenticators import IAMAuthenticator

# Create an IAM authenticator.
authenticator = IAMAuthenticator('{api_key}')
# Construct the service client.
service = VpcV1(authenticator=authenticator)
# Set custom service URL (optional)
service.set_service_url('https://us-east.iaas.cloud.ibm.com/v1')

Setting client options through environment variables

Export environment variables to implement service client options, where {service_url} is an endpoint URL for the service and {api_key} is an IAM API key.

export VPC_URL={service_url}
export VPC_AUTH_TYPE=iam
export VPC_APIKEY={api_key}

Construct the service client using external configuration. VpcV1.new_instance() initializes the client with the environment variables, using them for subsequent authentication.

from ibm_vpc import VpcV1
service = VpcV1.new_instance()

Setting client options through a credentials file

Store credentials in a file such as my-credentials.env, where {service_url} is an endpoint URL for the service and {api_key} is an IAM API key.

VPC_URL={service_url}
VPC_AUTH_TYPE=iam
VPC_APIKEY={api_key}

Export the name of the file with an environment variable, where {credential_file_path} is the absolute path to your credentials file, such as "$HOME/secrets/vpc-credentials.env".

export IBM_CREDENTIALS_FILE={credential_file_path}

Construct the service client using external configuration. VpcV1.new_instance() initializes with the defined credential file, using it for subsequent authentication.

from ibm_vpc import VpcV1
service = VpcV1.new_instance()

Authorization

Access management to VPC infrastructure resources is done through resource groups and IAM. The service VPC Infrastructure contains various resource types that can be controlled. Learn more about required permissions for API and CLI calls.

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 how to track VPC activity, see Activity Tracker events.

Error handling

This API uses standard HTTP response codes to indicate the outcome of a request. A 2xx-series response indicates success. A 4xx-series response indicates a failure that the client must resolve. A 5xx-series response indicates a service failure.

HTTP error code Description Disposition
200 Success The request was successful.
400 Bad Request The input parameters in the request body are either incomplete or in the wrong format. 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 again. If this error persists, contact the account owner to check your permissions.
403 Forbidden The supplied authentication is not authorized to access '{namespace}'.
404 Not Found The requested resource could not be found.
408 Request Timeout The connection to the server timed out. Wait a few minutes, and try again.
409 Conflict The entity is already in the requested state.
500 Internal Server Error A generic error message is returned when an unexpected condition was encountered and no more specific message is suitable.
501 Not Implemented The server either does not recognize the request method, or it lacks the ability to fulfill the request. Usually this message implies future availability, such as a new feature of a web-service API.
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 may also be due to an unplanned outage of a service that is needed to process the request.
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.

Error handling example:

import "github.com/IBM/vpc-go-sdk/vpcv1"

// Instantiate a service
vpcService, vpcServiceErr := vpcv1.NewVpcV1(options)

// Check for errors
if vpcServiceErr != nil {
  panic(vpcServiceErr)
}

// Call a method
listVpcsOptions := &vpcv1.ListVpcsOptions{}
  vpcs, _, err := vpcService.ListVpcs(listVpcsOptions)

// Check for errors
if err != nil {
  panic(err)
}

Error handling example:

try {
  // Invoke an operation
  Response<Resource> response = service.getResource(options).execute();


  // Process response...


} catch (BadRequestException e) {
  // Handle Bad Request (400) exception
} catch (UnauthorizedException e) {
  // Handle Unauthorized (401) exception
} catch (NotFoundException e) {
  // Handle Not Found (404) exception
} catch (RequestTooLargeException e) {
  // Handle Request Too Large (413) exception
} catch (ServiceResponseException e) {
  // Base class for all exceptions caused by error responses from the service
  System.out.println("Service returned status code "
    + e.getStatusCode() + ": " + e.getMessage());
  System.out.println("Detailed error info:\n" + e.getDebuggingInfo().toString());
}

Error handling example:

try {
    const response = await vpcService.getResource();
    // ...handle successful response...
} catch (err) {
    // ...handle error response...
    console.log("Error status code: " + err.status + " (" + err.statusText + ")");
    console.log("Error message:     " + err.message);
}

Example of error handling:

from ibm_cloud_sdk_core import ApiException

try:
    vpcs = service.list_vpcs().get_result()['vpcs']
except ApiException as e:
    print("List VPC failed with status code " + str(e.code) + ": " + e.message)

Versioning

This reference documents API behavior for any date value in the version parameter between 2022-03-29 and today's date. To view the reference for an older version of the API, select it from the Version list.

Requests to the VPC API require a major version as the first segment of the request path (/v1/) and a date-based version as a query parameter in the format version=YYYY-MM-DD.

The VPC API supports a continuous series of version dates from 2019-01-01 to today's date (in UTC).

Most changes to the VPC API are designed to be compatible with existing clients and are made available to clients that specify any supported version date. For example, support for new paths, new optional parameters, and additional properties in responses are considered backward compatible and, when possible, are made available without respect to the version date specified by a client.

By design, backward-incompatible changes, such as the removal or restructuring of existing properties or parameters, are made available only for clients that specify version dates on or after the feature became available.

To maximize the compatibility of your client with future API changes, follow the best practices for client development.

When you develop a new client, specify the current date (as of the time of development) as a fixed value for the version parameter, and keep that same fixed version date value when you test and ship your client. Do not specify a value for the version parameter that is dynamically computed based on the date your code is compiled or executed.

Features that require clients to specify a later version date are specifically noted in the change log, along with guidance on how to migrate your client to work with newer versions.

As a best practice, review the change log on a periodic basis. To use the latest features and maintain ongoing compatibility, update and test your client with a newer version date. As with new clients, specify the current date (as of the time you update your client code) as a fixed value for the version parameter.

Deprecation

A method, path, parameter, property or other feature will be marked as deprecated when usage is no longer recommended, such as when it's been rendered obsolete by new features. After a feature is deprecated, support for that feature may be removed for clients that specify new version dates.

Features that are no longer supported in new API versions are specifically noted in the change log, along with guidance on how to migrate your client to work with newer versions.

The oldest supported version date (currently 2019-01-01) may be moved forward in the future, necessitating clients to specify a newer version date and make any updates needed to work with that newer version.

Each SDK version uses a corresponding version of the API that it was developed and tested to be compatible with.

Example request to list regions in the 2022-03-15 version of the v1 API:

curl -X GET   "$vpc_api_endpoint/v1/regions?version=2022-06-28&generation=2"   -H "Authorization: Bearer $iam_token"

Concurrent update protection

To prevent multiple clients from unknowingly overwriting each other's updates, select API methods support entity-tags and conditional requests as specified in RFC 7232.

To make a conditional request, first issue a GET request on the resource to retrieve its up-to-date representation. The response will include an ETag header, whose value is a fingerprint of the resource's current client-configurable state. Next, verify that the method you want to perform (typically an update or a delete) is appropriate given the current state of the resource. For example, you may want to only delete a VPN server if its port property has a specific value. Finally, if the resource is still in the appropriate state, issue the API request, as usual, but make the request conditional by including an If-Match header with its value set to the ETag value from the earlier GET request.

Because the If-Match header was provided, the server will check that the resource's current ETag value (which reflects the client-configurable state) matches the value you provided in the If-Match header. If the two values match, the server can be certain the resource has not been updated in the interim, and request processing continues as usual. Otherwise, the resource was updated (by another client) between the time you issued the GET and the time you issued the conditional request, and the request will fail with 412 Precondition Failed. Because a resource may be updated by another client at any time, clients issuing conditional requests must be written to check for a 412 failure, and if encountered, restart the sequence by reissuing the original GET request.

Because 412 indicates that the resource has been updated, before reissuing the conditional request, the client must both retrieve the latest ETag value using GET and verify that the representation of the resource is still appropriate for the conditional request.

For additional safety, the VPC API requires that any PATCH request that includes an array property must also provide an If-Match header. For example, a PATCH /volumes/{id} request that includes the user_tags array property will fail with 400 Bad Request if the If-Match header is not provided. In contrast, a PATCH /volumes/{id} request to modify just the name string property need not provide an If-Match header (since no array is present). However, if the If-Match header is provided, the server will check its value and will return 412 Precondition Failed if the value is not current.

The ETag and If-Match headers must be used only on methods that have explicit documentation that those headers are supported. Other related headers described in RFC 7232, such as If-None-Match and If-Modified-Since, are not supported at this time.

Pagination

Some API requests can return many results. To improve performance, results are returned one page at a time, with a limited number of results on each page. The default page size is typically 50 items, with a maximum size of 100.

The default and maximum limits might vary by operation. To specify a different page size, use the limit query parameter.

For a request that uses pagination, the response includes additional properties:

  • The first.href property links to the first page of resources
  • The next.href property links to the next page of resources (included for all pages except for the last page)

Use query parameters to page through your available resources and retrieve a subset of objects. To retrieve the first page of results, make the request without specifying a start query parameter. If the results cannot fit on the first page, the response will include a next property, whose value can then be specified as the start parameter when making the next page request. Each page of results is based on the resources that exist at the time of each paginated request, and therefore may include resources that did not exist when the first request was made. The last page of results will not include a next property.

When you're retrieving a subset of objects:

  • You must add the version and generation query parameters to the href value before you make the request
  • You may use the value of first.href to retrieve the first page of resources in the requested sort order and with the requested filters
  • You may use the value of next.href to retrieve the next page of resources in the requested sort order and with the requested filters
  • You may not change the requested filters across page retrievals
  • You may not add a sort query parameter to the href value (sort order is set by the first paginated list request)
  • You may modify the limit in the href value to limit the number of resources to return, per page, in a paginated list operation
  • You may not change the path segments of the request (that is, anything before the ? in the href value)

List the first five keys: .../keys?limit=5

List the first five keys on the next page: .../keys?limit=5&start=9d5a91a3e2cbd233b5a5b33436855ed1

The next value comes from the previous response's start value, which is a link. Here's the href from the response of the first page:

"href": "https://us-south.iaas.cloud.ibm.com/v1/vpcs?limit=1&start=r134-fe06d70f-ec6c-4451-b0a2-37b6ec91a217"

Use the start value r134-fe06d70f-ec6c-4451-b0a2-37b6ec91a217 in your next call to fetch page 2:

next := "r134-fe06d70f-ec6c-4451-b0a2-37b6ec91a217"
	listVpcsOptions := &vpcv1.ListVpcsOptions{
		Limit: core.Int64Ptr(1),
		Start: &next,
	}
	vpcs, _, err := vpcService.ListVpcs(listVpcsOptions)

The next value comes from the previous response's start value, which is a link. Here's the href from the response of the first page:

"href": "https://us-south.iaas.cloud.ibm.com/v1/vpcs?limit=1&start=r134-fe06d70f-ec6c-4451-b0a2-37b6ec91a217"

Use the start value r134-fe06d70f-ec6c-4451-b0a2-37b6ec91a217 in your next call to fetch page 2:

ListVpcsOptions listVpcsOptions = new ListVpcsOptions.Builder()
.start("r134-fe06d70f-ec6c-4451-b0a2-37b6ec91a217")
.limit(Long.valueOf("10"))
.build();
Response<VPCCollection> response = service.listVpcs(listVpcsOptions).execute();
VPCCollection vpcCollectionResult = response.getResult();

The next value comes from the previous response's start value, which is a link. Here's the href from the response of the first page:

"href": "https://us-south.iaas.cloud.ibm.com/v1/vpcs?limit=1&start=r134-fe06d70f-ec6c-4451-b0a2-37b6ec91a217"

Copy the start value r134-fe06d70f-ec6c-4451-b0a2-37b6ec91a217 to the clipboard, and use that value in your next call to fetch page 2:

      const listVpcsResult = vpcService.listVpcs({
          start: 'r134-fe06d70f-ec6c-4451-b0a2-37b6ec91a217',
          limit: 10,
        });

The next value comes from the previous response's start value, which is a link. Here's the href from the response of the first page:

"href": "https://us-south.iaas.cloud.ibm.com/v1/vpcs?limit=1&start=r134-fe06d70f-ec6c-4451-b0a2-37b6ec91a217"

Use the start value r134-fe06d70f-ec6c-4451-b0a2-37b6ec91a217 in your next call to fetch page 2:

    next = response.get_result()['next']
try:
    response = service.list_vpcs(start="r134-fe06d70f-ec6c-4451-b0a2-37b6ec91a217", limit=1).get_result()['vpcs']
except ApiException as e:
    print("List VPC failed with status code " + str(e.code) + ": " + e.message)

Response model properties

Certain properties are included in API responses for all customer-created VPC resources. The created_at value is a timestamp that matches when the resource became visible through calls to the IBM Cloud VPC API.

Generation

To use the IBM Cloud VPC infrastructure, send the generation=2 query parameter with every API request.

Example: Create a VPC

POST /v1/vpcs?generation=2

Variables

Consider storing frequently used values (such as the API service URL, authorization token, API version, and other resource identifiers) in variables.

The following topics contain information on setting variables:

Example of storing the us-south service URL in a variable:

vpc_api_endpoint=https://us-south.iaas.cloud.ibm.com

Resource names

VPC resource names adhere to a common regular expression that:

  • Forbids uppercase characters
  • Forbids trailing dashes
  • Reserves leading dashes for system use
  • Has a name length of 1 - 63 characters
  • Allows leading digits for system-owned resources (and, eventually, for all resources)
    • On a request, the permitted regex is ^([a-z]|[a-z][-a-z0-9]*[a-z0-9]|[0-9][-a-z0-9]*([a-z]|[-a-z][-a-z0-9]*[a-z0-9]))$.

      Resources that do not yet allow leading digits use ^([a-z]|[a-z][-a-z0-9]*[a-z0-9])$.

    • On a response, the possible regex is ^-?([a-z]|[a-z][-a-z0-9]*[a-z0-9]|[0-9][-a-z0-9]*([a-z]|[-a-z][-a-z0-9]*[a-z0-9]))$.

Resource namespaces are per resource type and per account. For example, a volume and a server in the same availability zone (AZ) and account can both be named b, and two accounts can both contain a volume that is named b in the same AZ.

For a resource type within an account:

  • If the resource is scoped within a parent resource, names must be unique within that parent resource.
  • If the resource is scoped within a VPC, names must be unique within that VPC.
  • If the resource is regional (or smaller), names must be regionally unique.

If a resource's namespace can contain both customer-created and IBM-created resources, all IBM-created resources (such as IBM-provided images) begin with ibm-. Customers are unable to create resources with the prefix ibm-.

Resource names that begin with a hyphen (-) are reserved for system use and are sometimes used in place of user-defined names. For example, names included with references to deleted resources are prefixed with -deleted-.

If you don't name a resource during resource creation, the system automatically generates a resource name.

Deleted resources

In some responses, embedded resource references may refer to resources that have been deleted. This possibility is noted in contexts where it's expected. Rarely, references to deleted resources may also appear when the system cannot resolve a conflict between concurrent requests.

The presence of a deleted property can be used to determine that a reference is to a deleted resource. The deleted property contains an object with a more_info link to relevant documentation.

References to deleted resources will have a name prefixed with -deleted- and suffixed with a value to ensure the resource remains unique within its namespace, even if its user-defined name has been reused. This name should not be parsed for information and may not contain any part of the original user-defined name.

{
  "name": "-deleted-e1b7144d1645",
  "href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/b6b9395e-6a4d-4291-b824-e1b7144d1645",
  "crn": "crn:[...]",
  "deleted": {
    "more_info": "https://cloud.ibm.com/apidocs/vpc#deleted-resources"
  }
}

API best practices

To minimize bugs caused by changes, follow these best practices when you call the API:

  • Catch and log any 4xx or 5xx HTTP status code along with the included trace property
  • Follow HTTP redirect rules for any 3xx HTTP status code
  • Use only the resources and properties that are needed for your client to function
  • Do not send any extraneous input in a request
  • Specify a fixed value for the API version parameter
  • Avoid depending on any behavior that is not explicitly documented

Change log

Important changes to the API, such as additions, updates, and deprecations, are documented in the change log.

Features that require clients to specify a later version date are specifically noted in the change log, along with guidance on how to migrate your client to work with newer versions. See Versioning for more information.

SDK changes are based on API changes. When a new API version is available, the SDK reflects changes in the API.

Methods

List all VPCs

This request lists all VPCs in the region. A VPC is a virtual network that belongs to an account and provides logical isolation from other networks. A VPC is made up of resources in one or more zones. VPCs are regional, and each VPC can contain resources in multiple zones in a region.

This request lists all VPCs in the region. A VPC is a virtual network that belongs to an account and provides logical isolation from other networks. A VPC is made up of resources in one or more zones. VPCs are regional, and each VPC can contain resources in multiple zones in a region.

This request lists all VPCs in the region. A VPC is a virtual network that belongs to an account and provides logical isolation from other networks. A VPC is made up of resources in one or more zones. VPCs are regional, and each VPC can contain resources in multiple zones in a region.

This request lists all VPCs in the region. A VPC is a virtual network that belongs to an account and provides logical isolation from other networks. A VPC is made up of resources in one or more zones. VPCs are regional, and each VPC can contain resources in multiple zones in a region.

This request lists all VPCs in the region. A VPC is a virtual network that belongs to an account and provides logical isolation from other networks. A VPC is made up of resources in one or more zones. VPCs are regional, and each VPC can contain resources in multiple zones in a region.

GET /vpcs
(vpc *VpcV1) ListVpcs(listVpcsOptions *ListVpcsOptions) (result *VPCCollection, response *core.DetailedResponse, err error)
(vpc *VpcV1) ListVpcsWithContext(ctx context.Context, listVpcsOptions *ListVpcsOptions) (result *VPCCollection, response *core.DetailedResponse, err error)
list_vpcs(self,
        *,
        start: str = None,
        limit: int = None,
        resource_group_id: str = None,
        classic_access: bool = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<VPCCollection> listVpcs(ListVpcsOptions listVpcsOptions)
listVpcs(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.list

  • is.vpc.vpc.read

Auditing

Calling this method generates the following auditing event.

  • is.vpc.vpc.read

Create a VPC

This request creates a new VPC from a VPC prototype object. The prototype object is structured in the same way as a retrieved VPC, and contains the information necessary to create the new VPC.

This request creates a new VPC from a VPC prototype object. The prototype object is structured in the same way as a retrieved VPC, and contains the information necessary to create the new VPC.

This request creates a new VPC from a VPC prototype object. The prototype object is structured in the same way as a retrieved VPC, and contains the information necessary to create the new VPC.

This request creates a new VPC from a VPC prototype object. The prototype object is structured in the same way as a retrieved VPC, and contains the information necessary to create the new VPC.

This request creates a new VPC from a VPC prototype object. The prototype object is structured in the same way as a retrieved VPC, and contains the information necessary to create the new VPC.

POST /vpcs
(vpc *VpcV1) CreateVPC(createVPCOptions *CreateVPCOptions) (result *VPC, response *core.DetailedResponse, err error)
(vpc *VpcV1) CreateVPCWithContext(ctx context.Context, createVPCOptions *CreateVPCOptions) (result *VPC, response *core.DetailedResponse, err error)
create_vpc(self,
        *,
        address_prefix_management: str = None,
        classic_access: bool = None,
        name: str = None,
        resource_group: 'ResourceGroupIdentity' = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<VPC> createVpc(CreateVpcOptions createVpcOptions)
createVpc(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.create

Auditing

Calling this method generates the following auditing event.

  • is.vpc.vpc.create

Delete a VPC

This request deletes a VPC. This operation cannot be reversed. For this request to succeed, the VPC must not contain any instances, subnets, or public gateways. All security groups and network ACLs associated with the VPC are automatically deleted. All flow log collectors with auto_delete set to true targeting the VPC or any resource in the VPC are automatically deleted.

This request deletes a VPC. This operation cannot be reversed. For this request to succeed, the VPC must not contain any instances, subnets, or public gateways. All security groups and network ACLs associated with the VPC are automatically deleted. All flow log collectors with auto_delete set to true targeting the VPC or any resource in the VPC are automatically deleted.

This request deletes a VPC. This operation cannot be reversed. For this request to succeed, the VPC must not contain any instances, subnets, or public gateways. All security groups and network ACLs associated with the VPC are automatically deleted. All flow log collectors with auto_delete set to true targeting the VPC or any resource in the VPC are automatically deleted.

This request deletes a VPC. This operation cannot be reversed. For this request to succeed, the VPC must not contain any instances, subnets, or public gateways. All security groups and network ACLs associated with the VPC are automatically deleted. All flow log collectors with auto_delete set to true targeting the VPC or any resource in the VPC are automatically deleted.

This request deletes a VPC. This operation cannot be reversed. For this request to succeed, the VPC must not contain any instances, subnets, or public gateways. All security groups and network ACLs associated with the VPC are automatically deleted. All flow log collectors with auto_delete set to true targeting the VPC or any resource in the VPC are automatically deleted.

DELETE /vpcs/{id}
(vpc *VpcV1) DeleteVPC(deleteVPCOptions *DeleteVPCOptions) (response *core.DetailedResponse, err error)
(vpc *VpcV1) DeleteVPCWithContext(ctx context.Context, deleteVPCOptions *DeleteVPCOptions) (response *core.DetailedResponse, err error)
delete_vpc(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Void> deleteVpc(DeleteVpcOptions deleteVpcOptions)
deleteVpc(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.delete

Auditing

Calling this method generates the following auditing event.

  • is.vpc.vpc.delete

Retrieve a VPC

This request retrieves a single VPC specified by the identifier in the URL.

This request retrieves a single VPC specified by the identifier in the URL.

This request retrieves a single VPC specified by the identifier in the URL.

This request retrieves a single VPC specified by the identifier in the URL.

This request retrieves a single VPC specified by the identifier in the URL.

GET /vpcs/{id}
(vpc *VpcV1) GetVPC(getVPCOptions *GetVPCOptions) (result *VPC, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetVPCWithContext(ctx context.Context, getVPCOptions *GetVPCOptions) (result *VPC, response *core.DetailedResponse, err error)
get_vpc(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<VPC> getVpc(GetVpcOptions getVpcOptions)
getVpc(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.read

Auditing

Calling this method generates the following auditing event.

  • is.vpc.vpc.read

Update a VPC

This request updates a VPC's name.

This request updates a VPC's name.

This request updates a VPC's name.

This request updates a VPC's name.

This request updates a VPC's name.

PATCH /vpcs/{id}
(vpc *VpcV1) UpdateVPC(updateVPCOptions *UpdateVPCOptions) (result *VPC, response *core.DetailedResponse, err error)
(vpc *VpcV1) UpdateVPCWithContext(ctx context.Context, updateVPCOptions *UpdateVPCOptions) (result *VPC, response *core.DetailedResponse, err error)
update_vpc(self,
        id: str,
        vpc_patch: 'VPCPatch',
        **kwargs
    ) -> DetailedResponse
ServiceCall<VPC> updateVpc(UpdateVpcOptions updateVpcOptions)
updateVpc(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.update

Auditing

Calling this method generates the following auditing event.

  • is.vpc.vpc.update

Retrieve a VPC's default network ACL

This request retrieves the default network ACL for the VPC specified by the identifier in the URL. The default network ACL is applied to any new subnets in the VPC which do not specify a network ACL.

This request retrieves the default network ACL for the VPC specified by the identifier in the URL. The default network ACL is applied to any new subnets in the VPC which do not specify a network ACL.

This request retrieves the default network ACL for the VPC specified by the identifier in the URL. The default network ACL is applied to any new subnets in the VPC which do not specify a network ACL.

This request retrieves the default network ACL for the VPC specified by the identifier in the URL. The default network ACL is applied to any new subnets in the VPC which do not specify a network ACL.

This request retrieves the default network ACL for the VPC specified by the identifier in the URL. The default network ACL is applied to any new subnets in the VPC which do not specify a network ACL.

GET /vpcs/{id}/default_network_acl
(vpc *VpcV1) GetVPCDefaultNetworkACL(getVPCDefaultNetworkACLOptions *GetVPCDefaultNetworkACLOptions) (result *DefaultNetworkACL, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetVPCDefaultNetworkACLWithContext(ctx context.Context, getVPCDefaultNetworkACLOptions *GetVPCDefaultNetworkACLOptions) (result *DefaultNetworkACL, response *core.DetailedResponse, err error)
get_vpc_default_network_acl(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<DefaultNetworkACL> getVpcDefaultNetworkAcl(GetVpcDefaultNetworkAclOptions getVpcDefaultNetworkAclOptions)
getVpcDefaultNetworkAcl(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.network-acl.network-acl.read

Auditing

Calling this method generates the following auditing event.

  • is.vpc.vpc.read

Retrieve a VPC's default routing table

This request retrieves the default routing table for the VPC specified by the identifier in the URL. The default routing table is associated with any subnets in the VPC which have not been explicitly associated with a user-defined routing table.

This request retrieves the default routing table for the VPC specified by the identifier in the URL. The default routing table is associated with any subnets in the VPC which have not been explicitly associated with a user-defined routing table.

This request retrieves the default routing table for the VPC specified by the identifier in the URL. The default routing table is associated with any subnets in the VPC which have not been explicitly associated with a user-defined routing table.

This request retrieves the default routing table for the VPC specified by the identifier in the URL. The default routing table is associated with any subnets in the VPC which have not been explicitly associated with a user-defined routing table.

This request retrieves the default routing table for the VPC specified by the identifier in the URL. The default routing table is associated with any subnets in the VPC which have not been explicitly associated with a user-defined routing table.

GET /vpcs/{id}/default_routing_table
(vpc *VpcV1) GetVPCDefaultRoutingTable(getVPCDefaultRoutingTableOptions *GetVPCDefaultRoutingTableOptions) (result *DefaultRoutingTable, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetVPCDefaultRoutingTableWithContext(ctx context.Context, getVPCDefaultRoutingTableOptions *GetVPCDefaultRoutingTableOptions) (result *DefaultRoutingTable, response *core.DetailedResponse, err error)
get_vpc_default_routing_table(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<DefaultRoutingTable> getVpcDefaultRoutingTable(GetVpcDefaultRoutingTableOptions getVpcDefaultRoutingTableOptions)
getVpcDefaultRoutingTable(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.read

Auditing

Calling this method generates the following auditing event.

  • is.vpc.routing-table.read

Retrieve a VPC's default security group

This request retrieves the default security group for the VPC specified by the identifier in the URL. Resources that optionally allow a security group to be specified upon creation will be attached to this security group if a security group is not specified.

This request retrieves the default security group for the VPC specified by the identifier in the URL. Resources that optionally allow a security group to be specified upon creation will be attached to this security group if a security group is not specified.

This request retrieves the default security group for the VPC specified by the identifier in the URL. Resources that optionally allow a security group to be specified upon creation will be attached to this security group if a security group is not specified.

This request retrieves the default security group for the VPC specified by the identifier in the URL. Resources that optionally allow a security group to be specified upon creation will be attached to this security group if a security group is not specified.

This request retrieves the default security group for the VPC specified by the identifier in the URL. Resources that optionally allow a security group to be specified upon creation will be attached to this security group if a security group is not specified.

GET /vpcs/{id}/default_security_group
(vpc *VpcV1) GetVPCDefaultSecurityGroup(getVPCDefaultSecurityGroupOptions *GetVPCDefaultSecurityGroupOptions) (result *DefaultSecurityGroup, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetVPCDefaultSecurityGroupWithContext(ctx context.Context, getVPCDefaultSecurityGroupOptions *GetVPCDefaultSecurityGroupOptions) (result *DefaultSecurityGroup, response *core.DetailedResponse, err error)
get_vpc_default_security_group(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<DefaultSecurityGroup> getVpcDefaultSecurityGroup(GetVpcDefaultSecurityGroupOptions getVpcDefaultSecurityGroupOptions)
getVpcDefaultSecurityGroup(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.security-group.security-group.read

Auditing

Calling this method generates the following auditing event.

  • is.vpc.vpc.read

List all address prefixes for a VPC

This request lists all address pool prefixes for a VPC.

This request lists all address pool prefixes for a VPC.

This request lists all address pool prefixes for a VPC.

This request lists all address pool prefixes for a VPC.

This request lists all address pool prefixes for a VPC.

GET /vpcs/{vpc_id}/address_prefixes
(vpc *VpcV1) ListVPCAddressPrefixes(listVPCAddressPrefixesOptions *ListVPCAddressPrefixesOptions) (result *AddressPrefixCollection, response *core.DetailedResponse, err error)
(vpc *VpcV1) ListVPCAddressPrefixesWithContext(ctx context.Context, listVPCAddressPrefixesOptions *ListVPCAddressPrefixesOptions) (result *AddressPrefixCollection, response *core.DetailedResponse, err error)
list_vpc_address_prefixes(self,
        vpc_id: str,
        *,
        start: str = None,
        limit: int = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<AddressPrefixCollection> listVpcAddressPrefixes(ListVpcAddressPrefixesOptions listVpcAddressPrefixesOptions)
listVpcAddressPrefixes(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.read

Auditing

Calling this method generates the following auditing event.

  • is.vpc.address-prefix.read

Create an address prefix for a VPC

This request creates a new prefix from a prefix prototype object. The prototype object is structured in the same way as a retrieved prefix, and contains the information necessary to create the new prefix.

This request creates a new prefix from a prefix prototype object. The prototype object is structured in the same way as a retrieved prefix, and contains the information necessary to create the new prefix.

This request creates a new prefix from a prefix prototype object. The prototype object is structured in the same way as a retrieved prefix, and contains the information necessary to create the new prefix.

This request creates a new prefix from a prefix prototype object. The prototype object is structured in the same way as a retrieved prefix, and contains the information necessary to create the new prefix.

This request creates a new prefix from a prefix prototype object. The prototype object is structured in the same way as a retrieved prefix, and contains the information necessary to create the new prefix.

POST /vpcs/{vpc_id}/address_prefixes
(vpc *VpcV1) CreateVPCAddressPrefix(createVPCAddressPrefixOptions *CreateVPCAddressPrefixOptions) (result *AddressPrefix, response *core.DetailedResponse, err error)
(vpc *VpcV1) CreateVPCAddressPrefixWithContext(ctx context.Context, createVPCAddressPrefixOptions *CreateVPCAddressPrefixOptions) (result *AddressPrefix, response *core.DetailedResponse, err error)
create_vpc_address_prefix(self,
        vpc_id: str,
        cidr: str,
        zone: 'ZoneIdentity',
        *,
        is_default: bool = None,
        name: str = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<AddressPrefix> createVpcAddressPrefix(CreateVpcAddressPrefixOptions createVpcAddressPrefixOptions)
createVpcAddressPrefix(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.update

Auditing

Calling this method generates the following auditing event.

  • is.vpc.address-prefix.create

Delete an address prefix

This request deletes a prefix. This operation cannot be reversed. The request will fail if any subnets use addresses from this prefix.

This request deletes a prefix. This operation cannot be reversed. The request will fail if any subnets use addresses from this prefix.

This request deletes a prefix. This operation cannot be reversed. The request will fail if any subnets use addresses from this prefix.

This request deletes a prefix. This operation cannot be reversed. The request will fail if any subnets use addresses from this prefix.

This request deletes a prefix. This operation cannot be reversed. The request will fail if any subnets use addresses from this prefix.

DELETE /vpcs/{vpc_id}/address_prefixes/{id}
(vpc *VpcV1) DeleteVPCAddressPrefix(deleteVPCAddressPrefixOptions *DeleteVPCAddressPrefixOptions) (response *core.DetailedResponse, err error)
(vpc *VpcV1) DeleteVPCAddressPrefixWithContext(ctx context.Context, deleteVPCAddressPrefixOptions *DeleteVPCAddressPrefixOptions) (response *core.DetailedResponse, err error)
delete_vpc_address_prefix(self,
        vpc_id: str,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Void> deleteVpcAddressPrefix(DeleteVpcAddressPrefixOptions deleteVpcAddressPrefixOptions)
deleteVpcAddressPrefix(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.update

Auditing

Calling this method generates the following auditing event.

  • is.vpc.address-prefix.delete

Retrieve an address prefix

This request retrieves a single prefix specified by the identifier in the URL.

This request retrieves a single prefix specified by the identifier in the URL.

This request retrieves a single prefix specified by the identifier in the URL.

This request retrieves a single prefix specified by the identifier in the URL.

This request retrieves a single prefix specified by the identifier in the URL.

GET /vpcs/{vpc_id}/address_prefixes/{id}
(vpc *VpcV1) GetVPCAddressPrefix(getVPCAddressPrefixOptions *GetVPCAddressPrefixOptions) (result *AddressPrefix, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetVPCAddressPrefixWithContext(ctx context.Context, getVPCAddressPrefixOptions *GetVPCAddressPrefixOptions) (result *AddressPrefix, response *core.DetailedResponse, err error)
get_vpc_address_prefix(self,
        vpc_id: str,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<AddressPrefix> getVpcAddressPrefix(GetVpcAddressPrefixOptions getVpcAddressPrefixOptions)
getVpcAddressPrefix(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.read

Auditing

Calling this method generates the following auditing event.

  • is.vpc.address-prefix.read

Update an address prefix

This request updates a prefix with the information in a provided prefix patch. The prefix patch object is structured in the same way as a retrieved prefix and contains only the information to be updated.

This request updates a prefix with the information in a provided prefix patch. The prefix patch object is structured in the same way as a retrieved prefix and contains only the information to be updated.

This request updates a prefix with the information in a provided prefix patch. The prefix patch object is structured in the same way as a retrieved prefix and contains only the information to be updated.

This request updates a prefix with the information in a provided prefix patch. The prefix patch object is structured in the same way as a retrieved prefix and contains only the information to be updated.

This request updates a prefix with the information in a provided prefix patch. The prefix patch object is structured in the same way as a retrieved prefix and contains only the information to be updated.

PATCH /vpcs/{vpc_id}/address_prefixes/{id}
(vpc *VpcV1) UpdateVPCAddressPrefix(updateVPCAddressPrefixOptions *UpdateVPCAddressPrefixOptions) (result *AddressPrefix, response *core.DetailedResponse, err error)
(vpc *VpcV1) UpdateVPCAddressPrefixWithContext(ctx context.Context, updateVPCAddressPrefixOptions *UpdateVPCAddressPrefixOptions) (result *AddressPrefix, response *core.DetailedResponse, err error)
update_vpc_address_prefix(self,
        vpc_id: str,
        id: str,
        address_prefix_patch: 'AddressPrefixPatch',
        **kwargs
    ) -> DetailedResponse
ServiceCall<AddressPrefix> updateVpcAddressPrefix(UpdateVpcAddressPrefixOptions updateVpcAddressPrefixOptions)
updateVpcAddressPrefix(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.update

Auditing

Calling this method generates the following auditing event.

  • is.vpc.address-prefix.update

List all routes in a VPC's default routing table

This request lists all routes in the VPC's default routing table. Each route is zone-specific and directs any packets matching its destination CIDR block to a next_hop IP address. The most specific route matching a packet's destination will be used. If multiple equally-specific routes exist, traffic will be distributed across them.

This request lists all routes in the VPC's default routing table. Each route is zone-specific and directs any packets matching its destination CIDR block to a next_hop IP address. The most specific route matching a packet's destination will be used. If multiple equally-specific routes exist, traffic will be distributed across them.

This request lists all routes in the VPC's default routing table. Each route is zone-specific and directs any packets matching its destination CIDR block to a next_hop IP address. The most specific route matching a packet's destination will be used. If multiple equally-specific routes exist, traffic will be distributed across them.

This request lists all routes in the VPC's default routing table. Each route is zone-specific and directs any packets matching its destination CIDR block to a next_hop IP address. The most specific route matching a packet's destination will be used. If multiple equally-specific routes exist, traffic will be distributed across them.

This request lists all routes in the VPC's default routing table. Each route is zone-specific and directs any packets matching its destination CIDR block to a next_hop IP address. The most specific route matching a packet's destination will be used. If multiple equally-specific routes exist, traffic will be distributed across them.

GET /vpcs/{vpc_id}/routes
(vpc *VpcV1) ListVPCRoutes(listVPCRoutesOptions *ListVPCRoutesOptions) (result *RouteCollection, response *core.DetailedResponse, err error)
(vpc *VpcV1) ListVPCRoutesWithContext(ctx context.Context, listVPCRoutesOptions *ListVPCRoutesOptions) (result *RouteCollection, response *core.DetailedResponse, err error)
list_vpc_routes(self,
        vpc_id: str,
        *,
        zone_name: str = None,
        start: str = None,
        limit: int = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<RouteCollection> listVpcRoutes(ListVpcRoutesOptions listVpcRoutesOptions)
listVpcRoutes(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.read

Create a route in a VPC's default routing table

This request creates a new route in the VPC's default routing table. The route prototype object is structured in the same way as a retrieved route, and contains the information necessary to create the new route. The request will fail if the new route will cause a loop.

This request creates a new route in the VPC's default routing table. The route prototype object is structured in the same way as a retrieved route, and contains the information necessary to create the new route. The request will fail if the new route will cause a loop.

This request creates a new route in the VPC's default routing table. The route prototype object is structured in the same way as a retrieved route, and contains the information necessary to create the new route. The request will fail if the new route will cause a loop.

This request creates a new route in the VPC's default routing table. The route prototype object is structured in the same way as a retrieved route, and contains the information necessary to create the new route. The request will fail if the new route will cause a loop.

This request creates a new route in the VPC's default routing table. The route prototype object is structured in the same way as a retrieved route, and contains the information necessary to create the new route. The request will fail if the new route will cause a loop.

POST /vpcs/{vpc_id}/routes
(vpc *VpcV1) CreateVPCRoute(createVPCRouteOptions *CreateVPCRouteOptions) (result *Route, response *core.DetailedResponse, err error)
(vpc *VpcV1) CreateVPCRouteWithContext(ctx context.Context, createVPCRouteOptions *CreateVPCRouteOptions) (result *Route, response *core.DetailedResponse, err error)
create_vpc_route(self,
        vpc_id: str,
        destination: str,
        zone: 'ZoneIdentity',
        *,
        action: str = None,
        name: str = None,
        next_hop: 'RoutePrototypeNextHop' = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Route> createVpcRoute(CreateVpcRouteOptions createVpcRouteOptions)
createVpcRoute(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.update

Delete a VPC route

This request deletes a route. This operation cannot be reversed.

This request deletes a route. This operation cannot be reversed.

This request deletes a route. This operation cannot be reversed.

This request deletes a route. This operation cannot be reversed.

This request deletes a route. This operation cannot be reversed.

DELETE /vpcs/{vpc_id}/routes/{id}
(vpc *VpcV1) DeleteVPCRoute(deleteVPCRouteOptions *DeleteVPCRouteOptions) (response *core.DetailedResponse, err error)
(vpc *VpcV1) DeleteVPCRouteWithContext(ctx context.Context, deleteVPCRouteOptions *DeleteVPCRouteOptions) (response *core.DetailedResponse, err error)
delete_vpc_route(self,
        vpc_id: str,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Void> deleteVpcRoute(DeleteVpcRouteOptions deleteVpcRouteOptions)
deleteVpcRoute(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.update

Retrieve a VPC route

This request retrieves a single route specified by the identifier in the URL.

This request retrieves a single route specified by the identifier in the URL.

This request retrieves a single route specified by the identifier in the URL.

This request retrieves a single route specified by the identifier in the URL.

This request retrieves a single route specified by the identifier in the URL.

GET /vpcs/{vpc_id}/routes/{id}
(vpc *VpcV1) GetVPCRoute(getVPCRouteOptions *GetVPCRouteOptions) (result *Route, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetVPCRouteWithContext(ctx context.Context, getVPCRouteOptions *GetVPCRouteOptions) (result *Route, response *core.DetailedResponse, err error)
get_vpc_route(self,
        vpc_id: str,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Route> getVpcRoute(GetVpcRouteOptions getVpcRouteOptions)
getVpcRoute(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.read

Update a VPC route

This request updates a route with the information in a provided route patch. The route patch object is structured in the same way as a retrieved route and contains only the information to be updated.

This request updates a route with the information in a provided route patch. The route patch object is structured in the same way as a retrieved route and contains only the information to be updated.

This request updates a route with the information in a provided route patch. The route patch object is structured in the same way as a retrieved route and contains only the information to be updated.

This request updates a route with the information in a provided route patch. The route patch object is structured in the same way as a retrieved route and contains only the information to be updated.

This request updates a route with the information in a provided route patch. The route patch object is structured in the same way as a retrieved route and contains only the information to be updated.

PATCH /vpcs/{vpc_id}/routes/{id}
(vpc *VpcV1) UpdateVPCRoute(updateVPCRouteOptions *UpdateVPCRouteOptions) (result *Route, response *core.DetailedResponse, err error)
(vpc *VpcV1) UpdateVPCRouteWithContext(ctx context.Context, updateVPCRouteOptions *UpdateVPCRouteOptions) (result *Route, response *core.DetailedResponse, err error)
update_vpc_route(self,
        vpc_id: str,
        id: str,
        route_patch: 'RoutePatch',
        **kwargs
    ) -> DetailedResponse
ServiceCall<Route> updateVpcRoute(UpdateVpcRouteOptions updateVpcRouteOptions)
updateVpcRoute(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.update

List all routing tables for a VPC

This request lists all user-defined routing tables for a VPC. Each subnet in a VPC is associated with a routing table, which controls delivery of packets sent on that subnet according to the action of the most specific matching route in the table. If multiple equally-specific routes exist, traffic will be distributed across them. If no routes match, delivery will be controlled by the system's built-in routes.

This request lists all user-defined routing tables for a VPC. Each subnet in a VPC is associated with a routing table, which controls delivery of packets sent on that subnet according to the action of the most specific matching route in the table. If multiple equally-specific routes exist, traffic will be distributed across them. If no routes match, delivery will be controlled by the system's built-in routes.

This request lists all user-defined routing tables for a VPC. Each subnet in a VPC is associated with a routing table, which controls delivery of packets sent on that subnet according to the action of the most specific matching route in the table. If multiple equally-specific routes exist, traffic will be distributed across them. If no routes match, delivery will be controlled by the system's built-in routes.

This request lists all user-defined routing tables for a VPC. Each subnet in a VPC is associated with a routing table, which controls delivery of packets sent on that subnet according to the action of the most specific matching route in the table. If multiple equally-specific routes exist, traffic will be distributed across them. If no routes match, delivery will be controlled by the system's built-in routes.

This request lists all user-defined routing tables for a VPC. Each subnet in a VPC is associated with a routing table, which controls delivery of packets sent on that subnet according to the action of the most specific matching route in the table. If multiple equally-specific routes exist, traffic will be distributed across them. If no routes match, delivery will be controlled by the system's built-in routes.

GET /vpcs/{vpc_id}/routing_tables
(vpc *VpcV1) ListVPCRoutingTables(listVPCRoutingTablesOptions *ListVPCRoutingTablesOptions) (result *RoutingTableCollection, response *core.DetailedResponse, err error)
(vpc *VpcV1) ListVPCRoutingTablesWithContext(ctx context.Context, listVPCRoutingTablesOptions *ListVPCRoutingTablesOptions) (result *RoutingTableCollection, response *core.DetailedResponse, err error)
list_vpc_routing_tables(self,
        vpc_id: str,
        *,
        start: str = None,
        limit: int = None,
        is_default: bool = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<RoutingTableCollection> listVpcRoutingTables(ListVpcRoutingTablesOptions listVpcRoutingTablesOptions)
listVpcRoutingTables(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.read

Auditing

Calling this method generates the following auditing event.

  • is.vpc.routing-table.read

Create a routing table for a VPC

This request creates a user-defined routing table from a routing table prototype object. The prototype object is structured in the same way as a retrieved routing table, and contains the information necessary to create the new routing table.

This request creates a user-defined routing table from a routing table prototype object. The prototype object is structured in the same way as a retrieved routing table, and contains the information necessary to create the new routing table.

This request creates a user-defined routing table from a routing table prototype object. The prototype object is structured in the same way as a retrieved routing table, and contains the information necessary to create the new routing table.

This request creates a user-defined routing table from a routing table prototype object. The prototype object is structured in the same way as a retrieved routing table, and contains the information necessary to create the new routing table.

This request creates a user-defined routing table from a routing table prototype object. The prototype object is structured in the same way as a retrieved routing table, and contains the information necessary to create the new routing table.

POST /vpcs/{vpc_id}/routing_tables
(vpc *VpcV1) CreateVPCRoutingTable(createVPCRoutingTableOptions *CreateVPCRoutingTableOptions) (result *RoutingTable, response *core.DetailedResponse, err error)
(vpc *VpcV1) CreateVPCRoutingTableWithContext(ctx context.Context, createVPCRoutingTableOptions *CreateVPCRoutingTableOptions) (result *RoutingTable, response *core.DetailedResponse, err error)
create_vpc_routing_table(self,
        vpc_id: str,
        *,
        name: str = None,
        route_direct_link_ingress: bool = None,
        route_transit_gateway_ingress: bool = None,
        route_vpc_zone_ingress: bool = None,
        routes: List['RoutePrototype'] = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<RoutingTable> createVpcRoutingTable(CreateVpcRoutingTableOptions createVpcRoutingTableOptions)
createVpcRoutingTable(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.update

Auditing

Calling this method generates the following auditing event.

  • is.vpc.routing-table.create

Delete a VPC routing table

This request deletes a routing table. A routing table cannot be deleted if it is associated with any subnets in the VPC. Additionally, a VPC's default routing table cannot be deleted. This operation cannot be reversed.

This request deletes a routing table. A routing table cannot be deleted if it is associated with any subnets in the VPC. Additionally, a VPC's default routing table cannot be deleted. This operation cannot be reversed.

This request deletes a routing table. A routing table cannot be deleted if it is associated with any subnets in the VPC. Additionally, a VPC's default routing table cannot be deleted. This operation cannot be reversed.

This request deletes a routing table. A routing table cannot be deleted if it is associated with any subnets in the VPC. Additionally, a VPC's default routing table cannot be deleted. This operation cannot be reversed.

This request deletes a routing table. A routing table cannot be deleted if it is associated with any subnets in the VPC. Additionally, a VPC's default routing table cannot be deleted. This operation cannot be reversed.

DELETE /vpcs/{vpc_id}/routing_tables/{id}
(vpc *VpcV1) DeleteVPCRoutingTable(deleteVPCRoutingTableOptions *DeleteVPCRoutingTableOptions) (response *core.DetailedResponse, err error)
(vpc *VpcV1) DeleteVPCRoutingTableWithContext(ctx context.Context, deleteVPCRoutingTableOptions *DeleteVPCRoutingTableOptions) (response *core.DetailedResponse, err error)
delete_vpc_routing_table(self,
        vpc_id: str,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Void> deleteVpcRoutingTable(DeleteVpcRoutingTableOptions deleteVpcRoutingTableOptions)
deleteVpcRoutingTable(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.update

Auditing

Calling this method generates the following auditing event.

  • is.vpc.routing-table.delete

Retrieve a VPC routing table

This request retrieves a single routing table specified by the identifier in the URL.

This request retrieves a single routing table specified by the identifier in the URL.

This request retrieves a single routing table specified by the identifier in the URL.

This request retrieves a single routing table specified by the identifier in the URL.

This request retrieves a single routing table specified by the identifier in the URL.

GET /vpcs/{vpc_id}/routing_tables/{id}
(vpc *VpcV1) GetVPCRoutingTable(getVPCRoutingTableOptions *GetVPCRoutingTableOptions) (result *RoutingTable, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetVPCRoutingTableWithContext(ctx context.Context, getVPCRoutingTableOptions *GetVPCRoutingTableOptions) (result *RoutingTable, response *core.DetailedResponse, err error)
get_vpc_routing_table(self,
        vpc_id: str,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<RoutingTable> getVpcRoutingTable(GetVpcRoutingTableOptions getVpcRoutingTableOptions)
getVpcRoutingTable(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.read

Auditing

Calling this method generates the following auditing event.

  • is.vpc.routing-table.read

Update a VPC routing table

This request updates a routing table with the information in a provided routing table patch. The patch object is structured in the same way as a retrieved table and contains only the information to be updated.

This request updates a routing table with the information in a provided routing table patch. The patch object is structured in the same way as a retrieved table and contains only the information to be updated.

This request updates a routing table with the information in a provided routing table patch. The patch object is structured in the same way as a retrieved table and contains only the information to be updated.

This request updates a routing table with the information in a provided routing table patch. The patch object is structured in the same way as a retrieved table and contains only the information to be updated.

This request updates a routing table with the information in a provided routing table patch. The patch object is structured in the same way as a retrieved table and contains only the information to be updated.

PATCH /vpcs/{vpc_id}/routing_tables/{id}
(vpc *VpcV1) UpdateVPCRoutingTable(updateVPCRoutingTableOptions *UpdateVPCRoutingTableOptions) (result *RoutingTable, response *core.DetailedResponse, err error)
(vpc *VpcV1) UpdateVPCRoutingTableWithContext(ctx context.Context, updateVPCRoutingTableOptions *UpdateVPCRoutingTableOptions) (result *RoutingTable, response *core.DetailedResponse, err error)
update_vpc_routing_table(self,
        vpc_id: str,
        id: str,
        routing_table_patch: 'RoutingTablePatch',
        **kwargs
    ) -> DetailedResponse
ServiceCall<RoutingTable> updateVpcRoutingTable(UpdateVpcRoutingTableOptions updateVpcRoutingTableOptions)
updateVpcRoutingTable(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.update

Auditing

Calling this method generates the following auditing event.

  • is.vpc.routing-table.update

List all routes in a VPC routing table

This request lists all routes in a VPC routing table. If subnets are associated with this routing table, delivery of packets sent on a subnet is performed according to the action of the most specific matching route in the table (provided the subnet and route are in the same zone). If multiple equally-specific routes exist, traffic will be distributed across them. If no routes match, delivery will be controlled by the system's built-in routes.

This request lists all routes in a VPC routing table. If subnets are associated with this routing table, delivery of packets sent on a subnet is performed according to the action of the most specific matching route in the table (provided the subnet and route are in the same zone). If multiple equally-specific routes exist, traffic will be distributed across them. If no routes match, delivery will be controlled by the system's built-in routes.

This request lists all routes in a VPC routing table. If subnets are associated with this routing table, delivery of packets sent on a subnet is performed according to the action of the most specific matching route in the table (provided the subnet and route are in the same zone). If multiple equally-specific routes exist, traffic will be distributed across them. If no routes match, delivery will be controlled by the system's built-in routes.

This request lists all routes in a VPC routing table. If subnets are associated with this routing table, delivery of packets sent on a subnet is performed according to the action of the most specific matching route in the table (provided the subnet and route are in the same zone). If multiple equally-specific routes exist, traffic will be distributed across them. If no routes match, delivery will be controlled by the system's built-in routes.

This request lists all routes in a VPC routing table. If subnets are associated with this routing table, delivery of packets sent on a subnet is performed according to the action of the most specific matching route in the table (provided the subnet and route are in the same zone). If multiple equally-specific routes exist, traffic will be distributed across them. If no routes match, delivery will be controlled by the system's built-in routes.

GET /vpcs/{vpc_id}/routing_tables/{routing_table_id}/routes
(vpc *VpcV1) ListVPCRoutingTableRoutes(listVPCRoutingTableRoutesOptions *ListVPCRoutingTableRoutesOptions) (result *RouteCollection, response *core.DetailedResponse, err error)
(vpc *VpcV1) ListVPCRoutingTableRoutesWithContext(ctx context.Context, listVPCRoutingTableRoutesOptions *ListVPCRoutingTableRoutesOptions) (result *RouteCollection, response *core.DetailedResponse, err error)
list_vpc_routing_table_routes(self,
        vpc_id: str,
        routing_table_id: str,
        *,
        start: str = None,
        limit: int = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<RouteCollection> listVpcRoutingTableRoutes(ListVpcRoutingTableRoutesOptions listVpcRoutingTableRoutesOptions)
listVpcRoutingTableRoutes(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.read

Auditing

Calling this method generates the following auditing event.

  • is.vpc.routing-table_route.read

Create a route in a VPC routing table

This request creates a new VPC route from a VPC route prototype object. The prototype object is structured in the same way as a retrieved VPC route and contains the information necessary to create the route.

This request creates a new VPC route from a VPC route prototype object. The prototype object is structured in the same way as a retrieved VPC route and contains the information necessary to create the route.

This request creates a new VPC route from a VPC route prototype object. The prototype object is structured in the same way as a retrieved VPC route and contains the information necessary to create the route.

This request creates a new VPC route from a VPC route prototype object. The prototype object is structured in the same way as a retrieved VPC route and contains the information necessary to create the route.

This request creates a new VPC route from a VPC route prototype object. The prototype object is structured in the same way as a retrieved VPC route and contains the information necessary to create the route.

POST /vpcs/{vpc_id}/routing_tables/{routing_table_id}/routes
(vpc *VpcV1) CreateVPCRoutingTableRoute(createVPCRoutingTableRouteOptions *CreateVPCRoutingTableRouteOptions) (result *Route, response *core.DetailedResponse, err error)
(vpc *VpcV1) CreateVPCRoutingTableRouteWithContext(ctx context.Context, createVPCRoutingTableRouteOptions *CreateVPCRoutingTableRouteOptions) (result *Route, response *core.DetailedResponse, err error)
create_vpc_routing_table_route(self,
        vpc_id: str,
        routing_table_id: str,
        destination: str,
        zone: 'ZoneIdentity',
        *,
        action: str = None,
        name: str = None,
        next_hop: 'RoutePrototypeNextHop' = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Route> createVpcRoutingTableRoute(CreateVpcRoutingTableRouteOptions createVpcRoutingTableRouteOptions)
createVpcRoutingTableRoute(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.update

Auditing

Calling this method generates the following auditing event.

  • is.vpc.routing-table_route.create

Delete a VPC routing table route

This request deletes a VPC route. This operation cannot be reversed.

This request deletes a VPC route. This operation cannot be reversed.

This request deletes a VPC route. This operation cannot be reversed.

This request deletes a VPC route. This operation cannot be reversed.

This request deletes a VPC route. This operation cannot be reversed.

DELETE /vpcs/{vpc_id}/routing_tables/{routing_table_id}/routes/{id}
(vpc *VpcV1) DeleteVPCRoutingTableRoute(deleteVPCRoutingTableRouteOptions *DeleteVPCRoutingTableRouteOptions) (response *core.DetailedResponse, err error)
(vpc *VpcV1) DeleteVPCRoutingTableRouteWithContext(ctx context.Context, deleteVPCRoutingTableRouteOptions *DeleteVPCRoutingTableRouteOptions) (response *core.DetailedResponse, err error)
delete_vpc_routing_table_route(self,
        vpc_id: str,
        routing_table_id: str,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Void> deleteVpcRoutingTableRoute(DeleteVpcRoutingTableRouteOptions deleteVpcRoutingTableRouteOptions)
deleteVpcRoutingTableRoute(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.update

Auditing

Calling this method generates the following auditing event.

  • is.vpc.routing-table_route.delete

Retrieve a VPC routing table route

This request retrieves a single VPC route specified by the identifier in the URL path.

This request retrieves a single VPC route specified by the identifier in the URL path.

This request retrieves a single VPC route specified by the identifier in the URL path.

This request retrieves a single VPC route specified by the identifier in the URL path.

This request retrieves a single VPC route specified by the identifier in the URL path.

GET /vpcs/{vpc_id}/routing_tables/{routing_table_id}/routes/{id}
(vpc *VpcV1) GetVPCRoutingTableRoute(getVPCRoutingTableRouteOptions *GetVPCRoutingTableRouteOptions) (result *Route, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetVPCRoutingTableRouteWithContext(ctx context.Context, getVPCRoutingTableRouteOptions *GetVPCRoutingTableRouteOptions) (result *Route, response *core.DetailedResponse, err error)
get_vpc_routing_table_route(self,
        vpc_id: str,
        routing_table_id: str,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Route> getVpcRoutingTableRoute(GetVpcRoutingTableRouteOptions getVpcRoutingTableRouteOptions)
getVpcRoutingTableRoute(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.read

Auditing

Calling this method generates the following auditing event.

  • is.vpc.routing-table_route.read

Update a VPC routing table route

This request updates a VPC route with the information provided in a route patch object. The patch object is structured in the same way as a retrieved VPC route and needs to contain only the information to be updated.

This request updates a VPC route with the information provided in a route patch object. The patch object is structured in the same way as a retrieved VPC route and needs to contain only the information to be updated.

This request updates a VPC route with the information provided in a route patch object. The patch object is structured in the same way as a retrieved VPC route and needs to contain only the information to be updated.

This request updates a VPC route with the information provided in a route patch object. The patch object is structured in the same way as a retrieved VPC route and needs to contain only the information to be updated.

This request updates a VPC route with the information provided in a route patch object. The patch object is structured in the same way as a retrieved VPC route and needs to contain only the information to be updated.

PATCH /vpcs/{vpc_id}/routing_tables/{routing_table_id}/routes/{id}
(vpc *VpcV1) UpdateVPCRoutingTableRoute(updateVPCRoutingTableRouteOptions *UpdateVPCRoutingTableRouteOptions) (result *Route, response *core.DetailedResponse, err error)
(vpc *VpcV1) UpdateVPCRoutingTableRouteWithContext(ctx context.Context, updateVPCRoutingTableRouteOptions *UpdateVPCRoutingTableRouteOptions) (result *Route, response *core.DetailedResponse, err error)
update_vpc_routing_table_route(self,
        vpc_id: str,
        routing_table_id: str,
        id: str,
        route_patch: 'RoutePatch',
        **kwargs
    ) -> DetailedResponse
ServiceCall<Route> updateVpcRoutingTableRoute(UpdateVpcRoutingTableRouteOptions updateVpcRoutingTableRouteOptions)
updateVpcRoutingTableRoute(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.vpc.vpc.update

Auditing

Calling this method generates the following auditing event.

  • is.vpc.routing-table_route.update

List all subnets

This request lists all subnets in the region. Subnets are contiguous ranges of IP addresses specified in CIDR block notation. Each subnet is within a particular zone and cannot span multiple zones or regions.

This request lists all subnets in the region. Subnets are contiguous ranges of IP addresses specified in CIDR block notation. Each subnet is within a particular zone and cannot span multiple zones or regions.

This request lists all subnets in the region. Subnets are contiguous ranges of IP addresses specified in CIDR block notation. Each subnet is within a particular zone and cannot span multiple zones or regions.

This request lists all subnets in the region. Subnets are contiguous ranges of IP addresses specified in CIDR block notation. Each subnet is within a particular zone and cannot span multiple zones or regions.

This request lists all subnets in the region. Subnets are contiguous ranges of IP addresses specified in CIDR block notation. Each subnet is within a particular zone and cannot span multiple zones or regions.

GET /subnets
(vpc *VpcV1) ListSubnets(listSubnetsOptions *ListSubnetsOptions) (result *SubnetCollection, response *core.DetailedResponse, err error)
(vpc *VpcV1) ListSubnetsWithContext(ctx context.Context, listSubnetsOptions *ListSubnetsOptions) (result *SubnetCollection, response *core.DetailedResponse, err error)
list_subnets(self,
        *,
        start: str = None,
        limit: int = None,
        resource_group_id: str = None,
        routing_table_id: str = None,
        routing_table_name: str = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<SubnetCollection> listSubnets(ListSubnetsOptions listSubnetsOptions)
listSubnets(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions. You can check your access by going to Users > name > Access policies.

  • is.subnet.subnet.list

  • is.subnet.subnet.read

Auditing

Calling this method generates the following auditing event.

  • is.subnet.subnet.read

Create a subnet

This request creates a new subnet from a subnet prototype object. The prototype object is structured in the same way as a retrieved subnet, and contains the information necessary to create the new subnet. For this request to succeed, the prototype's CIDR block must not overlap with an existing subnet in the VPC.

This request creates a new subnet from a subnet prototype object. The prototype object is structured in the same way as a retrieved subnet, and contains the information necessary to create the new subnet. For this request to succeed, the prototype's CIDR block must not overlap with an existing subnet in the VPC.

This request creates a new subnet from a subnet prototype object. The prototype object is structured in the same way as a retrieved subnet, and contains the information necessary to create the new subnet. For this request to succeed, the prototype's CIDR block must not overlap with an existing subnet in the VPC.

This request creates a new subnet from a subnet prototype object. The prototype object is structured in the same way as a retrieved subnet, and contains the information necessary to create the new subnet. For this request to succeed, the prototype's CIDR block must not overlap with an existing subnet in the VPC.

This request creates a new subnet from a subnet prototype object. The prototype object is structured in the same way as a retrieved subnet, and contains the information necessary to create the new subnet. For this request to succeed, the prototype's CIDR block must not overlap with an existing subnet in the VPC.

POST /subnets
(vpc *VpcV1) CreateSubnet(createSubnetOptions *CreateSubnetOptions) (result *Subnet, response *core.DetailedResponse, err error)
(vpc *VpcV1) CreateSubnetWithContext(ctx context.Context, createSubnetOptions *CreateSubnetOptions) (result *Subnet, response *core.DetailedResponse, err error)
create_subnet(self,
        subnet_prototype: 'SubnetPrototype',
        **kwargs
    ) -> DetailedResponse
ServiceCall<Subnet> createSubnet(CreateSubnetOptions createSubnetOptions)
createSubnet(params)

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 > name > Access policies.

  • is.subnet.subnet.create

  • is.public-gateway.public-gateway.operate

    Required when public_gateway is specified

  • is.network-acl.network-acl.operate

Auditing

Calling this method generates the following auditing event.

  • is.subnet.subnet.create

Delete a subnet

This request deletes a subnet. This operation cannot be reversed. For this request to succeed, the subnet must not be referenced by any network interfaces, VPN gateways, or load balancers. A delete operation automatically detaches the subnet from any network ACLs, public gateways, or endpoint gateways. All flow log collectors with auto_delete set to true targeting the subnet or any resource in the subnet are automatically deleted.

This request deletes a subnet. This operation cannot be reversed. For this request to succeed, the subnet must not be referenced by any network interfaces, VPN gateways, or load balancers. A delete operation automatically detaches the subnet from any network ACLs, public gateways, or endpoint gateways. All flow log collectors with auto_delete set to true targeting the subnet or any resource in the subnet are automatically deleted.

This request deletes a subnet. This operation cannot be reversed. For this request to succeed, the subnet must not be referenced by any network interfaces, VPN gateways, or load balancers. A delete operation automatically detaches the subnet from any network ACLs, public gateways, or endpoint gateways. All flow log collectors with auto_delete set to true targeting the subnet or any resource in the subnet are automatically deleted.

This request deletes a subnet. This operation cannot be reversed. For this request to succeed, the subnet must not be referenced by any network interfaces, VPN gateways, or load balancers. A delete operation automatically detaches the subnet from any network ACLs, public gateways, or endpoint gateways. All flow log collectors with auto_delete set to true targeting the subnet or any resource in the subnet are automatically deleted.

This request deletes a subnet. This operation cannot be reversed. For this request to succeed, the subnet must not be referenced by any network interfaces, VPN gateways, or load balancers. A delete operation automatically detaches the subnet from any network ACLs, public gateways, or endpoint gateways. All flow log collectors with auto_delete set to true targeting the subnet or any resource in the subnet are automatically deleted.

DELETE /subnets/{id}
(vpc *VpcV1) DeleteSubnet(deleteSubnetOptions *DeleteSubnetOptions) (response *core.DetailedResponse, err error)
(vpc *VpcV1) DeleteSubnetWithContext(ctx context.Context, deleteSubnetOptions *DeleteSubnetOptions) (response *core.DetailedResponse, err error)
delete_subnet(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Void> deleteSubnet(DeleteSubnetOptions deleteSubnetOptions)
deleteSubnet(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.subnet.subnet.delete

Auditing

Calling this method generates the following auditing event.

  • is.subnet.subnet.delete

Retrieve a subnet

This request retrieves a single subnet specified by the identifier in the URL.

This request retrieves a single subnet specified by the identifier in the URL.

This request retrieves a single subnet specified by the identifier in the URL.

This request retrieves a single subnet specified by the identifier in the URL.

This request retrieves a single subnet specified by the identifier in the URL.

GET /subnets/{id}
(vpc *VpcV1) GetSubnet(getSubnetOptions *GetSubnetOptions) (result *Subnet, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetSubnetWithContext(ctx context.Context, getSubnetOptions *GetSubnetOptions) (result *Subnet, response *core.DetailedResponse, err error)
get_subnet(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Subnet> getSubnet(GetSubnetOptions getSubnetOptions)
getSubnet(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.subnet.subnet.read

Auditing

Calling this method generates the following auditing event.

  • is.subnet.subnet.read

Update a subnet

This request updates a subnet with the information in a provided subnet patch. The subnet patch object is structured in the same way as a retrieved subnet and contains only the information to be updated.

This request updates a subnet with the information in a provided subnet patch. The subnet patch object is structured in the same way as a retrieved subnet and contains only the information to be updated.

This request updates a subnet with the information in a provided subnet patch. The subnet patch object is structured in the same way as a retrieved subnet and contains only the information to be updated.

This request updates a subnet with the information in a provided subnet patch. The subnet patch object is structured in the same way as a retrieved subnet and contains only the information to be updated.

This request updates a subnet with the information in a provided subnet patch. The subnet patch object is structured in the same way as a retrieved subnet and contains only the information to be updated.

PATCH /subnets/{id}
(vpc *VpcV1) UpdateSubnet(updateSubnetOptions *UpdateSubnetOptions) (result *Subnet, response *core.DetailedResponse, err error)
(vpc *VpcV1) UpdateSubnetWithContext(ctx context.Context, updateSubnetOptions *UpdateSubnetOptions) (result *Subnet, response *core.DetailedResponse, err error)
update_subnet(self,
        id: str,
        subnet_patch: 'SubnetPatch',
        **kwargs
    ) -> DetailedResponse
ServiceCall<Subnet> updateSubnet(UpdateSubnetOptions updateSubnetOptions)
updateSubnet(params)

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 > name > Access policies.

  • is.subnet.subnet.update

  • is.public-gateway.public-gateway.operate

    Required when public_gateway is specified

  • is.network-acl.network-acl.operate

    Required when network_acl is specified

  • is.vpc.vpc.operate

    Required when routing_table is specified

Auditing

Calling this method generates the following auditing event.

  • is.subnet.subnet.update

Retrieve a subnet's attached network ACL

This request retrieves the network ACL attached to the subnet specified by the identifier in the URL.

This request retrieves the network ACL attached to the subnet specified by the identifier in the URL.

This request retrieves the network ACL attached to the subnet specified by the identifier in the URL.

This request retrieves the network ACL attached to the subnet specified by the identifier in the URL.

This request retrieves the network ACL attached to the subnet specified by the identifier in the URL.

GET /subnets/{id}/network_acl
(vpc *VpcV1) GetSubnetNetworkACL(getSubnetNetworkACLOptions *GetSubnetNetworkACLOptions) (result *NetworkACL, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetSubnetNetworkACLWithContext(ctx context.Context, getSubnetNetworkACLOptions *GetSubnetNetworkACLOptions) (result *NetworkACL, response *core.DetailedResponse, err error)
get_subnet_network_acl(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<NetworkACL> getSubnetNetworkAcl(GetSubnetNetworkAclOptions getSubnetNetworkAclOptions)
getSubnetNetworkAcl(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions. You can check your access by going to Users > name > Access policies.

  • is.subnet.subnet.read

  • is.network-acl.network-acl.read

Auditing

Calling this method generates the following auditing event.

  • is.subnet.subnet.read

Attach a network ACL to a subnet

This request attaches the network ACL, specified in the request body, to the subnet specified by the subnet identifier in the URL. This replaces the existing network ACL on the subnet.

This request attaches the network ACL, specified in the request body, to the subnet specified by the subnet identifier in the URL. This replaces the existing network ACL on the subnet.

This request attaches the network ACL, specified in the request body, to the subnet specified by the subnet identifier in the URL. This replaces the existing network ACL on the subnet.

This request attaches the network ACL, specified in the request body, to the subnet specified by the subnet identifier in the URL. This replaces the existing network ACL on the subnet.

This request attaches the network ACL, specified in the request body, to the subnet specified by the subnet identifier in the URL. This replaces the existing network ACL on the subnet.

PUT /subnets/{id}/network_acl
(vpc *VpcV1) ReplaceSubnetNetworkACL(replaceSubnetNetworkACLOptions *ReplaceSubnetNetworkACLOptions) (result *NetworkACL, response *core.DetailedResponse, err error)
(vpc *VpcV1) ReplaceSubnetNetworkACLWithContext(ctx context.Context, replaceSubnetNetworkACLOptions *ReplaceSubnetNetworkACLOptions) (result *NetworkACL, response *core.DetailedResponse, err error)
replace_subnet_network_acl(self,
        id: str,
        network_acl_identity: 'NetworkACLIdentity',
        **kwargs
    ) -> DetailedResponse
ServiceCall<NetworkACL> replaceSubnetNetworkAcl(ReplaceSubnetNetworkAclOptions replaceSubnetNetworkAclOptions)
replaceSubnetNetworkAcl(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions. You can check your access by going to Users > name > Access policies.

  • is.subnet.subnet.operate

  • is.network-acl.network-acl.operate

Auditing

Calling this method generates the following auditing event.

  • is.subnet.network-acl.update

Detach a public gateway from a subnet

This request detaches the public gateway from the subnet specified by the subnet identifier in the URL.

This request detaches the public gateway from the subnet specified by the subnet identifier in the URL.

This request detaches the public gateway from the subnet specified by the subnet identifier in the URL.

This request detaches the public gateway from the subnet specified by the subnet identifier in the URL.

This request detaches the public gateway from the subnet specified by the subnet identifier in the URL.

DELETE /subnets/{id}/public_gateway
(vpc *VpcV1) UnsetSubnetPublicGateway(unsetSubnetPublicGatewayOptions *UnsetSubnetPublicGatewayOptions) (response *core.DetailedResponse, err error)
(vpc *VpcV1) UnsetSubnetPublicGatewayWithContext(ctx context.Context, unsetSubnetPublicGatewayOptions *UnsetSubnetPublicGatewayOptions) (response *core.DetailedResponse, err error)
unset_subnet_public_gateway(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Void> unsetSubnetPublicGateway(UnsetSubnetPublicGatewayOptions unsetSubnetPublicGatewayOptions)
unsetSubnetPublicGateway(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions. You can check your access by going to Users > name > Access policies.

  • is.subnet.subnet.operate

  • is.public-gateway.public-gateway.operate

Auditing

Calling this method generates the following auditing event.

  • is.subnet.public-gateway.detach

Retrieve a subnet's attached public gateway

This request retrieves the public gateway attached to the subnet specified by the identifier in the URL.

This request retrieves the public gateway attached to the subnet specified by the identifier in the URL.

This request retrieves the public gateway attached to the subnet specified by the identifier in the URL.

This request retrieves the public gateway attached to the subnet specified by the identifier in the URL.

This request retrieves the public gateway attached to the subnet specified by the identifier in the URL.

GET /subnets/{id}/public_gateway
(vpc *VpcV1) GetSubnetPublicGateway(getSubnetPublicGatewayOptions *GetSubnetPublicGatewayOptions) (result *PublicGateway, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetSubnetPublicGatewayWithContext(ctx context.Context, getSubnetPublicGatewayOptions *GetSubnetPublicGatewayOptions) (result *PublicGateway, response *core.DetailedResponse, err error)
get_subnet_public_gateway(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<PublicGateway> getSubnetPublicGateway(GetSubnetPublicGatewayOptions getSubnetPublicGatewayOptions)
getSubnetPublicGateway(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions. You can check your access by going to Users > name > Access policies.

  • is.subnet.subnet.read

  • is.public-gateway.public-gateway.read

Auditing

Calling this method generates the following auditing event.

  • is.subnet.public-gateway.read

Attach a public gateway to a subnet

This request attaches the public gateway, specified in the request body, to the subnet specified by the subnet identifier in the URL. The public gateway must have the same VPC and zone as the subnet.

This request attaches the public gateway, specified in the request body, to the subnet specified by the subnet identifier in the URL. The public gateway must have the same VPC and zone as the subnet.

This request attaches the public gateway, specified in the request body, to the subnet specified by the subnet identifier in the URL. The public gateway must have the same VPC and zone as the subnet.

This request attaches the public gateway, specified in the request body, to the subnet specified by the subnet identifier in the URL. The public gateway must have the same VPC and zone as the subnet.

This request attaches the public gateway, specified in the request body, to the subnet specified by the subnet identifier in the URL. The public gateway must have the same VPC and zone as the subnet.

PUT /subnets/{id}/public_gateway
(vpc *VpcV1) SetSubnetPublicGateway(setSubnetPublicGatewayOptions *SetSubnetPublicGatewayOptions) (result *PublicGateway, response *core.DetailedResponse, err error)
(vpc *VpcV1) SetSubnetPublicGatewayWithContext(ctx context.Context, setSubnetPublicGatewayOptions *SetSubnetPublicGatewayOptions) (result *PublicGateway, response *core.DetailedResponse, err error)
set_subnet_public_gateway(self,
        id: str,
        public_gateway_identity: 'PublicGatewayIdentity',
        **kwargs
    ) -> DetailedResponse
ServiceCall<PublicGateway> setSubnetPublicGateway(SetSubnetPublicGatewayOptions setSubnetPublicGatewayOptions)
setSubnetPublicGateway(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions. You can check your access by going to Users > name > Access policies.

  • is.subnet.subnet.operate

  • is.public-gateway.public-gateway.operate

Auditing

Calling this method generates the following auditing event.

  • is.subnet.public-gateway.attach

Retrieve a subnet's attached routing table

This request retrieves the routing table attached to the subnet specified by the identifier in the URL.

This request retrieves the routing table attached to the subnet specified by the identifier in the URL.

This request retrieves the routing table attached to the subnet specified by the identifier in the URL.

This request retrieves the routing table attached to the subnet specified by the identifier in the URL.

This request retrieves the routing table attached to the subnet specified by the identifier in the URL.

GET /subnets/{id}/routing_table
(vpc *VpcV1) GetSubnetRoutingTable(getSubnetRoutingTableOptions *GetSubnetRoutingTableOptions) (result *RoutingTable, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetSubnetRoutingTableWithContext(ctx context.Context, getSubnetRoutingTableOptions *GetSubnetRoutingTableOptions) (result *RoutingTable, response *core.DetailedResponse, err error)
get_subnet_routing_table(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<RoutingTable> getSubnetRoutingTable(GetSubnetRoutingTableOptions getSubnetRoutingTableOptions)
getSubnetRoutingTable(params)

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 > name > Access policies.

  • is.subnet.subnet.read

  • is.vpc.vpc.read

    Required for the VPC with the routing table

Auditing

Calling this method generates the following auditing event.

  • is.subnet.routing-table.read

Attach a routing table to a subnet

This request attaches the routing table, specified in the request body, to the subnet specified by the subnet identifier in the URL. This replaces the existing routing table on the subnet.

For this request to succeed, the routing table route_direct_link_ingress, route_transit_gateway_ingress, and route_vpc_zone_ingress properties must be false.

This request attaches the routing table, specified in the request body, to the subnet specified by the subnet identifier in the URL. This replaces the existing routing table on the subnet.

For this request to succeed, the routing table route_direct_link_ingress, route_transit_gateway_ingress, and route_vpc_zone_ingress properties must be false.

This request attaches the routing table, specified in the request body, to the subnet specified by the subnet identifier in the URL. This replaces the existing routing table on the subnet.

For this request to succeed, the routing table route_direct_link_ingress, route_transit_gateway_ingress, and route_vpc_zone_ingress properties must be false.

This request attaches the routing table, specified in the request body, to the subnet specified by the subnet identifier in the URL. This replaces the existing routing table on the subnet.

For this request to succeed, the routing table route_direct_link_ingress, route_transit_gateway_ingress, and route_vpc_zone_ingress properties must be false.

This request attaches the routing table, specified in the request body, to the subnet specified by the subnet identifier in the URL. This replaces the existing routing table on the subnet.

For this request to succeed, the routing table route_direct_link_ingress, route_transit_gateway_ingress, and route_vpc_zone_ingress properties must be false.

PUT /subnets/{id}/routing_table
(vpc *VpcV1) ReplaceSubnetRoutingTable(replaceSubnetRoutingTableOptions *ReplaceSubnetRoutingTableOptions) (result *RoutingTable, response *core.DetailedResponse, err error)
(vpc *VpcV1) ReplaceSubnetRoutingTableWithContext(ctx context.Context, replaceSubnetRoutingTableOptions *ReplaceSubnetRoutingTableOptions) (result *RoutingTable, response *core.DetailedResponse, err error)
replace_subnet_routing_table(self,
        id: str,
        routing_table_identity: 'RoutingTableIdentity',
        **kwargs
    ) -> DetailedResponse
ServiceCall<RoutingTable> replaceSubnetRoutingTable(ReplaceSubnetRoutingTableOptions replaceSubnetRoutingTableOptions)
replaceSubnetRoutingTable(params)

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 > name > Access policies.

  • is.subnet.subnet.operate

  • is.vpc.vpc.operate

    Required for the VPC with the routing table

Auditing

Calling this method generates the following auditing event.

  • is.subnet.routing-table.attach

List all reserved IPs in a subnet

This request lists all reserved IPs in a subnet. A reserved IP resource will exist for every address in the subnet which is not available for use.

This request lists all reserved IPs in a subnet. A reserved IP resource will exist for every address in the subnet which is not available for use.

This request lists all reserved IPs in a subnet. A reserved IP resource will exist for every address in the subnet which is not available for use.

This request lists all reserved IPs in a subnet. A reserved IP resource will exist for every address in the subnet which is not available for use.

This request lists all reserved IPs in a subnet. A reserved IP resource will exist for every address in the subnet which is not available for use.

GET /subnets/{subnet_id}/reserved_ips
(vpc *VpcV1) ListSubnetReservedIps(listSubnetReservedIpsOptions *ListSubnetReservedIpsOptions) (result *ReservedIPCollection, response *core.DetailedResponse, err error)
(vpc *VpcV1) ListSubnetReservedIpsWithContext(ctx context.Context, listSubnetReservedIpsOptions *ListSubnetReservedIpsOptions) (result *ReservedIPCollection, response *core.DetailedResponse, err error)
list_subnet_reserved_ips(self,
        subnet_id: str,
        *,
        start: str = None,
        limit: int = None,
        sort: str = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<ReservedIPCollection> listSubnetReservedIps(ListSubnetReservedIpsOptions listSubnetReservedIpsOptions)
listSubnetReservedIps(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.subnet.subnet.read

Auditing

Calling this method generates the following auditing event, depending on any listed conditions.

  • is.subnet.reserved-ip.read

    Generated for each reserved IP in the list.

Reserve an IP in a subnet

This request reserves an IP address in a subnet. If the provided prototype object includes an address, the address must not already be reserved.

This request reserves an IP address in a subnet. If the provided prototype object includes an address, the address must not already be reserved.

This request reserves an IP address in a subnet. If the provided prototype object includes an address, the address must not already be reserved.

This request reserves an IP address in a subnet. If the provided prototype object includes an address, the address must not already be reserved.

This request reserves an IP address in a subnet. If the provided prototype object includes an address, the address must not already be reserved.

POST /subnets/{subnet_id}/reserved_ips
(vpc *VpcV1) CreateSubnetReservedIP(createSubnetReservedIPOptions *CreateSubnetReservedIPOptions) (result *ReservedIP, response *core.DetailedResponse, err error)
(vpc *VpcV1) CreateSubnetReservedIPWithContext(ctx context.Context, createSubnetReservedIPOptions *CreateSubnetReservedIPOptions) (result *ReservedIP, response *core.DetailedResponse, err error)
create_subnet_reserved_ip(self,
        subnet_id: str,
        *,
        address: str = None,
        auto_delete: bool = None,
        name: str = None,
        target: 'ReservedIPTargetPrototype' = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<ReservedIP> createSubnetReservedIp(CreateSubnetReservedIpOptions createSubnetReservedIpOptions)
createSubnetReservedIp(params)

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 > name > Access policies.

  • is.subnet.subnet.update

  • is.endpoint-gateway.endpoint-gateway.operate

    Required when target specifies an endpoint gateway

Auditing

Calling this method generates the following auditing events, depending on any listed conditions.

  • is.subnet.reserved-ip.create

  • is.subnet.subnet.update

  • is.endpoint-gateway.endpoint-gateway.attach

    Generated when target specifies an endpoint gateway

  • is.subnet.reserved-ip.attach

    Generated when target is specified

Delete a reserved IP

This request releases a reserved IP. This operation cannot be reversed.

This request releases a reserved IP. This operation cannot be reversed.

This request releases a reserved IP. This operation cannot be reversed.

This request releases a reserved IP. This operation cannot be reversed.

This request releases a reserved IP. This operation cannot be reversed.

DELETE /subnets/{subnet_id}/reserved_ips/{id}
(vpc *VpcV1) DeleteSubnetReservedIP(deleteSubnetReservedIPOptions *DeleteSubnetReservedIPOptions) (response *core.DetailedResponse, err error)
(vpc *VpcV1) DeleteSubnetReservedIPWithContext(ctx context.Context, deleteSubnetReservedIPOptions *DeleteSubnetReservedIPOptions) (response *core.DetailedResponse, err error)
delete_subnet_reserved_ip(self,
        subnet_id: str,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Void> deleteSubnetReservedIp(DeleteSubnetReservedIpOptions deleteSubnetReservedIpOptions)
deleteSubnetReservedIp(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.subnet.subnet.update

Auditing

Calling this method generates the following auditing events.

  • is.subnet.subnet.update

  • is.subnet.reserved-ip.delete

Retrieve a reserved IP

This request retrieves a single reserved IP specified by the identifier in the URL.

This request retrieves a single reserved IP specified by the identifier in the URL.

This request retrieves a single reserved IP specified by the identifier in the URL.

This request retrieves a single reserved IP specified by the identifier in the URL.

This request retrieves a single reserved IP specified by the identifier in the URL.

GET /subnets/{subnet_id}/reserved_ips/{id}
(vpc *VpcV1) GetSubnetReservedIP(getSubnetReservedIPOptions *GetSubnetReservedIPOptions) (result *ReservedIP, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetSubnetReservedIPWithContext(ctx context.Context, getSubnetReservedIPOptions *GetSubnetReservedIPOptions) (result *ReservedIP, response *core.DetailedResponse, err error)
get_subnet_reserved_ip(self,
        subnet_id: str,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<ReservedIP> getSubnetReservedIp(GetSubnetReservedIpOptions getSubnetReservedIpOptions)
getSubnetReservedIp(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.subnet.subnet.read

Auditing

Calling this method generates the following auditing event.

  • is.subnet.reserved-ip.read

Update a reserved IP

This request updates a reserved IP with the information in a provided reserved IP patch. The reserved IP patch object is structured in the same way as a retrieved reserved IP and contains only the information to be updated.

This request updates a reserved IP with the information in a provided reserved IP patch. The reserved IP patch object is structured in the same way as a retrieved reserved IP and contains only the information to be updated.

This request updates a reserved IP with the information in a provided reserved IP patch. The reserved IP patch object is structured in the same way as a retrieved reserved IP and contains only the information to be updated.

This request updates a reserved IP with the information in a provided reserved IP patch. The reserved IP patch object is structured in the same way as a retrieved reserved IP and contains only the information to be updated.

This request updates a reserved IP with the information in a provided reserved IP patch. The reserved IP patch object is structured in the same way as a retrieved reserved IP and contains only the information to be updated.

PATCH /subnets/{subnet_id}/reserved_ips/{id}
(vpc *VpcV1) UpdateSubnetReservedIP(updateSubnetReservedIPOptions *UpdateSubnetReservedIPOptions) (result *ReservedIP, response *core.DetailedResponse, err error)
(vpc *VpcV1) UpdateSubnetReservedIPWithContext(ctx context.Context, updateSubnetReservedIPOptions *UpdateSubnetReservedIPOptions) (result *ReservedIP, response *core.DetailedResponse, err error)
update_subnet_reserved_ip(self,
        subnet_id: str,
        id: str,
        reserved_ip_patch: 'ReservedIPPatch',
        **kwargs
    ) -> DetailedResponse
ServiceCall<ReservedIP> updateSubnetReservedIp(UpdateSubnetReservedIpOptions updateSubnetReservedIpOptions)
updateSubnetReservedIp(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.subnet.subnet.update

Auditing

Calling this method generates the following auditing event.

  • is.subnet.reserved-ip.update

List all images

This request lists all images available in the region. An image provides source data for a volume. Images are either system-provided, or created from another source, such as importing from object storage.

The images will be sorted by their created_at property values, with the newest first. Images with identical created_at values will be secondarily sorted by ascending id property values.

This request lists all images available in the region. An image provides source data for a volume. Images are either system-provided, or created from another source, such as importing from object storage.

The images will be sorted by their created_at property values, with the newest first. Images with identical created_at values will be secondarily sorted by ascending id property values.

This request lists all images available in the region. An image provides source data for a volume. Images are either system-provided, or created from another source, such as importing from object storage.

The images will be sorted by their created_at property values, with the newest first. Images with identical created_at values will be secondarily sorted by ascending id property values.

This request lists all images available in the region. An image provides source data for a volume. Images are either system-provided, or created from another source, such as importing from object storage.

The images will be sorted by their created_at property values, with the newest first. Images with identical created_at values will be secondarily sorted by ascending id property values.

This request lists all images available in the region. An image provides source data for a volume. Images are either system-provided, or created from another source, such as importing from object storage.

The images will be sorted by their created_at property values, with the newest first. Images with identical created_at values will be secondarily sorted by ascending id property values.

GET /images
(vpc *VpcV1) ListImages(listImagesOptions *ListImagesOptions) (result *ImageCollection, response *core.DetailedResponse, err error)
(vpc *VpcV1) ListImagesWithContext(ctx context.Context, listImagesOptions *ListImagesOptions) (result *ImageCollection, response *core.DetailedResponse, err error)
list_images(self,
        *,
        start: str = None,
        limit: int = None,
        resource_group_id: str = None,
        name: str = None,
        visibility: str = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<ImageCollection> listImages(ListImagesOptions listImagesOptions)
listImages(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.image.image.read

Auditing

Calling this method generates the following auditing event.

  • is.image.image.read

Create an image

This request creates a new image from an image prototype object. The prototype object is structured in the same way as a retrieved image, and contains the information necessary to create the new image. If an image is being imported, a URL to the image file on object storage must be specified. If an image is being created from an existing volume, that volume must be specified.

This request creates a new image from an image prototype object. The prototype object is structured in the same way as a retrieved image, and contains the information necessary to create the new image. If an image is being imported, a URL to the image file on object storage must be specified. If an image is being created from an existing volume, that volume must be specified.

This request creates a new image from an image prototype object. The prototype object is structured in the same way as a retrieved image, and contains the information necessary to create the new image. If an image is being imported, a URL to the image file on object storage must be specified. If an image is being created from an existing volume, that volume must be specified.

This request creates a new image from an image prototype object. The prototype object is structured in the same way as a retrieved image, and contains the information necessary to create the new image. If an image is being imported, a URL to the image file on object storage must be specified. If an image is being created from an existing volume, that volume must be specified.

This request creates a new image from an image prototype object. The prototype object is structured in the same way as a retrieved image, and contains the information necessary to create the new image. If an image is being imported, a URL to the image file on object storage must be specified. If an image is being created from an existing volume, that volume must be specified.

POST /images
(vpc *VpcV1) CreateImage(createImageOptions *CreateImageOptions) (result *Image, response *core.DetailedResponse, err error)
(vpc *VpcV1) CreateImageWithContext(ctx context.Context, createImageOptions *CreateImageOptions) (result *Image, response *core.DetailedResponse, err error)
create_image(self,
        image_prototype: 'ImagePrototype',
        **kwargs
    ) -> DetailedResponse
ServiceCall<Image> createImage(CreateImageOptions createImageOptions)
createImage(params)

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 > name > Access policies.

  • is.image.image.create

  • is.volume.volume.operate

    Required if an image is being created from an existing volume.

  • is.instance.instance.operate

    Required if an image is being created from an existing volume that is attached to an existing instance.

Auditing

Calling this method generates the following auditing event.

  • is.image.image.create

Delete an image

This request deletes an image. This operation cannot be reversed. A system-provided image is not allowed to be deleted. Additionally, an image cannot be deleted if it:

  • has a status of tentative or deleting
  • has a status of pending with a status_reasons code of image_request_in_progress

This request deletes an image. This operation cannot be reversed. A system-provided image is not allowed to be deleted. Additionally, an image cannot be deleted if it:

  • has a status of tentative or deleting
  • has a status of pending with a status_reasons code of image_request_in_progress.

This request deletes an image. This operation cannot be reversed. A system-provided image is not allowed to be deleted. Additionally, an image cannot be deleted if it:

  • has a status of tentative or deleting
  • has a status of pending with a status_reasons code of image_request_in_progress.

This request deletes an image. This operation cannot be reversed. A system-provided image is not allowed to be deleted. Additionally, an image cannot be deleted if it:

  • has a status of tentative or deleting
  • has a status of pending with a status_reasons code of image_request_in_progress.

This request deletes an image. This operation cannot be reversed. A system-provided image is not allowed to be deleted. Additionally, an image cannot be deleted if it:

  • has a status of tentative or deleting
  • has a status of pending with a status_reasons code of image_request_in_progress.
DELETE /images/{id}
(vpc *VpcV1) DeleteImage(deleteImageOptions *DeleteImageOptions) (response *core.DetailedResponse, err error)
(vpc *VpcV1) DeleteImageWithContext(ctx context.Context, deleteImageOptions *DeleteImageOptions) (response *core.DetailedResponse, err error)
delete_image(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Void> deleteImage(DeleteImageOptions deleteImageOptions)
deleteImage(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.image.image.delete

Auditing

Calling this method generates the following auditing event.

  • is.image.image.delete

Retrieve an image

This request retrieves a single image specified by the identifier in the URL.

This request retrieves a single image specified by the identifier in the URL.

This request retrieves a single image specified by the identifier in the URL.

This request retrieves a single image specified by the identifier in the URL.

This request retrieves a single image specified by the identifier in the URL.

GET /images/{id}
(vpc *VpcV1) GetImage(getImageOptions *GetImageOptions) (result *Image, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetImageWithContext(ctx context.Context, getImageOptions *GetImageOptions) (result *Image, response *core.DetailedResponse, err error)
get_image(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Image> getImage(GetImageOptions getImageOptions)
getImage(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.image.image.read

Auditing

Calling this method generates the following auditing event.

  • is.image.image.read

Update an image

This request updates an image with the information in a provided image patch. The image patch object is structured in the same way as a retrieved image and contains only the information to be updated. A system-provided image is not allowed to be updated. An image with a status of deleting cannot be updated.

This request updates an image with the information in a provided image patch. The image patch object is structured in the same way as a retrieved image and contains only the information to be updated. A system-provided image is not allowed to be updated. An image with a status of deleting cannot be updated.

This request updates an image with the information in a provided image patch. The image patch object is structured in the same way as a retrieved image and contains only the information to be updated. A system-provided image is not allowed to be updated. An image with a status of deleting cannot be updated.

This request updates an image with the information in a provided image patch. The image patch object is structured in the same way as a retrieved image and contains only the information to be updated. A system-provided image is not allowed to be updated. An image with a status of deleting cannot be updated.

This request updates an image with the information in a provided image patch. The image patch object is structured in the same way as a retrieved image and contains only the information to be updated. A system-provided image is not allowed to be updated. An image with a status of deleting cannot be updated.

PATCH /images/{id}
(vpc *VpcV1) UpdateImage(updateImageOptions *UpdateImageOptions) (result *Image, response *core.DetailedResponse, err error)
(vpc *VpcV1) UpdateImageWithContext(ctx context.Context, updateImageOptions *UpdateImageOptions) (result *Image, response *core.DetailedResponse, err error)
update_image(self,
        id: str,
        image_patch: 'ImagePatch',
        **kwargs
    ) -> DetailedResponse
ServiceCall<Image> updateImage(UpdateImageOptions updateImageOptions)
updateImage(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.image.image.update

Auditing

Calling this method generates the following auditing event.

  • is.image.image.update

List all operating systems

This request lists all operating systems in the region.

This request lists all operating systems in the region.

This request lists all operating systems in the region.

This request lists all operating systems in the region.

This request lists all operating systems in the region.

GET /operating_systems
(vpc *VpcV1) ListOperatingSystems(listOperatingSystemsOptions *ListOperatingSystemsOptions) (result *OperatingSystemCollection, response *core.DetailedResponse, err error)
(vpc *VpcV1) ListOperatingSystemsWithContext(ctx context.Context, listOperatingSystemsOptions *ListOperatingSystemsOptions) (result *OperatingSystemCollection, response *core.DetailedResponse, err error)
list_operating_systems(self,
        *,
        start: str = None,
        limit: int = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<OperatingSystemCollection> listOperatingSystems(ListOperatingSystemsOptions listOperatingSystemsOptions)
listOperatingSystems(params)

Retrieve an operating system

This request retrieves a single operating system specified by the name in the URL.

This request retrieves a single operating system specified by the name in the URL.

This request retrieves a single operating system specified by the name in the URL.

This request retrieves a single operating system specified by the name in the URL.

This request retrieves a single operating system specified by the name in the URL.

GET /operating_systems/{name}
(vpc *VpcV1) GetOperatingSystem(getOperatingSystemOptions *GetOperatingSystemOptions) (result *OperatingSystem, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetOperatingSystemWithContext(ctx context.Context, getOperatingSystemOptions *GetOperatingSystemOptions) (result *OperatingSystem, response *core.DetailedResponse, err error)
get_operating_system(self,
        name: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<OperatingSystem> getOperatingSystem(GetOperatingSystemOptions getOperatingSystemOptions)
getOperatingSystem(params)

List all keys

This request lists all keys in the region. A key contains a public SSH key which may be installed on instances when they are created. Private keys are not stored.

This request lists all keys in the region. A key contains a public SSH key which may be installed on instances when they are created. Private keys are not stored.

This request lists all keys in the region. A key contains a public SSH key which may be installed on instances when they are created. Private keys are not stored.

This request lists all keys in the region. A key contains a public SSH key which may be installed on instances when they are created. Private keys are not stored.

This request lists all keys in the region. A key contains a public SSH key which may be installed on instances when they are created. Private keys are not stored.

GET /keys
(vpc *VpcV1) ListKeys(listKeysOptions *ListKeysOptions) (result *KeyCollection, response *core.DetailedResponse, err error)
(vpc *VpcV1) ListKeysWithContext(ctx context.Context, listKeysOptions *ListKeysOptions) (result *KeyCollection, response *core.DetailedResponse, err error)
list_keys(self,
        *,
        start: str = None,
        limit: int = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<KeyCollection> listKeys(ListKeysOptions listKeysOptions)
listKeys(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions. You can check your access by going to Users > name > Access policies.

  • is.key.key.list

  • is.key.key.read

Auditing

Calling this method generates the following auditing event.

  • is.key.key.read

Create a key

This request creates a new SSH key from an key prototype object. The prototype object is structured in the same way as a retrieved key, and contains the information necessary to create the new key. The public key value must be provided.

This request creates a new SSH key from an key prototype object. The prototype object is structured in the same way as a retrieved key, and contains the information necessary to create the new key. The public key value must be provided.

This request creates a new SSH key from an key prototype object. The prototype object is structured in the same way as a retrieved key, and contains the information necessary to create the new key. The public key value must be provided.

This request creates a new SSH key from an key prototype object. The prototype object is structured in the same way as a retrieved key, and contains the information necessary to create the new key. The public key value must be provided.

This request creates a new SSH key from an key prototype object. The prototype object is structured in the same way as a retrieved key, and contains the information necessary to create the new key. The public key value must be provided.

POST /keys
(vpc *VpcV1) CreateKey(createKeyOptions *CreateKeyOptions) (result *Key, response *core.DetailedResponse, err error)
(vpc *VpcV1) CreateKeyWithContext(ctx context.Context, createKeyOptions *CreateKeyOptions) (result *Key, response *core.DetailedResponse, err error)
create_key(self,
        public_key: str,
        *,
        name: str = None,
        resource_group: 'ResourceGroupIdentity' = None,
        type: str = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Key> createKey(CreateKeyOptions createKeyOptions)
createKey(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.key.key.create

Auditing

Calling this method generates the following auditing event.

  • is.key.key.create

Delete a key

This request deletes a key. This operation cannot be reversed.

This request deletes a key. This operation cannot be reversed.

This request deletes a key. This operation cannot be reversed.

This request deletes a key. This operation cannot be reversed.

This request deletes a key. This operation cannot be reversed.

DELETE /keys/{id}
(vpc *VpcV1) DeleteKey(deleteKeyOptions *DeleteKeyOptions) (response *core.DetailedResponse, err error)
(vpc *VpcV1) DeleteKeyWithContext(ctx context.Context, deleteKeyOptions *DeleteKeyOptions) (response *core.DetailedResponse, err error)
delete_key(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Void> deleteKey(DeleteKeyOptions deleteKeyOptions)
deleteKey(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.key.key.delete

Auditing

Calling this method generates the following auditing event.

  • is.key.key.delete

Retrieve a key

This request retrieves a single key specified by the identifier in the URL.

This request retrieves a single key specified by the identifier in the URL.

This request retrieves a single key specified by the identifier in the URL.

This request retrieves a single key specified by the identifier in the URL.

This request retrieves a single key specified by the identifier in the URL.

GET /keys/{id}
(vpc *VpcV1) GetKey(getKeyOptions *GetKeyOptions) (result *Key, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetKeyWithContext(ctx context.Context, getKeyOptions *GetKeyOptions) (result *Key, response *core.DetailedResponse, err error)
get_key(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Key> getKey(GetKeyOptions getKeyOptions)
getKey(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.key.key.read

Auditing

Calling this method generates the following auditing event.

  • is.key.key.read

Update a key

This request updates a key's name.

This request updates a key's name.

This request updates a key's name.

This request updates a key's name.

This request updates a key's name.

PATCH /keys/{id}
(vpc *VpcV1) UpdateKey(updateKeyOptions *UpdateKeyOptions) (result *Key, response *core.DetailedResponse, err error)
(vpc *VpcV1) UpdateKeyWithContext(ctx context.Context, updateKeyOptions *UpdateKeyOptions) (result *Key, response *core.DetailedResponse, err error)
update_key(self,
        id: str,
        key_patch: 'KeyPatch',
        **kwargs
    ) -> DetailedResponse
ServiceCall<Key> updateKey(UpdateKeyOptions updateKeyOptions)
updateKey(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.key.key.update

Auditing

Calling this method generates the following auditing event.

  • is.key.key.update

List all instance profiles

This request lists provisionable instance profiles in the region. An instance profile specifies the performance characteristics and pricing model for an instance.

This request lists provisionable instance profiles in the region. An instance profile specifies the performance characteristics and pricing model for an instance.

This request lists provisionable instance profiles in the region. An instance profile specifies the performance characteristics and pricing model for an instance.

This request lists provisionable instance profiles in the region. An instance profile specifies the performance characteristics and pricing model for an instance.

This request lists provisionable instance profiles in the region. An instance profile specifies the performance characteristics and pricing model for an instance.

GET /instance/profiles
(vpc *VpcV1) ListInstanceProfiles(listInstanceProfilesOptions *ListInstanceProfilesOptions) (result *InstanceProfileCollection, response *core.DetailedResponse, err error)
(vpc *VpcV1) ListInstanceProfilesWithContext(ctx context.Context, listInstanceProfilesOptions *ListInstanceProfilesOptions) (result *InstanceProfileCollection, response *core.DetailedResponse, err error)
list_instance_profiles(self,
        **kwargs
    ) -> DetailedResponse
ServiceCall<InstanceProfileCollection> listInstanceProfiles(ListInstanceProfilesOptions listInstanceProfilesOptions)
listInstanceProfiles(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.instance.instance.read

Retrieve an instance profile

This request retrieves a single instance profile specified by the name in the URL.

This request retrieves a single instance profile specified by the name in the URL.

This request retrieves a single instance profile specified by the name in the URL.

This request retrieves a single instance profile specified by the name in the URL.

This request retrieves a single instance profile specified by the name in the URL.

GET /instance/profiles/{name}
(vpc *VpcV1) GetInstanceProfile(getInstanceProfileOptions *GetInstanceProfileOptions) (result *InstanceProfile, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetInstanceProfileWithContext(ctx context.Context, getInstanceProfileOptions *GetInstanceProfileOptions) (result *InstanceProfile, response *core.DetailedResponse, err error)
get_instance_profile(self,
        name: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<InstanceProfile> getInstanceProfile(GetInstanceProfileOptions getInstanceProfileOptions)
getInstanceProfile(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.instance.instance.read

List all instance templates

This request lists all instance templates in the region.

This request lists all instance templates in the region.

This request lists all instance templates in the region.

This request lists all instance templates in the region.

This request lists all instance templates in the region.

GET /instance/templates
(vpc *VpcV1) ListInstanceTemplates(listInstanceTemplatesOptions *ListInstanceTemplatesOptions) (result *InstanceTemplateCollection, response *core.DetailedResponse, err error)
(vpc *VpcV1) ListInstanceTemplatesWithContext(ctx context.Context, listInstanceTemplatesOptions *ListInstanceTemplatesOptions) (result *InstanceTemplateCollection, response *core.DetailedResponse, err error)
list_instance_templates(self,
        **kwargs
    ) -> DetailedResponse
ServiceCall<InstanceTemplateCollection> listInstanceTemplates(ListInstanceTemplatesOptions listInstanceTemplatesOptions)
listInstanceTemplates(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.instance.template.read

Auditing

Calling this method generates the following auditing event.

  • is.instance-template.instance-template.read

Create an instance template

This request creates a new instance template. The prototype object is structured in the same way as a retrieved instance template, and contains the information necessary to provision a new instance from the template.

If a source_template is specified in the prototype object, its contents are copied into the new template prior to copying any other properties provided in the prototype object.

This request creates a new instance template. The prototype object is structured in the same way as a retrieved instance template, and contains the information necessary to provision a new instance from the template.

If a source_template is specified in the prototype object, its contents are copied into the new template prior to copying any other properties provided in the prototype object.

This request creates a new instance template. The prototype object is structured in the same way as a retrieved instance template, and contains the information necessary to provision a new instance from the template.

If a source_template is specified in the prototype object, its contents are copied into the new template prior to copying any other properties provided in the prototype object.

This request creates a new instance template. The prototype object is structured in the same way as a retrieved instance template, and contains the information necessary to provision a new instance from the template.

If a source_template is specified in the prototype object, its contents are copied into the new template prior to copying any other properties provided in the prototype object.

This request creates a new instance template. The prototype object is structured in the same way as a retrieved instance template, and contains the information necessary to provision a new instance from the template.

If a source_template is specified in the prototype object, its contents are copied into the new template prior to copying any other properties provided in the prototype object.

POST /instance/templates
(vpc *VpcV1) CreateInstanceTemplate(createInstanceTemplateOptions *CreateInstanceTemplateOptions) (result InstanceTemplateIntf, response *core.DetailedResponse, err error)
(vpc *VpcV1) CreateInstanceTemplateWithContext(ctx context.Context, createInstanceTemplateOptions *CreateInstanceTemplateOptions) (result InstanceTemplateIntf, response *core.DetailedResponse, err error)
create_instance_template(self,
        instance_template_prototype: 'InstanceTemplatePrototype',
        **kwargs
    ) -> DetailedResponse
ServiceCall<InstanceTemplate> createInstanceTemplate(CreateInstanceTemplateOptions createInstanceTemplateOptions)
createInstanceTemplate(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.instance.template.create

Auditing

Calling this method generates the following auditing event.

  • is.instance-template.instance-template.create

Delete an instance template

This request deletes the instance template. This operation cannot be reversed.

This request deletes the instance template. This operation cannot be reversed.

This request deletes the instance template. This operation cannot be reversed.

This request deletes the instance template. This operation cannot be reversed.

This request deletes the instance template. This operation cannot be reversed.

DELETE /instance/templates/{id}
(vpc *VpcV1) DeleteInstanceTemplate(deleteInstanceTemplateOptions *DeleteInstanceTemplateOptions) (response *core.DetailedResponse, err error)
(vpc *VpcV1) DeleteInstanceTemplateWithContext(ctx context.Context, deleteInstanceTemplateOptions *DeleteInstanceTemplateOptions) (response *core.DetailedResponse, err error)
delete_instance_template(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<Void> deleteInstanceTemplate(DeleteInstanceTemplateOptions deleteInstanceTemplateOptions)
deleteInstanceTemplate(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.instance.template.delete

Auditing

Calling this method generates the following auditing event.

  • is.instance-template.instance-template.delete

Retrieve an instance template

This request retrieves a single instance template specified by the identifier in the URL.

This request retrieves a single instance template specified by the identifier in the URL.

This request retrieves a single instance template specified by the identifier in the URL.

This request retrieves a single instance template specified by the identifier in the URL.

This request retrieves a single instance template specified by the identifier in the URL.

GET /instance/templates/{id}
(vpc *VpcV1) GetInstanceTemplate(getInstanceTemplateOptions *GetInstanceTemplateOptions) (result InstanceTemplateIntf, response *core.DetailedResponse, err error)
(vpc *VpcV1) GetInstanceTemplateWithContext(ctx context.Context, getInstanceTemplateOptions *GetInstanceTemplateOptions) (result InstanceTemplateIntf, response *core.DetailedResponse, err error)
get_instance_template(self,
        id: str,
        **kwargs
    ) -> DetailedResponse
ServiceCall<InstanceTemplate> getInstanceTemplate(GetInstanceTemplateOptions getInstanceTemplateOptions)
getInstanceTemplate(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.instance.template.read

Auditing

Calling this method generates the following auditing event.

  • is.instance-template.instance-template.read

Update an instance template

This request updates an instance template with the information provided in the instance template patch. The instance template patch object is structured in the same way as a retrieved instance template and contains only the information to be updated.

This request updates an instance template with the information provided in the instance template patch. The instance template patch object is structured in the same way as a retrieved instance template and contains only the information to be updated.

This request updates an instance template with the information provided in the instance template patch. The instance template patch object is structured in the same way as a retrieved instance template and contains only the information to be updated.

This request updates an instance template with the information provided in the instance template patch. The instance template patch object is structured in the same way as a retrieved instance template and contains only the information to be updated.

This request updates an instance template with the information provided in the instance template patch. The instance template patch object is structured in the same way as a retrieved instance template and contains only the information to be updated.

PATCH /instance/templates/{id}
(vpc *VpcV1) UpdateInstanceTemplate(updateInstanceTemplateOptions *UpdateInstanceTemplateOptions) (result InstanceTemplateIntf, response *core.DetailedResponse, err error)
(vpc *VpcV1) UpdateInstanceTemplateWithContext(ctx context.Context, updateInstanceTemplateOptions *UpdateInstanceTemplateOptions) (result InstanceTemplateIntf, response *core.DetailedResponse, err error)
update_instance_template(self,
        id: str,
        instance_template_patch: 'InstanceTemplatePatch',
        **kwargs
    ) -> DetailedResponse
ServiceCall<InstanceTemplate> updateInstanceTemplate(UpdateInstanceTemplateOptions updateInstanceTemplateOptions)
updateInstanceTemplate(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > name > Access policies.

  • is.instance.template.update

Auditing

Calling this method generates the following auditing event.

  • is.instance-template.instance-template.update

List all instances

This request lists all instances in the region.

This request lists all instances in the region.

This request lists all instances in the region.

This request lists all instances in the region.

This request lists all instances in the region.

GET /instances
(vpc *VpcV1) ListInstances(listInstancesOptions *ListInstancesOptions) (result *InstanceCollection, response *core.DetailedResponse, err error)
(vpc *VpcV1) ListInstancesWithContext(ctx context.Context, listInstancesOptions *ListInstancesOptions) (result *InstanceCollection, response *core.DetailedResponse, err error)
list_instances(self,
        *,
        start: str = None,
        limit: int = None,
        resource_group_id: str = None,
        name: str = None,
        vpc_id: str = None,
        vpc_crn: str = None,
        vpc_name: str = None,
        dedicated_host_id: str = None,
        dedicated_host_crn: str = None,
        dedicated_host_name: str = None,
        placement_group_id: str = None,
        placement_group_crn: str = None,
        placement_group_name: str = None,
        **kwargs
    ) -> DetailedResponse
ServiceCall<InstanceCollection> listInstances(ListInstancesOptions listInstancesOptions)
listInstances(params)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following actions. You can check your access by going to Users > name > Access policies.

  • is.instance.instance.list

  • is.instance.instance.read

Auditing

Calling this method generates the following auditing event.

  • is.instance.instance.read

Create an instance

This request provisions a new instance from an instance prototype object. The prototype object is structured in the same way as a retrieved instance, and contains the information necessary to provision the new instance. The instance is automatically started.

This request provisions a new instance from an instance prototype object. The prototype object is structured in the same way as a retrieved instance, and contains the information necessary to provision the new instance. The instance is automatically started.

This request provisions a new instance from an instance prototype object. The prototype object is structured in the same way as a retrieved instance, and contains the information necessary to provision the new instance. The instance is automatically started.

This request provisions a new instance from an instance prototype object. The prototype object is structured in the same way as a retrieved instance, and contains the information necessary to provision the new instance. The instance is automatically started.

This request provisions a new instance from an instance prototype object. The prototype object is structured in the same way as a retrieved instance, and contains the information necessary to provision the new instance. The instance is automatically started.

POST /instances
(vpc *VpcV1) CreateInstance(createInstanceOptions *CreateInstanceOptions) (result *Instance, response *core.DetailedResponse, err error)
(vpc *VpcV1) CreateInstanceWithContext(ctx context.Context, createInstanceOptions *CreateInstanceOptions) (result *Instance, response *core.DetailedResponse, err error)
create_instance(self,
        instance_prototype: 'InstancePrototype',
        **kwargs
    ) -> DetailedResponse
ServiceCall<Instance> createInstance(CreateInstanceOptions createInstanceOptions)