1. Packages
  2. Packages
  3. Scaleway
  4. API Docs
  5. edgeservices
  6. getWafStage
Viewing docs for Scaleway v1.48.0
published on Wednesday, Apr 29, 2026 by pulumiverse
scaleway logo
Viewing docs for Scaleway v1.48.0
published on Wednesday, Apr 29, 2026 by pulumiverse

    Gets information about an Edge Services WAF (Web Application Firewall) stage.

    A WAF stage provides web application firewall protection for an Edge Services pipeline, inspecting HTTP requests and blocking malicious traffic based on a configurable paranoia level.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as scaleway from "@pulumiverse/scaleway";
    
    // Retrieve an Edge Services WAF stage by its ID
    const byId = scaleway.edgeservices.getWafStage({
        wafStageId: "11111111-1111-1111-1111-111111111111",
    });
    
    import pulumi
    import pulumi_scaleway as scaleway
    
    # Retrieve an Edge Services WAF stage by its ID
    by_id = scaleway.edgeservices.get_waf_stage(waf_stage_id="11111111-1111-1111-1111-111111111111")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/edgeservices"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Retrieve an Edge Services WAF stage by its ID
    		_, err := edgeservices.LookupWafStage(ctx, &edgeservices.LookupWafStageArgs{
    			WafStageId: pulumi.StringRef("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 an Edge Services WAF stage by its ID
        var byId = Scaleway.Edgeservices.GetWafStage.Invoke(new()
        {
            WafStageId = "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.edgeservices.EdgeservicesFunctions;
    import com.pulumi.scaleway.edgeservices.inputs.GetWafStageArgs;
    import java.util.List;
    import java.util.ArrayList;
    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 an Edge Services WAF stage by its ID
            final var byId = EdgeservicesFunctions.getWafStage(GetWafStageArgs.builder()
                .wafStageId("11111111-1111-1111-1111-111111111111")
                .build());
    
        }
    }
    
    variables:
      # Retrieve an Edge Services WAF stage by its ID
      byId:
        fn::invoke:
          function: scaleway:edgeservices:getWafStage
          arguments:
            wafStageId: 11111111-1111-1111-1111-111111111111
    
    import * as pulumi from "@pulumi/pulumi";
    import * as scaleway from "@pulumiverse/scaleway";
    
    // Retrieve an Edge Services WAF stage by pipeline ID
    const byPipeline = scaleway.edgeservices.getWafStage({
        pipelineId: main.id,
    });
    
    import pulumi
    import pulumi_scaleway as scaleway
    
    # Retrieve an Edge Services WAF stage by pipeline ID
    by_pipeline = scaleway.edgeservices.get_waf_stage(pipeline_id=main["id"])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/edgeservices"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Retrieve an Edge Services WAF stage by pipeline ID
    		_, err := edgeservices.LookupWafStage(ctx, &edgeservices.LookupWafStageArgs{
    			PipelineId: pulumi.StringRef(main.Id),
    		}, 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 an Edge Services WAF stage by pipeline ID
        var byPipeline = Scaleway.Edgeservices.GetWafStage.Invoke(new()
        {
            PipelineId = main.Id,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.scaleway.edgeservices.EdgeservicesFunctions;
    import com.pulumi.scaleway.edgeservices.inputs.GetWafStageArgs;
    import java.util.List;
    import java.util.ArrayList;
    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 an Edge Services WAF stage by pipeline ID
            final var byPipeline = EdgeservicesFunctions.getWafStage(GetWafStageArgs.builder()
                .pipelineId(main.id())
                .build());
    
        }
    }
    
    variables:
      # Retrieve an Edge Services WAF stage by pipeline ID
      byPipeline:
        fn::invoke:
          function: scaleway:edgeservices:getWafStage
          arguments:
            pipelineId: ${main.id}
    

    Using getWafStage

    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 getWafStage(args: GetWafStageArgs, opts?: InvokeOptions): Promise<GetWafStageResult>
    function getWafStageOutput(args: GetWafStageOutputArgs, opts?: InvokeOptions): Output<GetWafStageResult>
    def get_waf_stage(pipeline_id: Optional[str] = None,
                      waf_stage_id: Optional[str] = None,
                      opts: Optional[InvokeOptions] = None) -> GetWafStageResult
    def get_waf_stage_output(pipeline_id: Optional[pulumi.Input[str]] = None,
                      waf_stage_id: Optional[pulumi.Input[str]] = None,
                      opts: Optional[InvokeOptions] = None) -> Output[GetWafStageResult]
    func LookupWafStage(ctx *Context, args *LookupWafStageArgs, opts ...InvokeOption) (*LookupWafStageResult, error)
    func LookupWafStageOutput(ctx *Context, args *LookupWafStageOutputArgs, opts ...InvokeOption) LookupWafStageResultOutput

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

    public static class GetWafStage 
    {
        public static Task<GetWafStageResult> InvokeAsync(GetWafStageArgs args, InvokeOptions? opts = null)
        public static Output<GetWafStageResult> Invoke(GetWafStageInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetWafStageResult> getWafStage(GetWafStageArgs args, InvokeOptions options)
    public static Output<GetWafStageResult> getWafStage(GetWafStageArgs args, InvokeOptions options)
    
    fn::invoke:
      function: scaleway:edgeservices/getWafStage:getWafStage
      arguments:
        # arguments dictionary

    The following arguments are supported:

    PipelineId string
    The ID of the pipeline.
    WafStageId string

    The ID of the WAF stage. Conflicts with all filter arguments below.

    The following filter arguments are supported (cannot be used with wafStageId):

    PipelineId string
    The ID of the pipeline.
    WafStageId string

    The ID of the WAF stage. Conflicts with all filter arguments below.

    The following filter arguments are supported (cannot be used with wafStageId):

    pipelineId String
    The ID of the pipeline.
    wafStageId String

    The ID of the WAF stage. Conflicts with all filter arguments below.

    The following filter arguments are supported (cannot be used with wafStageId):

    pipelineId string
    The ID of the pipeline.
    wafStageId string

    The ID of the WAF stage. Conflicts with all filter arguments below.

    The following filter arguments are supported (cannot be used with wafStageId):

    pipeline_id str
    The ID of the pipeline.
    waf_stage_id str

    The ID of the WAF stage. Conflicts with all filter arguments below.

    The following filter arguments are supported (cannot be used with wafStageId):

    pipelineId String
    The ID of the pipeline.
    wafStageId String

    The ID of the WAF stage. Conflicts with all filter arguments below.

    The following filter arguments are supported (cannot be used with wafStageId):

    getWafStage Result

    The following output properties are available:

    BackendStageId string
    CreatedAt string
    Id string
    The provider-assigned unique ID for this managed resource.
    Mode string
    ParanoiaLevel int
    ProjectId string
    UpdatedAt string
    PipelineId string
    WafStageId string
    BackendStageId string
    CreatedAt string
    Id string
    The provider-assigned unique ID for this managed resource.
    Mode string
    ParanoiaLevel int
    ProjectId string
    UpdatedAt string
    PipelineId string
    WafStageId string
    backendStageId String
    createdAt String
    id String
    The provider-assigned unique ID for this managed resource.
    mode String
    paranoiaLevel Integer
    projectId String
    updatedAt String
    pipelineId String
    wafStageId String
    backendStageId string
    createdAt string
    id string
    The provider-assigned unique ID for this managed resource.
    mode string
    paranoiaLevel number
    projectId string
    updatedAt string
    pipelineId string
    wafStageId string
    backend_stage_id str
    created_at str
    id str
    The provider-assigned unique ID for this managed resource.
    mode str
    paranoia_level int
    project_id str
    updated_at str
    pipeline_id str
    waf_stage_id str
    backendStageId String
    createdAt String
    id String
    The provider-assigned unique ID for this managed resource.
    mode String
    paranoiaLevel Number
    projectId String
    updatedAt String
    pipelineId String
    wafStageId 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.48.0
    published on Wednesday, Apr 29, 2026 by pulumiverse
      Try Pulumi Cloud free. Your team will thank you.