published on Tuesday, Sep 15, 2026 by Pulumi
published on Tuesday, Sep 15, 2026 by Pulumi
Provides information about a Linode VPC. For more information, see the Linode APIv4 docs.
Example Usage
The following example shows how one might use this data source to access information about a Linode VPC.
import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";
const foo = linode.getVpc({
id: "123",
});
export const vpc = foo;
import pulumi
import pulumi_linode as linode
foo = linode.get_vpc(id="123")
pulumi.export("vpc", foo)
package main
import (
"github.com/pulumi/pulumi-linode/sdk/v6/go/linode"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
foo, err := linode.GetVpc(ctx, &linode.LookupVpcArgs{
Id: "123",
}, nil)
if err != nil {
return err
}
ctx.Export("vpc", foo)
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Linode = Pulumi.Linode;
return await Deployment.RunAsync(() =>
{
var foo = Linode.GetVpc.Invoke(new()
{
Id = "123",
});
return new Dictionary<string, object?>
{
["vpc"] = foo,
};
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.linode.LinodeFunctions;
import com.pulumi.linode.inputs.GetVpcArgs;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var foo = LinodeFunctions.getVpc(GetVpcArgs.builder()
.id("123")
.build());
ctx.export("vpc", foo);
}
}
variables:
foo:
fn::invoke:
function: linode:getVpc
arguments:
id: 123
outputs:
vpc: ${foo}
pulumi {
required_providers {
linode = {
source = "pulumi/linode"
}
}
}
data "linode_getvpc" "foo" {
id = 123
}
output "vpc" {
value = data.linode_getvpc.foo
}
IPv6
Limited Availability IPv6 VPCs may not currently be available to all users.
Contains information about a single IPv6 allocation under this VPC.
range- The allocated range in CIDR format.
IPv4
Limited Availability Custom VPC IPv4 Ranges may not currently be available to all users.
Contains information about a single IPv4 range under this VPC.
range- The IPv4 range in CIDR format.
Subnets
The following attributes are exported under each entry of the subnets field:
id- The id of the VPC Subnet.label- The label of the VPC Subnet.ipv4- The IPv4 range of this subnet in CIDR format.ipv6- The IPv6 ranges of this subnet.range- An IPv6 range allocated to this subnet.
linodes- A list of Linodes assigned to this subnet.id- ID of the Linodeinterfaces- A list of networking interfaces objects.id- ID of the interface.configId- ID of Linode Config that the interface is associated with.nullfor a Linode Interface.active- Whether the Interface is actively in use.
databases- A list of Managed Databases assigned to this subnet.id- ID of a managed database assigned to the VPC Subnet.ipv4Range- IPv4 range assigned to the database.ipv6Ranges- A list of IPv6 ranges assigned to the database.range- An IPv6 address range in CIDR notation.
nodebalancers- A list of NodeBalancers assigned to this subnet.id- ID of a NodeBalancer assigned to the VPC Subnet.ipv4Range- IPv4 range assigned to the NodeBalancer.ipv6Ranges- A list of IPv6 ranges assigned to the NodeBalancer.range- An IPv6 address range in CIDR notation.
created- The date and time when the VPC Subnet was created.updated- The date and time when the VPC Subnet was last updated.
Subnets data source
The subnets list in this resource requires an additional refresh after the initial apply before newly created subnets appear because all subnets are created as resources after the vpc resource is created. To list all subnets under a VPC with immediate availability after apply, use the linode.getVpcSubnets data source with Terraform dependsOn.
Using getVpc
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getVpc(args: GetVpcArgs, opts?: InvokeOptions): Promise<GetVpcResult>
function getVpcOutput(args: GetVpcOutputArgs, opts?: InvokeOutputOptions): Output<GetVpcResult>def get_vpc(id: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetVpcResult
def get_vpc_output(id: pulumi.Input[Optional[str]] = None,
opts: Optional[InvokeOutputOptions] = None) -> Output[GetVpcResult]func LookupVpc(ctx *Context, args *LookupVpcArgs, opts ...InvokeOption) (*LookupVpcResult, error)
func LookupVpcOutput(ctx *Context, args *LookupVpcOutputArgs, opts ...InvokeOption) LookupVpcResultOutput> Note: This function is named LookupVpc in the Go SDK.
public static class GetVpc
{
public static Task<GetVpcResult> InvokeAsync(GetVpcArgs args, InvokeOptions? opts = null)
public static Output<GetVpcResult> Invoke(GetVpcInvokeArgs args, InvokeOptions? opts = null)
public static Output<GetVpcResult> Invoke(GetVpcInvokeArgs args, InvokeOutputOptions opts)
}public static CompletableFuture<GetVpcResult> getVpc(GetVpcArgs args, InvokeOptions options)
public static Output<GetVpcResult> getVpc(GetVpcArgs args, InvokeOptions options)
public static Output<GetVpcResult> getVpc(GetVpcArgs args, InvokeOutputOptions options)
fn::invoke:
function: linode:index/getVpc:getVpc
arguments:
# arguments dictionarydata "linode_get_vpc" "name" {
# arguments
}The following arguments are supported:
- Id string
- The unique id of this VPC.
- Id string
- The unique id of this VPC.
- id string
- The unique id of this VPC.
- id String
- The unique id of this VPC.
- id string
- The unique id of this VPC.
- id str
- The unique id of this VPC.
- id String
- The unique id of this VPC.
getVpc Result
The following output properties are available:
- Created string
- The date and time when the VPC was created.
- Description string
- The user-defined description of this VPC.
- Id string
- Ipv4s
List<Get
Vpc Ipv4> - (Nested Attribute List) A list of IPv4 ranges under this VPC.
- Ipv6s
List<Get
Vpc Ipv6> - (Nested Attribute List) A list of IPv6 allocations under this VPC.
- Label string
- The label of the VPC.
- Region string
- The region where the VPC is deployed.
- Subnets
List<Get
Vpc Subnet> - Updated string
- The date and time when the VPC was last updated.
- Vpc
Type string - The type of the VPC (
regularorrdma). Omitted if the requesting account does not have access to the GPUDirect RDMA functionality.
- Created string
- The date and time when the VPC was created.
- Description string
- The user-defined description of this VPC.
- Id string
- Ipv4s
[]Get
Vpc Ipv4 - (Nested Attribute List) A list of IPv4 ranges under this VPC.
- Ipv6s
[]Get
Vpc Ipv6 - (Nested Attribute List) A list of IPv6 allocations under this VPC.
- Label string
- The label of the VPC.
- Region string
- The region where the VPC is deployed.
- Subnets
[]Get
Vpc Subnet Type - Updated string
- The date and time when the VPC was last updated.
- Vpc
Type string - The type of the VPC (
regularorrdma). Omitted if the requesting account does not have access to the GPUDirect RDMA functionality.
- created string
- The date and time when the VPC was created.
- description string
- The user-defined description of this VPC.
- id string
- ipv4s list(object)
- (Nested Attribute List) A list of IPv4 ranges under this VPC.
- ipv6s list(object)
- (Nested Attribute List) A list of IPv6 allocations under this VPC.
- label string
- The label of the VPC.
- region string
- The region where the VPC is deployed.
- subnets list(object)
- updated string
- The date and time when the VPC was last updated.
- vpc_
type string - The type of the VPC (
regularorrdma). Omitted if the requesting account does not have access to the GPUDirect RDMA functionality.
- created String
- The date and time when the VPC was created.
- description String
- The user-defined description of this VPC.
- id String
- ipv4s
List<Get
Vpc Ipv4> - (Nested Attribute List) A list of IPv4 ranges under this VPC.
- ipv6s
List<Get
Vpc Ipv6> - (Nested Attribute List) A list of IPv6 allocations under this VPC.
- label String
- The label of the VPC.
- region String
- The region where the VPC is deployed.
- subnets
List<Get
Vpc Subnet> - updated String
- The date and time when the VPC was last updated.
- vpc
Type String - The type of the VPC (
regularorrdma). Omitted if the requesting account does not have access to the GPUDirect RDMA functionality.
- created string
- The date and time when the VPC was created.
- description string
- The user-defined description of this VPC.
- id string
- ipv4s
Get
Vpc Ipv4[] - (Nested Attribute List) A list of IPv4 ranges under this VPC.
- ipv6s
Get
Vpc Ipv6[] - (Nested Attribute List) A list of IPv6 allocations under this VPC.
- label string
- The label of the VPC.
- region string
- The region where the VPC is deployed.
- subnets
Get
Vpc Subnet[] - updated string
- The date and time when the VPC was last updated.
- vpc
Type string - The type of the VPC (
regularorrdma). Omitted if the requesting account does not have access to the GPUDirect RDMA functionality.
- created str
- The date and time when the VPC was created.
- description str
- The user-defined description of this VPC.
- id str
- ipv4s
Sequence[Get
Vpc Ipv4] - (Nested Attribute List) A list of IPv4 ranges under this VPC.
- ipv6s
Sequence[Get
Vpc Ipv6] - (Nested Attribute List) A list of IPv6 allocations under this VPC.
- label str
- The label of the VPC.
- region str
- The region where the VPC is deployed.
- subnets
Sequence[Get
Vpc Subnet] - updated str
- The date and time when the VPC was last updated.
- vpc_
type str - The type of the VPC (
regularorrdma). Omitted if the requesting account does not have access to the GPUDirect RDMA functionality.
- created String
- The date and time when the VPC was created.
- description String
- The user-defined description of this VPC.
- id String
- ipv4s List<Property Map>
- (Nested Attribute List) A list of IPv4 ranges under this VPC.
- ipv6s List<Property Map>
- (Nested Attribute List) A list of IPv6 allocations under this VPC.
- label String
- The label of the VPC.
- region String
- The region where the VPC is deployed.
- subnets List<Property Map>
- updated String
- The date and time when the VPC was last updated.
- vpc
Type String - The type of the VPC (
regularorrdma). Omitted if the requesting account does not have access to the GPUDirect RDMA functionality.
Supporting Types
GetVpcIpv4
- Range string
- The IPv4 range assigned to this VPC.
- Range string
- The IPv4 range assigned to this VPC.
- range string
- The IPv4 range assigned to this VPC.
- range String
- The IPv4 range assigned to this VPC.
- range string
- The IPv4 range assigned to this VPC.
- range str
- The IPv4 range assigned to this VPC.
- range String
- The IPv4 range assigned to this VPC.
GetVpcIpv6
- Range string
- The IPv6 range assigned to this VPC.
- Range string
- The IPv6 range assigned to this VPC.
- range string
- The IPv6 range assigned to this VPC.
- range String
- The IPv6 range assigned to this VPC.
- range string
- The IPv6 range assigned to this VPC.
- range str
- The IPv6 range assigned to this VPC.
- range String
- The IPv6 range assigned to this VPC.
GetVpcSubnet
- Created string
- The date and time when the VPC was created.
- Databases
List<Get
Vpc Subnet Database> - A list of Managed Databases assigned to this subnet.
- Id int
- The unique id of this VPC.
- Ipv4 string
- (Nested Attribute List) A list of IPv4 ranges under this VPC.
- Ipv6s
List<Get
Vpc Subnet Ipv6> - (Nested Attribute List) A list of IPv6 allocations under this VPC.
- Label string
- The label of the VPC.
- Linodes
List<Get
Vpc Subnet Linode> - A list of Linodes assigned to this subnet.
- Nodebalancers
List<Get
Vpc Subnet Nodebalancer> - A list of NodeBalancers assigned to this subnet.
- Updated string
- The date and time when the VPC was last updated.
- Created string
- The date and time when the VPC was created.
- Databases
[]Get
Vpc Subnet Database - A list of Managed Databases assigned to this subnet.
- Id int
- The unique id of this VPC.
- Ipv4 string
- (Nested Attribute List) A list of IPv4 ranges under this VPC.
- Ipv6s
[]Get
Vpc Subnet Ipv6 - (Nested Attribute List) A list of IPv6 allocations under this VPC.
- Label string
- The label of the VPC.
- Linodes
[]Get
Vpc Subnet Linode - A list of Linodes assigned to this subnet.
- Nodebalancers
[]Get
Vpc Subnet Nodebalancer - A list of NodeBalancers assigned to this subnet.
- Updated string
- The date and time when the VPC was last updated.
- created string
- The date and time when the VPC was created.
- databases list(object)
- A list of Managed Databases assigned to this subnet.
- id number
- The unique id of this VPC.
- ipv4 string
- (Nested Attribute List) A list of IPv4 ranges under this VPC.
- ipv6s list(object)
- (Nested Attribute List) A list of IPv6 allocations under this VPC.
- label string
- The label of the VPC.
- linodes list(object)
- A list of Linodes assigned to this subnet.
- nodebalancers list(object)
- A list of NodeBalancers assigned to this subnet.
- updated string
- The date and time when the VPC was last updated.
- created String
- The date and time when the VPC was created.
- databases
List<Get
Vpc Subnet Database> - A list of Managed Databases assigned to this subnet.
- id Integer
- The unique id of this VPC.
- ipv4 String
- (Nested Attribute List) A list of IPv4 ranges under this VPC.
- ipv6s
List<Get
Vpc Subnet Ipv6> - (Nested Attribute List) A list of IPv6 allocations under this VPC.
- label String
- The label of the VPC.
- linodes
List<Get
Vpc Subnet Linode> - A list of Linodes assigned to this subnet.
- nodebalancers
List<Get
Vpc Subnet Nodebalancer> - A list of NodeBalancers assigned to this subnet.
- updated String
- The date and time when the VPC was last updated.
- created string
- The date and time when the VPC was created.
- databases
Get
Vpc Subnet Database[] - A list of Managed Databases assigned to this subnet.
- id number
- The unique id of this VPC.
- ipv4 string
- (Nested Attribute List) A list of IPv4 ranges under this VPC.
- ipv6s
Get
Vpc Subnet Ipv6[] - (Nested Attribute List) A list of IPv6 allocations under this VPC.
- label string
- The label of the VPC.
- linodes
Get
Vpc Subnet Linode[] - A list of Linodes assigned to this subnet.
- nodebalancers
Get
Vpc Subnet Nodebalancer[] - A list of NodeBalancers assigned to this subnet.
- updated string
- The date and time when the VPC was last updated.
- created str
- The date and time when the VPC was created.
- databases
Sequence[Get
Vpc Subnet Database] - A list of Managed Databases assigned to this subnet.
- id int
- The unique id of this VPC.
- ipv4 str
- (Nested Attribute List) A list of IPv4 ranges under this VPC.
- ipv6s
Sequence[Get
Vpc Subnet Ipv6] - (Nested Attribute List) A list of IPv6 allocations under this VPC.
- label str
- The label of the VPC.
- linodes
Sequence[Get
Vpc Subnet Linode] - A list of Linodes assigned to this subnet.
- nodebalancers
Sequence[Get
Vpc Subnet Nodebalancer] - A list of NodeBalancers assigned to this subnet.
- updated str
- The date and time when the VPC was last updated.
- created String
- The date and time when the VPC was created.
- databases List<Property Map>
- A list of Managed Databases assigned to this subnet.
- id Number
- The unique id of this VPC.
- ipv4 String
- (Nested Attribute List) A list of IPv4 ranges under this VPC.
- ipv6s List<Property Map>
- (Nested Attribute List) A list of IPv6 allocations under this VPC.
- label String
- The label of the VPC.
- linodes List<Property Map>
- A list of Linodes assigned to this subnet.
- nodebalancers List<Property Map>
- A list of NodeBalancers assigned to this subnet.
- updated String
- The date and time when the VPC was last updated.
GetVpcSubnetDatabase
- Id int
- The unique id of this VPC subnet.
- Ipv4Range string
- IPv4 range assigned to the NodeBalancer.
- Ipv6Ranges
List<Get
Vpc Subnet Database Ipv6Range> - (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
- Id int
- The unique id of this VPC subnet.
- Ipv4Range string
- IPv4 range assigned to the NodeBalancer.
- Ipv6Ranges
[]Get
Vpc Subnet Database Ipv6Range - (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
- id number
- The unique id of this VPC subnet.
- ipv4_
range string - IPv4 range assigned to the NodeBalancer.
- ipv6_
ranges list(object) - (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
- id Integer
- The unique id of this VPC subnet.
- ipv4Range String
- IPv4 range assigned to the NodeBalancer.
- ipv6Ranges
List<Get
Vpc Subnet Database Ipv6Range> - (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
- id number
- The unique id of this VPC subnet.
- ipv4Range string
- IPv4 range assigned to the NodeBalancer.
- ipv6Ranges
Get
Vpc Subnet Database Ipv6Range[] - (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
- id int
- The unique id of this VPC subnet.
- ipv4_
range str - IPv4 range assigned to the NodeBalancer.
- ipv6_
ranges Sequence[GetVpc Subnet Database Ipv6Range] - (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
- id Number
- The unique id of this VPC subnet.
- ipv4Range String
- IPv4 range assigned to the NodeBalancer.
- ipv6Ranges List<Property Map>
- (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
GetVpcSubnetDatabaseIpv6Range
- Range string
- An IPv6 address range in CIDR notation.
- Range string
- An IPv6 address range in CIDR notation.
- range string
- An IPv6 address range in CIDR notation.
- range String
- An IPv6 address range in CIDR notation.
- range string
- An IPv6 address range in CIDR notation.
- range str
- An IPv6 address range in CIDR notation.
- range String
- An IPv6 address range in CIDR notation.
GetVpcSubnetIpv6
- Range string
- An IPv6 address range in CIDR notation.
- Range string
- An IPv6 address range in CIDR notation.
- range string
- An IPv6 address range in CIDR notation.
- range String
- An IPv6 address range in CIDR notation.
- range string
- An IPv6 address range in CIDR notation.
- range str
- An IPv6 address range in CIDR notation.
- range String
- An IPv6 address range in CIDR notation.
GetVpcSubnetLinode
- Id int
- The unique id of this VPC subnet.
- Interfaces
List<Get
Vpc Subnet Linode Interface> - (Read-Only Object List) A list of networking interfaces objects. Referenced with an index (e.g.
linodes.0.interfaces.0.id).
- Id int
- The unique id of this VPC subnet.
- Interfaces
[]Get
Vpc Subnet Linode Interface - (Read-Only Object List) A list of networking interfaces objects. Referenced with an index (e.g.
linodes.0.interfaces.0.id).
- id number
- The unique id of this VPC subnet.
- interfaces list(object)
- (Read-Only Object List) A list of networking interfaces objects. Referenced with an index (e.g.
linodes.0.interfaces.0.id).
- id Integer
- The unique id of this VPC subnet.
- interfaces
List<Get
Vpc Subnet Linode Interface> - (Read-Only Object List) A list of networking interfaces objects. Referenced with an index (e.g.
linodes.0.interfaces.0.id).
- id number
- The unique id of this VPC subnet.
- interfaces
Get
Vpc Subnet Linode Interface[] - (Read-Only Object List) A list of networking interfaces objects. Referenced with an index (e.g.
linodes.0.interfaces.0.id).
- id int
- The unique id of this VPC subnet.
- interfaces
Sequence[Get
Vpc Subnet Linode Interface] - (Read-Only Object List) A list of networking interfaces objects. Referenced with an index (e.g.
linodes.0.interfaces.0.id).
- id Number
- The unique id of this VPC subnet.
- interfaces List<Property Map>
- (Read-Only Object List) A list of networking interfaces objects. Referenced with an index (e.g.
linodes.0.interfaces.0.id).
GetVpcSubnetLinodeInterface
GetVpcSubnetNodebalancer
- Id int
- The unique id of this VPC subnet.
- Ipv4Range string
- IPv4 range assigned to the NodeBalancer.
- Ipv6Ranges
List<Get
Vpc Subnet Nodebalancer Ipv6Range> - (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
- Id int
- The unique id of this VPC subnet.
- Ipv4Range string
- IPv4 range assigned to the NodeBalancer.
- Ipv6Ranges
[]Get
Vpc Subnet Nodebalancer Ipv6Range - (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
- id number
- The unique id of this VPC subnet.
- ipv4_
range string - IPv4 range assigned to the NodeBalancer.
- ipv6_
ranges list(object) - (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
- id Integer
- The unique id of this VPC subnet.
- ipv4Range String
- IPv4 range assigned to the NodeBalancer.
- ipv6Ranges
List<Get
Vpc Subnet Nodebalancer Ipv6Range> - (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
- id number
- The unique id of this VPC subnet.
- ipv4Range string
- IPv4 range assigned to the NodeBalancer.
- ipv6Ranges
Get
Vpc Subnet Nodebalancer Ipv6Range[] - (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
- id int
- The unique id of this VPC subnet.
- ipv4_
range str - IPv4 range assigned to the NodeBalancer.
- ipv6_
ranges Sequence[GetVpc Subnet Nodebalancer Ipv6Range] - (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
- id Number
- The unique id of this VPC subnet.
- ipv4Range String
- IPv4 range assigned to the NodeBalancer.
- ipv6Ranges List<Property Map>
- (Read-Only Object List) A list of IPv6 ranges assigned to the NodeBalancer. Referenced with an index (e.g.
nodebalancers.0.ipv6_ranges.0.range).
GetVpcSubnetNodebalancerIpv6Range
- Range string
- An IPv6 address range in CIDR notation.
- Range string
- An IPv6 address range in CIDR notation.
- range string
- An IPv6 address range in CIDR notation.
- range String
- An IPv6 address range in CIDR notation.
- range string
- An IPv6 address range in CIDR notation.
- range str
- An IPv6 address range in CIDR notation.
- range String
- An IPv6 address range in CIDR notation.
Package Details
- Repository
- Linode pulumi/pulumi-linode
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
linodeTerraform Provider.
published on Tuesday, Sep 15, 2026 by Pulumi