1. Packages
  2. Packages
  3. Scaleway
  4. API Docs
  5. network
  6. getIngressRule
Viewing docs for Scaleway v1.52.1
published on Thursday, Jul 9, 2026 by pulumiverse
scaleway logo
Viewing docs for Scaleway v1.52.1
published on Thursday, Jul 9, 2026 by pulumiverse

    Gets information about a VPC ingress rule.

    An ingress routing rule routes incoming traffic from a peered VPC to a specific private IP address within a destination VPC’s Private Network.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as scaleway from "@pulumiverse/scaleway";
    
    // Retrieve a VPC ingress rule by filters
    const byPn = scaleway.network.getIngressRule({
        nexthopPrivateNetworkId: "fr-par/11111111-1111-1111-1111-111111111111",
    });
    
    import pulumi
    import pulumi_scaleway as scaleway
    
    # Retrieve a VPC ingress rule by filters
    by_pn = scaleway.network.get_ingress_rule(nexthop_private_network_id="fr-par/11111111-1111-1111-1111-111111111111")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/network"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Retrieve a VPC ingress rule by filters
    		_, err := network.LookupIngressRule(ctx, &network.LookupIngressRuleArgs{
    			NexthopPrivateNetworkId: pulumi.StringRef("fr-par/11111111-1111-1111-1111-111111111111"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Scaleway = Pulumiverse.Scaleway;
    
    return await Deployment.RunAsync(() => 
    {
        // Retrieve a VPC ingress rule by filters
        var byPn = Scaleway.Network.GetIngressRule.Invoke(new()
        {
            NexthopPrivateNetworkId = "fr-par/11111111-1111-1111-1111-111111111111",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.scaleway.network.NetworkFunctions;
    import com.pulumi.scaleway.network.inputs.GetIngressRuleArgs;
    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) {
            // Retrieve a VPC ingress rule by filters
            final var byPn = NetworkFunctions.getIngressRule(GetIngressRuleArgs.builder()
                .nexthopPrivateNetworkId("fr-par/11111111-1111-1111-1111-111111111111")
                .build());
    
        }
    }
    
    variables:
      # Retrieve a VPC ingress rule by filters
      byPn:
        fn::invoke:
          function: scaleway:network:getIngressRule
          arguments:
            nexthopPrivateNetworkId: fr-par/11111111-1111-1111-1111-111111111111
    
    Example coming soon!
    
    import * as pulumi from "@pulumi/pulumi";
    import * as scaleway from "@pulumiverse/scaleway";
    
    // Retrieve a VPC ingress rule by its ID
    const byId = scaleway.network.getIngressRule({
        ingressRuleId: "fr-par/11111111-1111-1111-1111-111111111111",
    });
    
    import pulumi
    import pulumi_scaleway as scaleway
    
    # Retrieve a VPC ingress rule by its ID
    by_id = scaleway.network.get_ingress_rule(ingress_rule_id="fr-par/11111111-1111-1111-1111-111111111111")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/network"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Retrieve a VPC ingress rule by its ID
    		_, err := network.LookupIngressRule(ctx, &network.LookupIngressRuleArgs{
    			IngressRuleId: pulumi.StringRef("fr-par/11111111-1111-1111-1111-111111111111"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Scaleway = Pulumiverse.Scaleway;
    
    return await Deployment.RunAsync(() => 
    {
        // Retrieve a VPC ingress rule by its ID
        var byId = Scaleway.Network.GetIngressRule.Invoke(new()
        {
            IngressRuleId = "fr-par/11111111-1111-1111-1111-111111111111",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.scaleway.network.NetworkFunctions;
    import com.pulumi.scaleway.network.inputs.GetIngressRuleArgs;
    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) {
            // Retrieve a VPC ingress rule by its ID
            final var byId = NetworkFunctions.getIngressRule(GetIngressRuleArgs.builder()
                .ingressRuleId("fr-par/11111111-1111-1111-1111-111111111111")
                .build());
    
        }
    }
    
    variables:
      # Retrieve a VPC ingress rule by its ID
      byId:
        fn::invoke:
          function: scaleway:network:getIngressRule
          arguments:
            ingressRuleId: fr-par/11111111-1111-1111-1111-111111111111
    
    Example coming soon!
    

    Using getIngressRule

    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 getIngressRule(args: GetIngressRuleArgs, opts?: InvokeOptions): Promise<GetIngressRuleResult>
    function getIngressRuleOutput(args: GetIngressRuleOutputArgs, opts?: InvokeOptions): Output<GetIngressRuleResult>
    def get_ingress_rule(ingress_rule_id: Optional[str] = None,
                         is_ipv6: Optional[bool] = None,
                         nexthop_private_network_id: Optional[str] = None,
                         nexthop_resource_ip: Optional[str] = None,
                         region: Optional[str] = None,
                         tags: Optional[Sequence[str]] = None,
                         vpc_id: Optional[str] = None,
                         opts: Optional[InvokeOptions] = None) -> GetIngressRuleResult
    def get_ingress_rule_output(ingress_rule_id: pulumi.Input[Optional[str]] = None,
                         is_ipv6: pulumi.Input[Optional[bool]] = None,
                         nexthop_private_network_id: pulumi.Input[Optional[str]] = None,
                         nexthop_resource_ip: pulumi.Input[Optional[str]] = None,
                         region: pulumi.Input[Optional[str]] = None,
                         tags: pulumi.Input[Optional[Sequence[pulumi.Input[str]]]] = None,
                         vpc_id: pulumi.Input[Optional[str]] = None,
                         opts: Optional[InvokeOptions] = None) -> Output[GetIngressRuleResult]
    func LookupIngressRule(ctx *Context, args *LookupIngressRuleArgs, opts ...InvokeOption) (*LookupIngressRuleResult, error)
    func LookupIngressRuleOutput(ctx *Context, args *LookupIngressRuleOutputArgs, opts ...InvokeOption) LookupIngressRuleResultOutput

    > Note: This function is named LookupIngressRule in the Go SDK.

    public static class GetIngressRule 
    {
        public static Task<GetIngressRuleResult> InvokeAsync(GetIngressRuleArgs args, InvokeOptions? opts = null)
        public static Output<GetIngressRuleResult> Invoke(GetIngressRuleInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetIngressRuleResult> getIngressRule(GetIngressRuleArgs args, InvokeOptions options)
    public static Output<GetIngressRuleResult> getIngressRule(GetIngressRuleArgs args, InvokeOptions options)
    
    fn::invoke:
      function: scaleway:network/getIngressRule:getIngressRule
      arguments:
        # arguments dictionary
    data "scaleway_network_getingressrule" "name" {
        # arguments
    }

    The following arguments are supported:

    IngressRuleId string

    The ID of the VPC ingress rule. Conflicts with all filter arguments below.

    The following arguments can be used to look up a VPC ingress rule via the list API. They all conflict with ingressRuleId:

    IsIpv6 bool
    Only ingress rules with the matching IP version will be returned.
    NexthopPrivateNetworkId string
    The nexthop private network ID to filter for.
    NexthopResourceIp string
    The nexthop resource IP to filter for.
    Region string
    region) The region in which the ingress rule exists.
    Tags List<string>
    List of tags to filter for.
    VpcId string
    The VPC ID to filter for.
    IngressRuleId string

    The ID of the VPC ingress rule. Conflicts with all filter arguments below.

    The following arguments can be used to look up a VPC ingress rule via the list API. They all conflict with ingressRuleId:

    IsIpv6 bool
    Only ingress rules with the matching IP version will be returned.
    NexthopPrivateNetworkId string
    The nexthop private network ID to filter for.
    NexthopResourceIp string
    The nexthop resource IP to filter for.
    Region string
    region) The region in which the ingress rule exists.
    Tags []string
    List of tags to filter for.
    VpcId string
    The VPC ID to filter for.
    ingress_rule_id string

    The ID of the VPC ingress rule. Conflicts with all filter arguments below.

    The following arguments can be used to look up a VPC ingress rule via the list API. They all conflict with ingressRuleId:

    is_ipv6 bool
    Only ingress rules with the matching IP version will be returned.
    nexthop_private_network_id string
    The nexthop private network ID to filter for.
    nexthop_resource_ip string
    The nexthop resource IP to filter for.
    region string
    region) The region in which the ingress rule exists.
    tags list(string)
    List of tags to filter for.
    vpc_id string
    The VPC ID to filter for.
    ingressRuleId String

    The ID of the VPC ingress rule. Conflicts with all filter arguments below.

    The following arguments can be used to look up a VPC ingress rule via the list API. They all conflict with ingressRuleId:

    isIpv6 Boolean
    Only ingress rules with the matching IP version will be returned.
    nexthopPrivateNetworkId String
    The nexthop private network ID to filter for.
    nexthopResourceIp String
    The nexthop resource IP to filter for.
    region String
    region) The region in which the ingress rule exists.
    tags List<String>
    List of tags to filter for.
    vpcId String
    The VPC ID to filter for.
    ingressRuleId string

    The ID of the VPC ingress rule. Conflicts with all filter arguments below.

    The following arguments can be used to look up a VPC ingress rule via the list API. They all conflict with ingressRuleId:

    isIpv6 boolean
    Only ingress rules with the matching IP version will be returned.
    nexthopPrivateNetworkId string
    The nexthop private network ID to filter for.
    nexthopResourceIp string
    The nexthop resource IP to filter for.
    region string
    region) The region in which the ingress rule exists.
    tags string[]
    List of tags to filter for.
    vpcId string
    The VPC ID to filter for.
    ingress_rule_id str

    The ID of the VPC ingress rule. Conflicts with all filter arguments below.

    The following arguments can be used to look up a VPC ingress rule via the list API. They all conflict with ingressRuleId:

    is_ipv6 bool
    Only ingress rules with the matching IP version will be returned.
    nexthop_private_network_id str
    The nexthop private network ID to filter for.
    nexthop_resource_ip str
    The nexthop resource IP to filter for.
    region str
    region) The region in which the ingress rule exists.
    tags Sequence[str]
    List of tags to filter for.
    vpc_id str
    The VPC ID to filter for.
    ingressRuleId String

    The ID of the VPC ingress rule. Conflicts with all filter arguments below.

    The following arguments can be used to look up a VPC ingress rule via the list API. They all conflict with ingressRuleId:

    isIpv6 Boolean
    Only ingress rules with the matching IP version will be returned.
    nexthopPrivateNetworkId String
    The nexthop private network ID to filter for.
    nexthopResourceIp String
    The nexthop resource IP to filter for.
    region String
    region) The region in which the ingress rule exists.
    tags List<String>
    List of tags to filter for.
    vpcId String
    The VPC ID to filter for.

    getIngressRule Result

    The following output properties are available:

    CreatedAt string
    Description string
    Id string
    The provider-assigned unique ID for this managed resource.
    IsIpv6 bool
    Source string
    UpdatedAt string
    IngressRuleId string
    NexthopPrivateNetworkId string
    NexthopResourceIp string
    Region string
    Tags List<string>
    VpcId string
    CreatedAt string
    Description string
    Id string
    The provider-assigned unique ID for this managed resource.
    IsIpv6 bool
    Source string
    UpdatedAt string
    IngressRuleId string
    NexthopPrivateNetworkId string
    NexthopResourceIp string
    Region string
    Tags []string
    VpcId string
    created_at string
    description string
    id string
    The provider-assigned unique ID for this managed resource.
    is_ipv6 bool
    source string
    updated_at string
    ingress_rule_id string
    nexthop_private_network_id string
    nexthop_resource_ip string
    region string
    tags list(string)
    vpc_id string
    createdAt String
    description String
    id String
    The provider-assigned unique ID for this managed resource.
    isIpv6 Boolean
    source String
    updatedAt String
    ingressRuleId String
    nexthopPrivateNetworkId String
    nexthopResourceIp String
    region String
    tags List<String>
    vpcId String
    createdAt string
    description string
    id string
    The provider-assigned unique ID for this managed resource.
    isIpv6 boolean
    source string
    updatedAt string
    ingressRuleId string
    nexthopPrivateNetworkId string
    nexthopResourceIp string
    region string
    tags string[]
    vpcId string
    created_at str
    description str
    id str
    The provider-assigned unique ID for this managed resource.
    is_ipv6 bool
    source str
    updated_at str
    ingress_rule_id str
    nexthop_private_network_id str
    nexthop_resource_ip str
    region str
    tags Sequence[str]
    vpc_id str
    createdAt String
    description String
    id String
    The provider-assigned unique ID for this managed resource.
    isIpv6 Boolean
    source String
    updatedAt String
    ingressRuleId String
    nexthopPrivateNetworkId String
    nexthopResourceIp String
    region String
    tags List<String>
    vpcId String

    Package Details

    Repository
    scaleway pulumiverse/pulumi-scaleway
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the scaleway Terraform Provider.
    scaleway logo
    Viewing docs for Scaleway v1.52.1
    published on Thursday, Jul 9, 2026 by pulumiverse

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial