List Logical Ports
const url = 'https://example.com/network/v1/workspaces/example/engines/qibdo/logical-ports';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://example.com/network/v1/workspaces/example/engines/qibdo/logical-portsReturns a paginated list of network ports within a workspace.
Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Query Parameters
Section titled “Query Parameters ”The maximum number of ports to return. The service may return fewer than this value. If unspecified, at most 20 ports will be returned. The maximum value is 100; values above 100 will be coerced to 100.
Responses
Section titled “ Responses ”OK
ListQibdoLogicalPortsResponse
Response message for ListQibdoLogicalPorts.
Note: This API intentionally omits total_size from list responses.
object
QibdoLogicalPort — a virtual machine network-interface attachment to a subnet. The port is the addressable point at which a VM joins the network: it carries the assigned IPv4/IPv6 addresses and MAC, and the firewall policy applied to the interface. Addresses are assigned automatically from the subnet’s range (or pinned to a requested static address when supplied).
Equivalent concepts in other platforms (same resource, different vendor vocabulary): OpenStack Neutron “port”; OVN / Open vSwitch “logical switch port”; VMware NSX “logical port” / “segment port”; AWS “elastic network interface (ENI)”; Azure and Google Cloud “network interface (NIC)”; Nutanix AHV and VMware vSphere “vNIC”; Kubernetes virtualization virtual machine “interface”.
object
Unique identifier for this port.
The subnet this port draws its address from.
The virtual machine this port is attached to.
The workspace that owns this port.
An optional requested static IPv4 address. When omitted, the address is assigned automatically from the subnet’s range. The assigned address is reported in ipv4_address.
An optional requested static IPv6 address. When omitted, the address is assigned automatically from the subnet’s range. The assigned address is reported in ipv6_address.
The assigned IPv4 address.
The assigned IPv6 address.
The assigned hardware (MAC) address of the interface.
Current lifecycle state of the port (pending, ready, failed).
An optional firewall policy applied to this interface. When omitted, the default deny-inbound / allow-egress policy is enforced.
The provider-assigned logical-switch-port identifier. Populated once the port is provisioned.
When this port was created.
When this port was last updated.
Example generated
{ "logical_ports": [ { "subnet_id": "example", "vm_id": "example", "requested_ipv4": "example", "requested_ipv6": "example", "firewall_policy_id": "example" } ], "next_page_token": "example"}default
Section titled “default ”Default error response
The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC. Each Status message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the API Design Guide.
object
The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
A list of messages that carry the error details. There is a common set of message types for APIs to use.
Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.
object
The type of the serialized message.
Example generated
{ "code": 1, "message": "example", "details": [ { "@type": "example" } ]}